[project @ 2000-04-03 15:24:21 by rrt]
[ghc-hetmet.git] / ghc / rts / Evaluator.c
index dba69d3..b7906f7 100644 (file)
@@ -5,8 +5,8 @@
  * Copyright (c) 1994-1998.
  *
  * $RCSfile: Evaluator.c,v $
- * $Revision: 1.43 $
- * $Date: 2000/03/20 04:26:24 $
+ * $Revision: 1.46 $
+ * $Date: 2000/04/03 15:24:21 $
  * ---------------------------------------------------------------------------*/
 
 #include "Rts.h"
@@ -24,6 +24,7 @@
 #include "ForeignCall.h"
 #include "PrimOps.h"   /* for __{encode,decode}{Float,Double} */
 #include "Prelude.h"
+#include "Itimer.h"
 #include "Evaluator.h"
 #include "sainteger.h"
 
@@ -529,8 +530,13 @@ StgThreadReturnCode enter( Capability* cap, StgClosure* obj0 )
           cap->rCurrentTSO->why_blocked = BlockedOnDelay;
           ACQUIRE_LOCK(&sched_mutex);
           
+#if defined(HAVE_SETITIMER) || defined(mingw32_TARGET_OS)
           cap->rCurrentTSO->block_info.delay 
             = hugsBlock.delay + ticks_since_select;
+#else
+          cap->rCurrentTSO->block_info.target
+            = hugsBlock.delay + getourtimeofday();
+#endif
           APPEND_TO_BLOCKED_QUEUE(cap->rCurrentTSO);
           
           RELEASE_LOCK(&sched_mutex);