OSDN Git Service

[SCEV] Use Operator::getOpcode instead of manual dispatch; NFC
[android-x86/external-llvm.git] / test / CMakeLists.txt
1 if(LLVM_BUILD_EXAMPLES)
2   set(ENABLE_EXAMPLES 1)
3 endif()
4
5 configure_lit_site_cfg(
6   ${CMAKE_CURRENT_SOURCE_DIR}/lit.site.cfg.in
7   ${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
8   )
9 configure_lit_site_cfg(
10   ${CMAKE_CURRENT_SOURCE_DIR}/Unit/lit.site.cfg.in
11   ${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
12   )
13
14 # Don't include check-llvm into check-all without LLVM_BUILD_TOOLS.
15 if(NOT LLVM_BUILD_TOOLS)
16   set(EXCLUDE_FROM_ALL ON)
17 endif()
18
19 # Set the depends list as a variable so that it can grow conditionally.
20 # NOTE: Sync the substitutions in test/lit.cfg when adding to this list.
21 set(LLVM_TEST_DEPENDS
22           BugpointPasses
23           FileCheck
24           LLVMHello
25           UnitTests
26           bugpoint
27           count
28           llc
29           lli
30           lli-child-target
31           llvm-ar
32           llvm-as
33           llvm-bcanalyzer
34           llvm-c-test
35           llvm-config
36           llvm-cov
37           llvm-cxxdump
38           llvm-diff
39           llvm-dis
40           llvm-dsymutil
41           llvm-dwarfdump
42           llvm-dwp
43           llvm-extract
44           llvm-lib
45           llvm-link
46           llvm-lto
47           llvm-mc
48           llvm-mcmarkup
49           llvm-nm
50           llvm-objdump
51           llvm-pdbdump
52           llvm-profdata
53           llvm-ranlib
54           llvm-readobj
55           llvm-rtdyld
56           llvm-size
57           llvm-split
58           llvm-symbolizer
59           llvm-tblgen
60           not
61           obj2yaml
62           opt
63           sancov
64           sanstats
65           verify-uselistorder
66           yaml-bench
67           yaml2obj
68         )
69
70 # If Intel JIT events are supported, depend on a tool that tests the listener.
71 if( LLVM_USE_INTEL_JITEVENTS )
72   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-jitlistener)
73 endif( LLVM_USE_INTEL_JITEVENTS )
74
75 if(TARGET LLVMgold)
76   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LLVMgold)
77 endif()
78
79 if(TARGET llvm-go)
80   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} llvm-go)
81 endif()
82
83 if(APPLE)
84   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS} LTO)
85 endif()
86
87 if(TARGET ocaml_llvm)
88   set(LLVM_TEST_DEPENDS ${LLVM_TEST_DEPENDS}
89           ocaml_llvm
90           ocaml_llvm_all_backends
91           ocaml_llvm_analysis
92           ocaml_llvm_bitreader
93           ocaml_llvm_bitwriter
94           ocaml_llvm_executionengine
95           ocaml_llvm_irreader
96           ocaml_llvm_linker
97           ocaml_llvm_target
98           ocaml_llvm_ipo
99           ocaml_llvm_passmgr_builder
100           ocaml_llvm_scalar_opts
101           ocaml_llvm_transform_utils
102           ocaml_llvm_vectorize
103         )
104 endif()
105
106 if(LLVM_BUILD_EXAMPLES)
107   list(APPEND LLVM_TEST_DEPENDS
108     Kaleidoscope-Ch3
109     Kaleidoscope-Ch4
110     Kaleidoscope-Ch5
111     Kaleidoscope-Ch6
112     Kaleidoscope-Ch7
113     )
114 endif()
115
116 add_custom_target(llvm-test-depends DEPENDS ${LLVM_TEST_DEPENDS})
117
118 add_lit_testsuite(check-llvm "Running the LLVM regression tests"
119   ${CMAKE_CURRENT_BINARY_DIR}
120   PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
121          llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
122   DEPENDS ${LLVM_TEST_DEPENDS}
123   )
124 set_target_properties(check-llvm PROPERTIES FOLDER "Tests")
125
126 add_lit_testsuites(LLVM ${CMAKE_CURRENT_SOURCE_DIR}
127   PARAMS llvm_site_config=${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg
128          llvm_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
129   DEPENDS ${LLVM_TEST_DEPENDS}
130   )
131
132 # Setup a legacy alias for 'check-llvm'. This will likely change to be an
133 # alias for 'check-all' at some point in the future.
134 add_custom_target(check)
135 add_dependencies(check check-llvm)
136 set_target_properties(check PROPERTIES FOLDER "Tests")