Commit 31ade715088fa40976cdaf7bd4c01345ea8fda26

Authored by blueswir1
1 parent 6c36d3fa

Fix Qemu division by zero triggered by NetBSD


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2825 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 4 additions and 6 deletions
hw/slavio_timer.c
... ... @@ -80,13 +80,11 @@ static void slavio_timer_get_out(SLAVIO_TIMERState *s)
80 80 out = (ticks > s->expire_time);
81 81 if (out)
82 82 s->reached = 0x80000000;
83   - if (!s->limit)
84   - limit = 0x7fffffff;
85   - else
86   - limit = s->limit;
87   -
88 83 // Convert register units to counter ticks
89   - limit = limit >> 9;
  84 + limit = s->limit >> 9;
  85 +
  86 + if (!limit)
  87 + limit = 0x7fffffff >> 9;
90 88  
91 89 // Convert cpu ticks to counter ticks
92 90 diff = muldiv64(ticks - s->count_load_time, CNT_FREQ, ticks_per_sec);
... ...