73a74,81
> GlobalEvent*
> getLimitEvent(void) {
> static GlobalSimLoopExitEvent
> simulate_limit_event(mainEventQueue[0]->getCurTick(),
> "simulate() limit reached", 0);
> return &simulate_limit_event;
> }
>
108,109c116
< GlobalEvent *limit_event = new GlobalSimLoopExitEvent(num_cycles,
< "simulate() limit reached", 0, 0);
---
> getLimitEvent()->reschedule(num_cycles);
140,146d146
< // if we didn't hit limit_event, delete it.
< if (global_exit_event != limit_event) {
< assert(limit_event->scheduled());
< limit_event->deschedule();
< delete limit_event;
< }
<