annotate clang/lib/Headers/CMakeLists.txt @ 207:2e18cbf3894f

LLVM12
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 08 Jun 2021 06:07:14 +0900
parents 0572611fdcc8
children 5f17cb93ff66
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 set(files
anatofuz
parents:
diff changeset
2 adxintrin.h
anatofuz
parents:
diff changeset
3 altivec.h
anatofuz
parents:
diff changeset
4 ammintrin.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
5 amxintrin.h
150
anatofuz
parents:
diff changeset
6 arm_acle.h
anatofuz
parents:
diff changeset
7 arm_cmse.h
anatofuz
parents:
diff changeset
8 armintr.h
anatofuz
parents:
diff changeset
9 arm64intr.h
anatofuz
parents:
diff changeset
10 avx2intrin.h
anatofuz
parents:
diff changeset
11 avx512bf16intrin.h
anatofuz
parents:
diff changeset
12 avx512bwintrin.h
anatofuz
parents:
diff changeset
13 avx512bitalgintrin.h
anatofuz
parents:
diff changeset
14 avx512vlbitalgintrin.h
anatofuz
parents:
diff changeset
15 avx512cdintrin.h
anatofuz
parents:
diff changeset
16 avx512vpopcntdqintrin.h
anatofuz
parents:
diff changeset
17 avx512dqintrin.h
anatofuz
parents:
diff changeset
18 avx512erintrin.h
anatofuz
parents:
diff changeset
19 avx512fintrin.h
anatofuz
parents:
diff changeset
20 avx512ifmaintrin.h
anatofuz
parents:
diff changeset
21 avx512ifmavlintrin.h
anatofuz
parents:
diff changeset
22 avx512pfintrin.h
anatofuz
parents:
diff changeset
23 avx512vbmiintrin.h
anatofuz
parents:
diff changeset
24 avx512vbmivlintrin.h
anatofuz
parents:
diff changeset
25 avx512vbmi2intrin.h
anatofuz
parents:
diff changeset
26 avx512vlvbmi2intrin.h
anatofuz
parents:
diff changeset
27 avx512vlbf16intrin.h
anatofuz
parents:
diff changeset
28 avx512vlbwintrin.h
anatofuz
parents:
diff changeset
29 avx512vlcdintrin.h
anatofuz
parents:
diff changeset
30 avx512vldqintrin.h
anatofuz
parents:
diff changeset
31 avx512vlintrin.h
anatofuz
parents:
diff changeset
32 avx512vp2intersectintrin.h
anatofuz
parents:
diff changeset
33 avx512vlvp2intersectintrin.h
anatofuz
parents:
diff changeset
34 avx512vpopcntdqvlintrin.h
anatofuz
parents:
diff changeset
35 avx512vnniintrin.h
anatofuz
parents:
diff changeset
36 avx512vlvnniintrin.h
anatofuz
parents:
diff changeset
37 avxintrin.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
38 avxvnniintrin.h
150
anatofuz
parents:
diff changeset
39 bmi2intrin.h
anatofuz
parents:
diff changeset
40 bmiintrin.h
anatofuz
parents:
diff changeset
41 __clang_cuda_builtin_vars.h
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
42 __clang_cuda_math.h
150
anatofuz
parents:
diff changeset
43 __clang_cuda_cmath.h
anatofuz
parents:
diff changeset
44 __clang_cuda_complex_builtins.h
anatofuz
parents:
diff changeset
45 __clang_cuda_device_functions.h
anatofuz
parents:
diff changeset
46 __clang_cuda_intrinsics.h
anatofuz
parents:
diff changeset
47 __clang_cuda_libdevice_declares.h
anatofuz
parents:
diff changeset
48 __clang_cuda_math_forward_declares.h
anatofuz
parents:
diff changeset
49 __clang_cuda_runtime_wrapper.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
50 __clang_hip_libdevice_declares.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
51 __clang_hip_cmath.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
52 __clang_hip_math.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
53 __clang_hip_runtime_wrapper.h
150
anatofuz
parents:
diff changeset
54 cetintrin.h
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
55 cet.h
150
anatofuz
parents:
diff changeset
56 cldemoteintrin.h
anatofuz
parents:
diff changeset
57 clzerointrin.h
anatofuz
parents:
diff changeset
58 cpuid.h
anatofuz
parents:
diff changeset
59 clflushoptintrin.h
anatofuz
parents:
diff changeset
60 clwbintrin.h
anatofuz
parents:
diff changeset
61 emmintrin.h
anatofuz
parents:
diff changeset
62 enqcmdintrin.h
anatofuz
parents:
diff changeset
63 f16cintrin.h
anatofuz
parents:
diff changeset
64 float.h
anatofuz
parents:
diff changeset
65 fma4intrin.h
anatofuz
parents:
diff changeset
66 fmaintrin.h
anatofuz
parents:
diff changeset
67 fxsrintrin.h
anatofuz
parents:
diff changeset
68 gfniintrin.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
69 hresetintrin.h
150
anatofuz
parents:
diff changeset
70 htmintrin.h
anatofuz
parents:
diff changeset
71 htmxlintrin.h
anatofuz
parents:
diff changeset
72 ia32intrin.h
anatofuz
parents:
diff changeset
73 immintrin.h
anatofuz
parents:
diff changeset
74 intrin.h
anatofuz
parents:
diff changeset
75 inttypes.h
anatofuz
parents:
diff changeset
76 invpcidintrin.h
anatofuz
parents:
diff changeset
77 iso646.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
78 keylockerintrin.h
150
anatofuz
parents:
diff changeset
79 limits.h
anatofuz
parents:
diff changeset
80 lwpintrin.h
anatofuz
parents:
diff changeset
81 lzcntintrin.h
anatofuz
parents:
diff changeset
82 mm3dnow.h
anatofuz
parents:
diff changeset
83 mmintrin.h
anatofuz
parents:
diff changeset
84 mm_malloc.h
anatofuz
parents:
diff changeset
85 module.modulemap
anatofuz
parents:
diff changeset
86 movdirintrin.h
anatofuz
parents:
diff changeset
87 msa.h
anatofuz
parents:
diff changeset
88 mwaitxintrin.h
anatofuz
parents:
diff changeset
89 nmmintrin.h
anatofuz
parents:
diff changeset
90 opencl-c.h
anatofuz
parents:
diff changeset
91 opencl-c-base.h
anatofuz
parents:
diff changeset
92 pkuintrin.h
anatofuz
parents:
diff changeset
93 pmmintrin.h
anatofuz
parents:
diff changeset
94 pconfigintrin.h
anatofuz
parents:
diff changeset
95 popcntintrin.h
anatofuz
parents:
diff changeset
96 prfchwintrin.h
anatofuz
parents:
diff changeset
97 ptwriteintrin.h
anatofuz
parents:
diff changeset
98 rdseedintrin.h
anatofuz
parents:
diff changeset
99 rtmintrin.h
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
100 serializeintrin.h
150
anatofuz
parents:
diff changeset
101 sgxintrin.h
anatofuz
parents:
diff changeset
102 s390intrin.h
anatofuz
parents:
diff changeset
103 shaintrin.h
anatofuz
parents:
diff changeset
104 smmintrin.h
anatofuz
parents:
diff changeset
105 stdalign.h
anatofuz
parents:
diff changeset
106 stdarg.h
anatofuz
parents:
diff changeset
107 stdatomic.h
anatofuz
parents:
diff changeset
108 stdbool.h
anatofuz
parents:
diff changeset
109 stddef.h
anatofuz
parents:
diff changeset
110 __stddef_max_align_t.h
anatofuz
parents:
diff changeset
111 stdint.h
anatofuz
parents:
diff changeset
112 stdnoreturn.h
anatofuz
parents:
diff changeset
113 tbmintrin.h
anatofuz
parents:
diff changeset
114 tgmath.h
anatofuz
parents:
diff changeset
115 tmmintrin.h
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
116 tsxldtrkintrin.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
117 uintrintrin.h
150
anatofuz
parents:
diff changeset
118 unwind.h
anatofuz
parents:
diff changeset
119 vadefs.h
anatofuz
parents:
diff changeset
120 vaesintrin.h
anatofuz
parents:
diff changeset
121 varargs.h
anatofuz
parents:
diff changeset
122 vecintrin.h
anatofuz
parents:
diff changeset
123 vpclmulqdqintrin.h
anatofuz
parents:
diff changeset
124 waitpkgintrin.h
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
125 wasm_simd128.h
150
anatofuz
parents:
diff changeset
126 wbnoinvdintrin.h
anatofuz
parents:
diff changeset
127 wmmintrin.h
anatofuz
parents:
diff changeset
128 __wmmintrin_aes.h
anatofuz
parents:
diff changeset
129 __wmmintrin_pclmul.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
130 x86gprintrin.h
150
anatofuz
parents:
diff changeset
131 x86intrin.h
anatofuz
parents:
diff changeset
132 xmmintrin.h
anatofuz
parents:
diff changeset
133 xopintrin.h
anatofuz
parents:
diff changeset
134 xsavecintrin.h
anatofuz
parents:
diff changeset
135 xsaveintrin.h
anatofuz
parents:
diff changeset
136 xsaveoptintrin.h
anatofuz
parents:
diff changeset
137 xsavesintrin.h
anatofuz
parents:
diff changeset
138 xtestintrin.h
anatofuz
parents:
diff changeset
139 )
anatofuz
parents:
diff changeset
140
anatofuz
parents:
diff changeset
141 set(cuda_wrapper_files
anatofuz
parents:
diff changeset
142 cuda_wrappers/algorithm
anatofuz
parents:
diff changeset
143 cuda_wrappers/complex
anatofuz
parents:
diff changeset
144 cuda_wrappers/new
anatofuz
parents:
diff changeset
145 )
anatofuz
parents:
diff changeset
146
anatofuz
parents:
diff changeset
147 set(ppc_wrapper_files
anatofuz
parents:
diff changeset
148 ppc_wrappers/mmintrin.h
anatofuz
parents:
diff changeset
149 ppc_wrappers/xmmintrin.h
anatofuz
parents:
diff changeset
150 ppc_wrappers/mm_malloc.h
anatofuz
parents:
diff changeset
151 ppc_wrappers/emmintrin.h
anatofuz
parents:
diff changeset
152 ppc_wrappers/pmmintrin.h
anatofuz
parents:
diff changeset
153 ppc_wrappers/tmmintrin.h
anatofuz
parents:
diff changeset
154 ppc_wrappers/smmintrin.h
anatofuz
parents:
diff changeset
155 )
anatofuz
parents:
diff changeset
156
anatofuz
parents:
diff changeset
157 set(openmp_wrapper_files
anatofuz
parents:
diff changeset
158 openmp_wrappers/math.h
anatofuz
parents:
diff changeset
159 openmp_wrappers/cmath
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
160 openmp_wrappers/complex.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
161 openmp_wrappers/complex
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
162 openmp_wrappers/__clang_openmp_device_functions.h
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
163 openmp_wrappers/complex_cmath.h
150
anatofuz
parents:
diff changeset
164 openmp_wrappers/new
anatofuz
parents:
diff changeset
165 )
anatofuz
parents:
diff changeset
166
anatofuz
parents:
diff changeset
167 set(output_dir ${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}/include)
anatofuz
parents:
diff changeset
168 set(out_files)
anatofuz
parents:
diff changeset
169 set(generated_files)
anatofuz
parents:
diff changeset
170
anatofuz
parents:
diff changeset
171 function(copy_header_to_output_dir src_dir file)
anatofuz
parents:
diff changeset
172 set(src ${src_dir}/${file})
anatofuz
parents:
diff changeset
173 set(dst ${output_dir}/${file})
anatofuz
parents:
diff changeset
174 add_custom_command(OUTPUT ${dst}
anatofuz
parents:
diff changeset
175 DEPENDS ${src}
anatofuz
parents:
diff changeset
176 COMMAND ${CMAKE_COMMAND} -E copy_if_different ${src} ${dst}
anatofuz
parents:
diff changeset
177 COMMENT "Copying clang's ${file}...")
anatofuz
parents:
diff changeset
178 list(APPEND out_files ${dst})
anatofuz
parents:
diff changeset
179 set(out_files ${out_files} PARENT_SCOPE)
anatofuz
parents:
diff changeset
180 endfunction(copy_header_to_output_dir)
anatofuz
parents:
diff changeset
181
anatofuz
parents:
diff changeset
182 function(clang_generate_header td_option td_file out_file)
anatofuz
parents:
diff changeset
183 clang_tablegen(${out_file} ${td_option}
anatofuz
parents:
diff changeset
184 -I ${CLANG_SOURCE_DIR}/include/clang/Basic/
anatofuz
parents:
diff changeset
185 SOURCE ${CLANG_SOURCE_DIR}/include/clang/Basic/${td_file})
anatofuz
parents:
diff changeset
186
anatofuz
parents:
diff changeset
187 copy_header_to_output_dir(${CMAKE_CURRENT_BINARY_DIR} ${out_file})
anatofuz
parents:
diff changeset
188 set(out_files ${out_files} PARENT_SCOPE)
anatofuz
parents:
diff changeset
189 list(APPEND generated_files "${CMAKE_CURRENT_BINARY_DIR}/${out_file}")
anatofuz
parents:
diff changeset
190 set(generated_files ${generated_files} PARENT_SCOPE)
anatofuz
parents:
diff changeset
191 endfunction(clang_generate_header)
anatofuz
parents:
diff changeset
192
anatofuz
parents:
diff changeset
193
anatofuz
parents:
diff changeset
194 # Copy header files from the source directory to the build directory
anatofuz
parents:
diff changeset
195 foreach( f ${files} ${cuda_wrapper_files} ${ppc_wrapper_files} ${openmp_wrapper_files})
anatofuz
parents:
diff changeset
196 copy_header_to_output_dir(${CMAKE_CURRENT_SOURCE_DIR} ${f})
anatofuz
parents:
diff changeset
197 endforeach( f )
anatofuz
parents:
diff changeset
198
anatofuz
parents:
diff changeset
199 # Generate header files and copy them to the build directory
anatofuz
parents:
diff changeset
200 # Generate arm_neon.h
anatofuz
parents:
diff changeset
201 clang_generate_header(-gen-arm-neon arm_neon.td arm_neon.h)
anatofuz
parents:
diff changeset
202 # Generate arm_fp16.h
anatofuz
parents:
diff changeset
203 clang_generate_header(-gen-arm-fp16 arm_fp16.td arm_fp16.h)
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
204 # Generate arm_sve.h
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
205 clang_generate_header(-gen-arm-sve-header arm_sve.td arm_sve.h)
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
206 # Generate arm_bf16.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
207 clang_generate_header(-gen-arm-bf16 arm_bf16.td arm_bf16.h)
150
anatofuz
parents:
diff changeset
208 # Generate arm_mve.h
anatofuz
parents:
diff changeset
209 clang_generate_header(-gen-arm-mve-header arm_mve.td arm_mve.h)
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
210 # Generate arm_cde.h
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
211 clang_generate_header(-gen-arm-cde-header arm_cde.td arm_cde.h)
207
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
212 # Generate riscv_vector.h
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 173
diff changeset
213 clang_generate_header(-gen-riscv-vector-header riscv_vector.td riscv_vector.h)
150
anatofuz
parents:
diff changeset
214
anatofuz
parents:
diff changeset
215 add_custom_target(clang-resource-headers ALL DEPENDS ${out_files})
anatofuz
parents:
diff changeset
216 set_target_properties(clang-resource-headers PROPERTIES
anatofuz
parents:
diff changeset
217 FOLDER "Misc"
anatofuz
parents:
diff changeset
218 RUNTIME_OUTPUT_DIRECTORY "${output_dir}")
anatofuz
parents:
diff changeset
219
anatofuz
parents:
diff changeset
220 set(header_install_dir lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}/include)
anatofuz
parents:
diff changeset
221
anatofuz
parents:
diff changeset
222 install(
anatofuz
parents:
diff changeset
223 FILES ${files} ${generated_files}
anatofuz
parents:
diff changeset
224 DESTINATION ${header_install_dir}
anatofuz
parents:
diff changeset
225 COMPONENT clang-resource-headers)
anatofuz
parents:
diff changeset
226
anatofuz
parents:
diff changeset
227 install(
anatofuz
parents:
diff changeset
228 FILES ${cuda_wrapper_files}
anatofuz
parents:
diff changeset
229 DESTINATION ${header_install_dir}/cuda_wrappers
anatofuz
parents:
diff changeset
230 COMPONENT clang-resource-headers)
anatofuz
parents:
diff changeset
231
anatofuz
parents:
diff changeset
232 install(
anatofuz
parents:
diff changeset
233 FILES ${ppc_wrapper_files}
anatofuz
parents:
diff changeset
234 DESTINATION ${header_install_dir}/ppc_wrappers
anatofuz
parents:
diff changeset
235 COMPONENT clang-resource-headers)
anatofuz
parents:
diff changeset
236
anatofuz
parents:
diff changeset
237 install(
anatofuz
parents:
diff changeset
238 FILES ${openmp_wrapper_files}
anatofuz
parents:
diff changeset
239 DESTINATION ${header_install_dir}/openmp_wrappers
anatofuz
parents:
diff changeset
240 COMPONENT clang-resource-headers)
anatofuz
parents:
diff changeset
241
anatofuz
parents:
diff changeset
242 if (NOT LLVM_ENABLE_IDE)
anatofuz
parents:
diff changeset
243 add_llvm_install_targets(install-clang-resource-headers
anatofuz
parents:
diff changeset
244 DEPENDS clang-resource-headers
anatofuz
parents:
diff changeset
245 COMPONENT clang-resource-headers)
anatofuz
parents:
diff changeset
246 endif()