[PowerPC] Do not emit record-form rotates when record-form andi/andis suffices
[llvm-core.git] / test / CMakeLists.txt
blob32f1e2ec17f9a81fdeca82e2943eee2eb6be88f7
1 llvm_canonicalize_cmake_booleans(
2   LLVM_TOOL_LTO_BUILD
3   HAVE_OCAMLOPT
4   HAVE_OCAML_OUNIT
5   LLVM_INCLUDE_GO_TESTS
6   LLVM_USE_INTEL_JITEVENTS
7   HAVE_LIBZ
8   HAVE_LIBXAR
9   LLVM_ENABLE_DIA_SDK
10   LLVM_ENABLE_FFI
11   BUILD_SHARED_LIBS
12   LLVM_LINK_LLVM_DYLIB
13   )
15 configure_lit_site_cfg(
16   ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.py.in
17   ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py
18   MAIN_CONFIG
19   ${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg.py
20   )
21 configure_lit_site_cfg(
22   ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.py.in
23   ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg.py
24   MAIN_CONFIG
25   ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.cfg.py
26   )
28 # Don't include check-llvm into check-all without LLVM_BUILD_TOOLS.
29 if(NOT LLVM_BUILD_TOOLS)
30   set(EXCLUDE_FROM_ALL ON)
31 endif()
33 # Set the depends list as a variable so that it can grow conditionally.
34 # NOTE: Sync the substitutions in test/lit.cfg when adding to this list.
35 set(LLVM_TEST_DEPENDS
36           BugpointPasses
37           FileCheck
38           LLVMHello
39           UnitTests
40           bugpoint
41           count
42           llc
43           lli
44           lli-child-target
45           llvm-ar
46           llvm-as
47           llvm-bcanalyzer
48           llvm-c-test
49           llvm-cat
50           llvm-cfi-verify
51           llvm-config
52           llvm-cov
53           llvm-cvtres
54           llvm-cxxdump
55           llvm-cxxfilt
56           llvm-cxxmap
57           llvm-diff
58           llvm-dis
59           llvm-dlltool
60           dsymutil
61           llvm-dwarfdump
62           llvm-dwp
63           llvm-extract
64           llvm-isel-fuzzer
65           llvm-lib
66           llvm-link
67           llvm-lto2
68           llvm-mc
69           llvm-mca
70           llvm-modextract
71           llvm-mt
72           llvm-nm
73           llvm-objcopy
74           llvm-objdump
75           llvm-opt-fuzzer
76           llvm-opt-report
77           llvm-pdbutil
78           llvm-profdata
79           llvm-ranlib
80           llvm-rc
81           llvm-readobj
82           llvm-readelf
83           llvm-rtdyld
84           llvm-size
85           llvm-split
86           llvm-strings
87           llvm-strip
88           llvm-symbolizer
89           llvm-tblgen
90           llvm-undname
91           llvm-xray
92           not
93           obj2yaml
94           opt
95           sancov
96           sanstats
97           verify-uselistorder
98           yaml-bench
99           yaml2obj
100         )
102 if(TARGET llvm-lto)
103   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-lto)
104 endif()
106 # If Intel JIT events are supported, depend on a tool that tests the listener.
107 if( LLVM_USE_INTEL_JITEVENTS )
108   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener)
109 endif( LLVM_USE_INTEL_JITEVENTS )
111 if(TARGET LLVMgold)
112   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold)
113 endif()
115 if(TARGET llvm-go)
116   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go)
117 endif()
119 if(TARGET LTO)
120   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO)
121 endif()
123 if(LLVM_BUILD_EXAMPLES)
124   list(APPEND LLVM_TEST_DEPENDS
125     Kaleidoscope-Ch3
126     Kaleidoscope-Ch4
127     Kaleidoscope-Ch5
128     Kaleidoscope-Ch6
129     Kaleidoscope-Ch7
130     )
131 endif()
133 if(TARGET ocaml_llvm)
134   # Clear all non-OCaml cross-target dependencies when building out-of-tree.
135   if(LLVM_OCAML_OUT_OF_TREE)
136     set(LLVM_TEST_DEPENDS)
137   endif()
139   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS}
140           ocaml_llvm
141           ocaml_llvm_all_backends
142           ocaml_llvm_analysis
143           ocaml_llvm_bitreader
144           ocaml_llvm_bitwriter
145           ocaml_llvm_executionengine
146           ocaml_llvm_irreader
147           ocaml_llvm_linker
148           ocaml_llvm_target
149           ocaml_llvm_ipo
150           ocaml_llvm_passmgr_builder
151           ocaml_llvm_scalar_opts
152           ocaml_llvm_transform_utils
153           ocaml_llvm_vectorize
154         )
155 endif()
157 add_custom_target(llvm-test-depends DEPENDS ${LLVM_TEST_DEPENDS})
158 set_target_properties(llvm-test-depends PROPERTIES FOLDER "Tests")
160 add_lit_testsuite(check-llvm "Running the LLVM regression tests"
161   ${CMAKE_CURRENT_BINARY_DIR}
162   DEPENDS ${LLVM_TEST_DEPENDS}
163   )
164 set_target_properties(check-llvm PROPERTIES FOLDER "Tests")
166 add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
167   DEPENDS ${LLVM_TEST_DEPENDS}
168   )
170 # Setup a legacy alias for 'check-llvm'. This will likely change to be an
171 # alias for 'check-all' at some point in the future.
172 add_custom_target(check)
173 add_dependencies(check check-llvm)
174 set_target_properties(check PROPERTIES FOLDER "Tests")