]>
Commit | Line | Data |
---|---|---|
2c00a5a8 | 1 | set(CFI_TESTSUITES) |
5bcae85e | 2 | |
2c00a5a8 XL |
3 | macro (add_cfi_test_suites lld thinlto) |
4 | set(suffix) | |
5 | if (${lld}) | |
6 | set(suffix ${suffix}-lld) | |
7 | endif() | |
8 | if (${thinlto}) | |
9 | set(suffix ${suffix}-thinlto) | |
10 | endif() | |
11 | set(suffix ${suffix}-${CFI_TEST_TARGET_ARCH}) | |
12 | ||
13 | set(CFI_TEST_USE_LLD ${lld}) | |
14 | set(CFI_TEST_USE_THINLTO ${thinlto}) | |
15 | ||
16 | set(CFI_LIT_TEST_MODE Standalone) | |
17 | set(CFI_TEST_CONFIG_SUFFIX -standalone${suffix}) | |
18 | configure_lit_site_cfg( | |
19 | ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in | |
20 | ${CMAKE_CURRENT_BINARY_DIR}/Standalone${suffix}/lit.site.cfg | |
21 | ) | |
22 | list(APPEND CFI_TESTSUITES ${CMAKE_CURRENT_BINARY_DIR}/Standalone${suffix}) | |
23 | ||
24 | set(CFI_LIT_TEST_MODE Devirt) | |
25 | set(CFI_TEST_CONFIG_SUFFIX -devirt${suffix}) | |
26 | configure_lit_site_cfg( | |
27 | ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in | |
28 | ${CMAKE_CURRENT_BINARY_DIR}/Devirt${suffix}/lit.site.cfg | |
29 | ) | |
30 | list(APPEND CFI_TESTSUITES ${CMAKE_CURRENT_BINARY_DIR}/Devirt${suffix}) | |
31 | endmacro() | |
32 | ||
33 | set(CFI_TEST_ARCH ${CFI_SUPPORTED_ARCH}) | |
34 | if(APPLE) | |
35 | darwin_filter_host_archs(CFI_SUPPORTED_ARCH CFI_TEST_ARCH) | |
36 | endif() | |
37 | ||
38 | foreach(arch ${CFI_TEST_ARCH}) | |
39 | set(CFI_TEST_TARGET_ARCH ${arch}) | |
40 | get_test_cc_for_arch(${arch} CFI_TEST_TARGET_CC CFI_TEST_TARGET_CFLAGS) | |
41 | if (APPLE) | |
42 | # FIXME: enable ThinLTO tests after fixing http://llvm.org/pr32741 | |
43 | add_cfi_test_suites(False False) | |
44 | elseif(WIN32) | |
45 | add_cfi_test_suites(True False) | |
46 | add_cfi_test_suites(True True) | |
47 | else() | |
48 | add_cfi_test_suites(False False) | |
49 | add_cfi_test_suites(False True) | |
50 | if (COMPILER_RT_HAS_LLD AND NOT arch STREQUAL "i386") | |
51 | add_cfi_test_suites(True False) | |
52 | add_cfi_test_suites(True True) | |
53 | endif() | |
54 | endif() | |
55 | endforeach() | |
92a42be0 SL |
56 | |
57 | set(CFI_TEST_DEPS ${SANITIZER_COMMON_LIT_TEST_DEPS}) | |
7cac9316 XL |
58 | list(APPEND CFI_TEST_DEPS |
59 | ubsan | |
60 | stats | |
61 | ) | |
62 | if(COMPILER_RT_HAS_CFI) | |
63 | list(APPEND CFI_TEST_DEPS cfi) | |
64 | endif() | |
65 | ||
92a42be0 SL |
66 | if(NOT COMPILER_RT_STANDALONE_BUILD) |
67 | list(APPEND CFI_TEST_DEPS | |
68 | opt | |
5bcae85e | 69 | sanstats |
92a42be0 SL |
70 | ) |
71 | if(LLVM_ENABLE_PIC AND LLVM_BINUTILS_INCDIR) | |
72 | list(APPEND CFI_TEST_DEPS | |
73 | LLVMgold | |
74 | ) | |
75 | endif() | |
76 | if(APPLE) | |
77 | list(APPEND CFI_TEST_DEPS | |
78 | LTO | |
79 | ) | |
80 | endif() | |
2c00a5a8 | 81 | if(NOT APPLE AND COMPILER_RT_HAS_LLD) |
92a42be0 SL |
82 | list(APPEND CFI_TEST_DEPS |
83 | lld | |
84 | ) | |
85 | endif() | |
86 | endif() | |
87 | ||
88 | add_lit_testsuite(check-cfi "Running the cfi regression tests" | |
2c00a5a8 | 89 | ${CFI_TESTSUITES} |
92a42be0 SL |
90 | DEPENDS ${CFI_TEST_DEPS}) |
91 | ||
92 | add_lit_target(check-cfi-and-supported "Running the cfi regression tests" | |
2c00a5a8 | 93 | ${CFI_TESTSUITES} |
92a42be0 SL |
94 | PARAMS check_supported=1 |
95 | DEPENDS ${CFI_TEST_DEPS}) | |
96 | ||
5bcae85e SL |
97 | set_target_properties(check-cfi PROPERTIES FOLDER "Compiler-RT Misc") |
98 | set_target_properties(check-cfi-and-supported PROPERTIES FOLDER "Compiler-RT Misc") |