X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FPrimOps.cmm;h=c3ab788ba2df046dfa25cc0e51289bec60b6b57d;hb=0d80489c9b9f2421f65d8dd86c1e50c6bb429715;hp=6c3593e4a485a97306735ffdd8421db8dc51a359;hpb=372a8212471344d55128b7bffc9cf8bb962ae742;p=ghc-hetmet.git diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm index 6c3593e..c3ab788 100644 --- a/rts/PrimOps.cmm +++ b/rts/PrimOps.cmm @@ -2118,7 +2118,11 @@ delayzh_fast W_ time; W_ divisor; (time) = foreign "C" getourtimeofday() [R1]; - divisor = TO_W_(RtsFlags_MiscFlags_tickInterval(RtsFlags))*1000; + divisor = TO_W_(RtsFlags_MiscFlags_tickInterval(RtsFlags)); + if (divisor == 0) { + divisor = 50; + } + divisor = divisor * 1000; target = ((R1 + divisor - 1) / divisor) /* divide rounding up */ + time + 1; /* Add 1 as getourtimeofday rounds down */ StgTSO_block_info(CurrentTSO) = target;