summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2018-09-19 14:30:45 +0000
committerMartin Storsjo <martin@martin.st>2018-09-19 14:30:45 +0000
commit023dfa5716326449662059516ddff2ed459526a1 (patch)
tree205d851061709fcee251d325355b77017e3edc2b
parentf50023d37c19eefc45ec15ce184cc7e057207d57 (diff)
downloadbcm5719-llvm-023dfa5716326449662059516ddff2ed459526a1.tar.gz
bcm5719-llvm-023dfa5716326449662059516ddff2ed459526a1.zip
[benchmark] Cherrypick fix for MinGW/ARM from upstream
This fixes building for Windows on ARM, with MinGW headers. (Building for Windows on ARM with Windows SDK still is unsupported by the benchmark library.) Differential Revision: https://reviews.llvm.org/D52262 llvm-svn: 342549
-rw-r--r--llvm/utils/benchmark/README.LLVM2
-rw-r--r--llvm/utils/benchmark/src/cycleclock.h2
-rw-r--r--llvm/utils/benchmark/src/internal_macros.h3
3 files changed, 6 insertions, 1 deletions
diff --git a/llvm/utils/benchmark/README.LLVM b/llvm/utils/benchmark/README.LLVM
index b425ec75305..0121b145ded 100644
--- a/llvm/utils/benchmark/README.LLVM
+++ b/llvm/utils/benchmark/README.LLVM
@@ -17,3 +17,5 @@ Changes:
is applied to fix 32-bit build failure on macOS
* https://github.com/google/benchmark/commit/52613079824ac58d06c070aa9fbbb186a5859e2c
is applied to fix cross compilation with MinGW headers
+* https://github.com/google/benchmark/commit/439d6b1c2a6da5cb6adc4c4dfc555af235722396
+ is applied to fix building with MinGW headers for ARM
diff --git a/llvm/utils/benchmark/src/cycleclock.h b/llvm/utils/benchmark/src/cycleclock.h
index 3b376ac57d5..e1f18cc64d2 100644
--- a/llvm/utils/benchmark/src/cycleclock.h
+++ b/llvm/utils/benchmark/src/cycleclock.h
@@ -41,7 +41,7 @@ extern "C" uint64_t __rdtsc();
#pragma intrinsic(__rdtsc)
#endif
-#ifndef BENCHMARK_OS_WINDOWS
+#if !defined(BENCHMARK_OS_WINDOWS) || defined(BENCHMARK_OS_MINGW)
#include <sys/time.h>
#include <time.h>
#endif
diff --git a/llvm/utils/benchmark/src/internal_macros.h b/llvm/utils/benchmark/src/internal_macros.h
index 3c1cda39c2f..f2d54bfcbd9 100644
--- a/llvm/utils/benchmark/src/internal_macros.h
+++ b/llvm/utils/benchmark/src/internal_macros.h
@@ -35,6 +35,9 @@
#define BENCHMARK_OS_CYGWIN 1
#elif defined(_WIN32)
#define BENCHMARK_OS_WINDOWS 1
+ #if defined(__MINGW32__)
+ #define BENCHMARK_OS_MINGW 1
+ #endif
#elif defined(__APPLE__)
#define BENCHMARK_OS_APPLE 1
#include "TargetConditionals.h"
OpenPOWER on IntegriCloud