Taints the non-acquire RMW's store address with the load part
[oota-llvm.git] / utils / unittest / UnitTestMain / TestMain.cpp
index ce32b7380f22a1f3cae47f31eb1e03fe6f995440..fb2b0f16ee3f298fe6788dbdd9bb380cce050ec9 100644 (file)
@@ -7,25 +7,29 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include "llvm/Config/config.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/Signals.h"
 #include "gtest/gtest.h"
 
 
-#if defined(LLVM_ON_WIN32)
+#if defined(_WIN32)
 # include <windows.h>
 # if defined(_MSC_VER)
 #   include <crtdbg.h>
 # endif
 #endif
 
+const char *TestMainArgv0;
+
 int main(int argc, char **argv) {
-  llvm::sys::PrintStackTraceOnErrorSignal();
+  llvm::sys::PrintStackTraceOnErrorSignal(true /* Disable crash reporting */);
   testing::InitGoogleTest(&argc, argv);
   llvm::cl::ParseCommandLineOptions(argc, argv);
 
-# if defined(LLVM_ON_WIN32)
+  // Make it easy for a test to re-execute itself by saving argv[0].
+  TestMainArgv0 = argv[0];
+
+# if defined(_WIN32)
   // Disable all of the possible ways Windows conspires to make automated
   // testing impossible.
   ::SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX);