$finish() now stops at the end of the time step not immediately.

The event loop used to check for $finish at every iteration. This patch
alters this behavior to only check just before you advance to the next
time step. This allows events for the current time step to complete.
This commit is contained in:
Cary R 2007-08-22 19:10:09 -07:00 committed by Stephen Williams
parent 81a45cdc5f
commit fa1c0ae2a2
1 changed files with 2 additions and 5 deletions

View File

@ -614,7 +614,7 @@ void schedule_simulate(void)
signals_capture();
while (schedule_runnable && sched_list) {
while (sched_list) {
if (schedule_stopped_flag) {
schedule_stopped_flag = false;
@ -629,6 +629,7 @@ void schedule_simulate(void)
postponed sync events. Run them all. */
if (ctim->delay > 0) {
if (!schedule_runnable) break;
schedule_time += ctim->delay;
ctim->delay = 0;
@ -680,7 +681,3 @@ void schedule_simulate(void)
vpiPostsim();
}
/*
* $Log: schedule.cc,v $
*/