[PATCH] D22101: [compiler-rt] Fix minimal stack reserved for unittest on MSVC build
Etienne Bergeron via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 7 11:38:13 PDT 2016
etienneb created this revision.
etienneb added a reviewer: rnk.
etienneb added subscribers: llvm-commits, chrisha, wang0109.
Herald added a subscriber: kubabrecka.
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.
http://reviews.llvm.org/D22101
Files:
lib/sanitizer_common/tests/CMakeLists.txt
lib/sanitizer_common/tests/sanitizer_test_main.cc
Index: lib/sanitizer_common/tests/sanitizer_test_main.cc
===================================================================
--- lib/sanitizer_common/tests/sanitizer_test_main.cc
+++ 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) {
Index: lib/sanitizer_common/tests/CMakeLists.txt
===================================================================
--- lib/sanitizer_common/tests/CMakeLists.txt
+++ lib/sanitizer_common/tests/CMakeLists.txt
@@ -78,6 +78,13 @@
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.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22101.63104.patch
Type: text/x-patch
Size: 1163 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160707/54eadfb2/attachment.bin>
More information about the llvm-commits
mailing list