Reorganisation of the source tree
[ghc-hetmet.git] / ghc / rts / win32 / AwaitEvent.c
diff --git a/ghc/rts/win32/AwaitEvent.c b/ghc/rts/win32/AwaitEvent.c
deleted file mode 100644 (file)
index 43e188f..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-#if !defined(THREADED_RTS) /* to the end */
-/*
- * Wait/check for external events. Periodically, the
- * Scheduler checks for the completion of external operations,
- * like the expiration of timers, completion of I/O requests
- * issued by Haskell threads.
- *
- * If the Scheduler is otherwise out of work, it'll block
- * herein waiting for external events to occur.
- *
- * This file mirrors the select()-based functionality 
- * for POSIX / Unix platforms in rts/Select.c, but for
- * Win32.
- *
- */
-#include "Rts.h"
-#include "Schedule.h"
-#include "AwaitEvent.h"
-#include <windows.h>
-#include "win32/AsyncIO.h"
-
-// Used to avoid calling abandonRequestWait() if we don't need to.
-// Protected by sched_mutex.
-static nat workerWaitingForRequests = 0;
-
-void
-awaitEvent(rtsBool wait)
-{
-  int ret;
-
-  do {
-    /* Try to de-queue completed IO requests
-     */
-    workerWaitingForRequests = 1;
-    ret = awaitRequests(wait);
-    workerWaitingForRequests = 0;
-    if (!ret) { 
-      return; /* still hold the lock */
-    }
-
-    // Return to the scheduler if:
-    //
-    //  - we were interrupted
-    //  - new threads have arrived
-
-  } while (wait
-          && sched_state == SCHED_RUNNING
-          && emptyRunQueue(&MainCapability)
-      );
-}
-#endif