Skip to content

Commit beb3fa2

Browse files
committed
Revert "Reland "[compiler-rt][test] Heed COMPILER_RT_DEBUG when compiling unittests""
This reverts commit 255c3e3, which breaks Msan-x86_64-Test.
1 parent 4eaccea commit beb3fa2

File tree

11 files changed

+40
-30
lines changed

11 files changed

+40
-30
lines changed

compiler-rt/CMakeLists.txt

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -436,12 +436,9 @@ if (NOT MSVC)
436436

437437
# Build with optimization, unless we're in debug mode.
438438
if(COMPILER_RT_DEBUG)
439-
list(APPEND SANITIZER_COMMON_CFLAGS -O0)
440-
string(APPEND COMPILER_RT_TEST_COMPILER_CFLAGS " -O0")
439+
list(APPEND SANITIZER_COMMON_CFLAGS -O1)
441440
else()
442441
list(APPEND SANITIZER_COMMON_CFLAGS -O3)
443-
# FIXME: Omit for now, causes testsuite failures.
444-
#string(APPEND COMPILER_RT_TEST_COMPILER_CFLAGS " -O3")
445442
endif()
446443
endif()
447444

@@ -476,7 +473,6 @@ if(MSVC)
476473
string(REGEX REPLACE "(^| )/Z[i7I]($| )" " /Z7 "
477474
"${var_to_update}" "${${var_to_update}}")
478475
endforeach()
479-
list(APPEND COMPILER_RT_UNITTEST_CFLAGS -gcodeview)
480476
elseif(APPLE)
481477
# On Apple platforms use full debug info (i.e. not `-gline-tables-only`)
482478
# for all build types so that the runtime can be debugged.
@@ -486,13 +482,8 @@ elseif(APPLE)
486482
list(APPEND SANITIZER_COMMON_CFLAGS -g)
487483
elseif(COMPILER_RT_HAS_GLINE_TABLES_ONLY_FLAG AND NOT COMPILER_RT_DEBUG)
488484
list(APPEND SANITIZER_COMMON_CFLAGS -gline-tables-only)
489-
# -gline-tables-only must be enough for these tests, so use it if possible.
490-
string(APPEND COMPILER_RT_TEST_COMPILER_CFLAGS " -gline-tables-only")
491-
list(APPEND COMPILER_RT_UNITTEST_CFLAGS -gline-tables-only)
492485
elseif(COMPILER_RT_HAS_G_FLAG)
493486
list(APPEND SANITIZER_COMMON_CFLAGS -g)
494-
string(APPEND COMPILER_RT_TEST_COMPILER_CFLAGS " -g")
495-
list(APPEND COMPILER_RT_UNITTEST_CFLAGS -g)
496487
endif()
497488

498489
if(LLVM_ENABLE_MODULES)

compiler-rt/lib/asan/tests/CMakeLists.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ set(ASAN_UNITTEST_COMMON_CFLAGS
2929
-I${COMPILER_RT_SOURCE_DIR}/lib/asan
3030
-I${COMPILER_RT_SOURCE_DIR}/lib/sanitizer_common/tests
3131
-fno-rtti
32+
-O2
3233
-Wno-format
3334
-Werror=sign-compare)
3435
append_list_if(COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG -Wno-variadic-macros ASAN_UNITTEST_COMMON_CFLAGS)
@@ -39,6 +40,16 @@ set(ASAN_UNITTEST_COMMON_LINK_FLAGS
3940
${COMPILER_RT_UNITTEST_LINK_FLAGS}
4041
${COMPILER_RT_UNWINDER_LINK_LIBS}
4142
${SANITIZER_TEST_CXX_LIBRARIES})
43+
44+
# -gline-tables-only must be enough for ASan, so use it if possible.
45+
if(COMPILER_RT_TEST_COMPILER_ID MATCHES "Clang")
46+
list(APPEND ASAN_UNITTEST_COMMON_CFLAGS -gline-tables-only)
47+
else()
48+
list(APPEND ASAN_UNITTEST_COMMON_CFLAGS -g)
49+
endif()
50+
if(MSVC)
51+
list(APPEND ASAN_UNITTEST_COMMON_CFLAGS -gcodeview)
52+
endif()
4253
list(APPEND ASAN_UNITTEST_COMMON_LINK_FLAGS -g)
4354

4455
# Use -D instead of definitions to please custom compile command.

compiler-rt/lib/fuzzer/tests/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ set(LIBFUZZER_UNITTEST_CFLAGS
44
${COMPILER_RT_UNITTEST_CFLAGS}
55
${COMPILER_RT_GTEST_CFLAGS}
66
-I${COMPILER_RT_SOURCE_DIR}/lib/fuzzer
7-
-fno-rtti)
7+
-fno-rtti
8+
-O2)
89

910
if (APPLE)
1011
set(FUZZER_SUPPORTED_OS osx)

compiler-rt/lib/gwp_asan/tests/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ set(GWP_ASAN_UNITTEST_CFLAGS
66
${SANITIZER_TEST_CXX_CFLAGS}
77
-std=c++17
88
-I${COMPILER_RT_SOURCE_DIR}/lib/
9+
-O2
910
-g
1011
-fno-omit-frame-pointer)
1112

compiler-rt/lib/interception/tests/CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,22 @@ set(INTERCEPTION_TEST_CFLAGS_COMMON
1818
-I${COMPILER_RT_SOURCE_DIR}/lib
1919
-I${COMPILER_RT_SOURCE_DIR}/lib/interception
2020
-fno-rtti
21+
-O2
2122
-Werror=sign-compare)
2223

2324
set(INTERCEPTION_TEST_LINK_FLAGS_COMMON
2425
${COMPILER_RT_UNITTEST_LINK_FLAGS}
2526
${COMPILER_RT_UNWINDER_LINK_LIBS}
2627
${SANITIZER_TEST_CXX_LIBRARIES})
2728

29+
# -gline-tables-only must be enough for these tests, so use it if possible.
30+
if(COMPILER_RT_TEST_COMPILER_ID MATCHES "Clang")
31+
list(APPEND INTERCEPTION_TEST_CFLAGS_COMMON -gline-tables-only)
32+
else()
33+
list(APPEND INTERCEPTION_TEST_CFLAGS_COMMON -g)
34+
endif()
2835
if(MSVC)
36+
list(APPEND INTERCEPTION_TEST_CFLAGS_COMMON -gcodeview)
2937
list(APPEND INTERCEPTION_TEST_LINK_FLAGS_COMMON
3038
-Wl,-largeaddressaware
3139
-Wl,-nodefaultlib:libcmt,-defaultlib:msvcrt,-defaultlib:oldnames

compiler-rt/lib/msan/tests/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ set(MSAN_UNITTEST_COMMON_CFLAGS
3333
-I${COMPILER_RT_SOURCE_DIR}/lib
3434
-I${COMPILER_RT_SOURCE_DIR}/lib/msan
3535
-g
36+
-O2
3637
-fno-omit-frame-pointer
3738
-mno-omit-leaf-frame-pointer
3839
-Wno-deprecated-declarations

compiler-rt/lib/sanitizer_common/sanitizer_type_traits.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,6 @@ struct integral_constant {
9898
constexpr value_type operator()() const { return value; }
9999
};
100100

101-
#if !__cpp_inline_variables
102-
template <typename T, T v>
103-
constexpr T integral_constant<T, v>::value;
104-
#endif
105-
106101
#ifndef __has_builtin
107102
# define __has_builtin(x) 0
108103
#endif

compiler-rt/lib/sanitizer_common/tests/CMakeLists.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ set(SANITIZER_TEST_CFLAGS_COMMON
6767
-I${COMPILER_RT_SOURCE_DIR}/lib
6868
-I${COMPILER_RT_SOURCE_DIR}/lib/sanitizer_common
6969
-fno-rtti
70+
-O2
7071
-Werror=sign-compare
7172
-Wno-gnu-zero-variadic-macro-arguments
7273
)
@@ -75,6 +76,16 @@ set(SANITIZER_TEST_LINK_FLAGS_COMMON
7576
${COMPILER_RT_UNITTEST_LINK_FLAGS}
7677
${COMPILER_RT_UNWINDER_LINK_LIBS}
7778
${SANITIZER_TEST_CXX_LIBRARIES})
79+
80+
# -gline-tables-only must be enough for these tests, so use it if possible.
81+
if(COMPILER_RT_TEST_COMPILER_ID MATCHES "Clang")
82+
list(APPEND SANITIZER_TEST_CFLAGS_COMMON -gline-tables-only)
83+
else()
84+
list(APPEND SANITIZER_TEST_CFLAGS_COMMON -g)
85+
endif()
86+
if(MSVC)
87+
list(APPEND SANITIZER_TEST_CFLAGS_COMMON -gcodeview)
88+
endif()
7889
list(APPEND SANITIZER_TEST_LINK_FLAGS_COMMON -g)
7990

8091
if(NOT MSVC)

compiler-rt/lib/sanitizer_common/tests/sanitizer_type_traits_test.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,4 @@ TEST(SanitizerCommon, IsTriviallyCopyable) {
8080
ASSERT_FALSE((is_trivially_copyable<std::vector<int>>::value));
8181
}
8282

83-
} // namespace __sanitizer
83+
} // namespace __sanitizer

compiler-rt/lib/tsan/tests/unit/tsan_trace_test.cpp

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,8 @@
2323
// There must be some difference in thread initialization
2424
// between normal execution and unit tests.
2525
# define TRACE_TEST(SUITE, NAME) TEST(SUITE, DISABLED_##NAME)
26-
# define TRACE_TEST_OPTIMIZED(SUITE, NAME) TEST(SUITE, DISABLED_##NAME)
2726
#else
2827
# define TRACE_TEST(SUITE, NAME) TEST(SUITE, NAME)
29-
// Some tests deadlock in debug builds.
30-
# if !SANITIZER_DEBUG
31-
# define TRACE_TEST_OPTIMIZED(SUITE, NAME) TEST(SUITE, NAME)
32-
# else
33-
# define TRACE_TEST_OPTIMIZED(SUITE, NAME) TEST(SUITE, DISABLED_##NAME)
34-
# endif
3528
#endif
3629

3730
namespace __tsan {
@@ -74,7 +67,7 @@ struct ThreadArray {
7467
operator ThreadState *() { return threads[0]; }
7568
};
7669

77-
TRACE_TEST_OPTIMIZED(Trace, RestoreAccess) {
70+
TRACE_TEST(Trace, RestoreAccess) {
7871
// A basic test with some function entry/exit events,
7972
// some mutex lock/unlock events and some other distracting
8073
// memory events.
@@ -119,7 +112,7 @@ TRACE_TEST_OPTIMIZED(Trace, RestoreAccess) {
119112
CHECK_EQ(tag, kExternalTagNone);
120113
}
121114

122-
TRACE_TEST_OPTIMIZED(Trace, MemoryAccessSize) {
115+
TRACE_TEST(Trace, MemoryAccessSize) {
123116
// Test tracing and matching of accesses of different sizes.
124117
struct Params {
125118
uptr access_size, offset, size;
@@ -174,7 +167,7 @@ TRACE_TEST_OPTIMIZED(Trace, MemoryAccessSize) {
174167
}
175168
}
176169

177-
TRACE_TEST_OPTIMIZED(Trace, RestoreMutexLock) {
170+
TRACE_TEST(Trace, RestoreMutexLock) {
178171
// Check of restoration of a mutex lock event.
179172
ThreadArray<1> thr;
180173
TraceFunc(thr, 0x1000);
@@ -204,7 +197,7 @@ TRACE_TEST_OPTIMIZED(Trace, RestoreMutexLock) {
204197
CHECK_EQ(mset.Get(1).write, false);
205198
}
206199

207-
TRACE_TEST_OPTIMIZED(Trace, MultiPart) {
200+
TRACE_TEST(Trace, MultiPart) {
208201
// Check replay of a trace with multiple parts.
209202
ThreadArray<1> thr;
210203
FuncEntry(thr, 0x1000);

compiler-rt/test/tsan/Linux/check_memcpy.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
// tsan.
88
// REQUIRES: shared_unwind
99

10-
// XFAIL: !compiler-rt-optimized
11-
1210
// RUN: %clang_tsan -O1 %s -o %t
1311
// RUN: llvm-objdump -d -l %t | FileCheck %s
1412

0 commit comments

Comments
 (0)