summaryrefslogtreecommitdiff
path: root/lib/Support/Windows/Alarm.inc
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Support/Windows/Alarm.inc')
-rw-r--r--lib/Support/Windows/Alarm.inc43
1 files changed, 43 insertions, 0 deletions
diff --git a/lib/Support/Windows/Alarm.inc b/lib/Support/Windows/Alarm.inc
new file mode 100644
index 00000000000..e0d00a0142b
--- /dev/null
+++ b/lib/Support/Windows/Alarm.inc
@@ -0,0 +1,43 @@
+//===-- Alarm.inc - Implement Win32 Alarm Support ---------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file implements the Win32 Alarm support.
+//
+//===----------------------------------------------------------------------===//
+
+#include <cassert>
+using namespace llvm;
+
+/// NestedSOI - Sanity check. Alarms cannot be nested or run in parallel.
+/// This ensures that they never do.
+static bool NestedSOI = false;
+
+void sys::SetupAlarm(unsigned seconds) {
+ assert(!NestedSOI && "sys::SetupAlarm calls cannot be nested!");
+ NestedSOI = true;
+ // FIXME: Implement for Win32
+}
+
+void sys::TerminateAlarm() {
+ assert(NestedSOI && "sys::TerminateAlarm called without sys::SetupAlarm!");
+ // FIXME: Implement for Win32
+ NestedSOI = false;
+}
+
+int sys::AlarmStatus() {
+ // FIXME: Implement for Win32
+ return 0;
+}
+
+// Don't pull in all of the Windows headers.
+extern "C" void __stdcall Sleep(unsigned long);
+
+void sys::Sleep(unsigned n) {
+ ::Sleep(n*1000);
+}