SCP: Avoid potential divide by zero when initially displaying the event queue
This commit is contained in:
parent
e7309d947b
commit
d022ea42a1
1 changed files with 5 additions and 3 deletions
6
scp.c
6
scp.c
|
@ -5971,10 +5971,11 @@ if (sim_clock_queue == QUEUE_LIST_END)
|
||||||
fprintf (st, "%s event queue empty, time = %.0f, executing %s instructios/sec\n",
|
fprintf (st, "%s event queue empty, time = %.0f, executing %s instructios/sec\n",
|
||||||
sim_name, sim_time, sim_fmt_numeric (sim_timer_inst_per_sec ()));
|
sim_name, sim_time, sim_fmt_numeric (sim_timer_inst_per_sec ()));
|
||||||
else {
|
else {
|
||||||
const char *tim;
|
const char *tim = "";
|
||||||
|
double inst_per_sec = sim_timer_inst_per_sec ();
|
||||||
|
|
||||||
fprintf (st, "%s event queue status, time = %.0f, executing %s instructions/sec\n",
|
fprintf (st, "%s event queue status, time = %.0f, executing %s instructions/sec\n",
|
||||||
sim_name, sim_time, sim_fmt_numeric (sim_timer_inst_per_sec ()));
|
sim_name, sim_time, sim_fmt_numeric (inst_per_sec));
|
||||||
accum = 0;
|
accum = 0;
|
||||||
for (uptr = sim_clock_queue; uptr != QUEUE_LIST_END; uptr = uptr->next) {
|
for (uptr = sim_clock_queue; uptr != QUEUE_LIST_END; uptr = uptr->next) {
|
||||||
if (uptr == &sim_step_unit)
|
if (uptr == &sim_step_unit)
|
||||||
|
@ -5990,6 +5991,7 @@ else {
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
fprintf (st, " Unknown");
|
fprintf (st, " Unknown");
|
||||||
|
if (inst_per_sec != 0.0)
|
||||||
tim = sim_fmt_secs(((accum + uptr->time) / sim_timer_inst_per_sec ()) + (uptr->usecs_remaining / 1000000.0));
|
tim = sim_fmt_secs(((accum + uptr->time) / sim_timer_inst_per_sec ()) + (uptr->usecs_remaining / 1000000.0));
|
||||||
if (uptr->usecs_remaining)
|
if (uptr->usecs_remaining)
|
||||||
fprintf (st, " at %d plus %.0f usecs%s%s%s%s\n", accum + uptr->time, uptr->usecs_remaining,
|
fprintf (st, " at %d plus %.0f usecs%s%s%s%s\n", accum + uptr->time, uptr->usecs_remaining,
|
||||||
|
|
Loading…
Add table
Reference in a new issue