Browse Source

Unbreak LLVM_ENABLE_THREADS=OFF builds.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@256308 91177308-0d34-0410-b5e6-96231b3b80d8
Nico Weber 9 years ago
parent
commit
20aab1c40d
1 changed files with 19 additions and 3 deletions
  1. 19 3
      unittests/Support/TimerTest.cpp

+ 19 - 3
unittests/Support/TimerTest.cpp

@@ -8,14 +8,30 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/Support/Timer.h"
-#include "llvm/Support/thread.h"
 #include "gtest/gtest.h"
-#include <chrono>
+
+#if LLVM_ON_WIN32
+#include <windows.h>
+#else
+#include <time.h>
+#endif
 
 using namespace llvm;
 
 namespace {
 
+// FIXME: Put this somewhere in Support, it's also used in LockFileManager.
+void SleepMS() {
+#if LLVM_ON_WIN32
+  Sleep(1);
+#else
+  struct timespec Interval;
+  Interval.tv_sec = 0;
+  Interval.tv_nsec = 1000000;
+  nanosleep(&Interval, nullptr);
+#endif
+}
+
 TEST(Timer, Additivity) {
   Timer T1("T1");
 
@@ -26,7 +42,7 @@ TEST(Timer, Additivity) {
   auto TR1 = T1.getTotalTime();
 
   T1.startTimer();
-  std::this_thread::sleep_for(std::chrono::milliseconds(1));
+  SleepMS();
   T1.stopTimer();
   auto TR2 = T1.getTotalTime();