diff options
| author | Etienne Bergeron <etienneb@google.com> | 2016-07-07 18:41:08 +0000 |
|---|---|---|
| committer | Etienne Bergeron <etienneb@google.com> | 2016-07-07 18:41:08 +0000 |
| commit | fb5a24b4f03a715b23428b616df36a209941a8ec (patch) | |
| tree | 6bd8d1fb0d62fca369bfdb0a3a1fb41ebe1aeeab | |
| parent | 73589f321b88ff6f0896b6beb5d73c40d84ebe41 (diff) | |
| download | bcm5719-llvm-fb5a24b4f03a715b23428b616df36a209941a8ec.tar.gz bcm5719-llvm-fb5a24b4f03a715b23428b616df36a209941a8ec.zip | |
[compiler-rt] Fix minimal stack reserved for unittest on MSVC build
Summary:
Some unittest were not able to run in 64-bit because they need more than
2MB of stack and the default allocated stack with MSVC linker is 1MB.
Reviewers: rnk
Subscribers: wang0109, chrisha, llvm-commits, kubabrecka
Differential Revision: http://reviews.llvm.org/D22101
llvm-svn: 274785
| -rw-r--r-- | compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt | 7 | ||||
| -rw-r--r-- | compiler-rt/lib/sanitizer_common/tests/sanitizer_test_main.cc | 4 |
2 files changed, 7 insertions, 4 deletions
diff --git a/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt b/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt index 259c10316eb..64964a83780 100644 --- a/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt +++ b/compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt @@ -78,6 +78,13 @@ if(ANDROID) list(APPEND SANITIZER_TEST_LINK_FLAGS_COMMON -pie) endif() +# MSVC linker is allocating 1M for the stack by default, which is not +# enough for the unittests. Some unittests require more than 2M. +# The default stack size for clang is 8M. +if(MSVC) + list(APPEND SANITIZER_TEST_LINK_FLAGS_COMMON -Wl,/STACK:0x8000000) +endif() + set(SANITIZER_TEST_LINK_LIBS) append_list_if(COMPILER_RT_HAS_LIBLOG log SANITIZER_TEST_LINK_LIBS) # NDK r10 requires -latomic almost always. diff --git a/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_main.cc b/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_main.cc index 55888d487e3..20f8f53975d 100644 --- a/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_main.cc +++ b/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_main.cc @@ -13,10 +13,6 @@ #include "gtest/gtest.h" #include "sanitizer_common/sanitizer_flags.h" -#ifdef _MSC_VER -#pragma comment(linker, "/STACK:33554432") -#endif - const char *argv0; int main(int argc, char **argv) { |

