llvm-runtime-resources-darwin 0.0.0 → 23.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +33 -0
  3. package/include/__clang_cuda_builtin_vars.h +121 -0
  4. package/include/__clang_cuda_cmath.h +512 -0
  5. package/include/__clang_cuda_complex_builtins.h +236 -0
  6. package/include/__clang_cuda_device_functions.h +1572 -0
  7. package/include/__clang_cuda_intrinsics.h +975 -0
  8. package/include/__clang_cuda_libdevice_declares.h +468 -0
  9. package/include/__clang_cuda_math.h +353 -0
  10. package/include/__clang_cuda_math_forward_declares.h +289 -0
  11. package/include/__clang_cuda_runtime_wrapper.h +526 -0
  12. package/include/__clang_cuda_texture_intrinsics.h +1177 -0
  13. package/include/__clang_gpu_builtin_vars.h +71 -0
  14. package/include/__clang_gpu_device_functions.h +411 -0
  15. package/include/__clang_gpu_intrinsics.h +242 -0
  16. package/include/__clang_hip_cmath.h +848 -0
  17. package/include/__clang_hip_libdevice_declares.h +238 -0
  18. package/include/__clang_hip_math.h +1405 -0
  19. package/include/__clang_hip_runtime_wrapper.h +170 -0
  20. package/include/__clang_hip_stdlib.h +43 -0
  21. package/include/__clang_spirv_builtins.h +217 -0
  22. package/include/__clang_spirv_libdevice_declares.h +170 -0
  23. package/include/__clang_spirv_math.h +719 -0
  24. package/include/__float_float.h +176 -0
  25. package/include/__float_header_macro.h +12 -0
  26. package/include/__float_infinity_nan.h +20 -0
  27. package/include/__stdarg___gnuc_va_list.h +13 -0
  28. package/include/__stdarg___va_copy.h +12 -0
  29. package/include/__stdarg_header_macro.h +12 -0
  30. package/include/__stdarg_va_arg.h +22 -0
  31. package/include/__stdarg_va_copy.h +12 -0
  32. package/include/__stdarg_va_list.h +13 -0
  33. package/include/__stddef_header_macro.h +12 -0
  34. package/include/__stddef_max_align_t.h +27 -0
  35. package/include/__stddef_null.h +29 -0
  36. package/include/__stddef_nullptr_t.h +29 -0
  37. package/include/__stddef_offsetof.h +17 -0
  38. package/include/__stddef_ptrdiff_t.h +20 -0
  39. package/include/__stddef_rsize_t.h +20 -0
  40. package/include/__stddef_size_t.h +20 -0
  41. package/include/__stddef_unreachable.h +21 -0
  42. package/include/__stddef_wchar_t.h +28 -0
  43. package/include/__stddef_wint_t.h +15 -0
  44. package/include/__wmmintrin_aes.h +140 -0
  45. package/include/__wmmintrin_pclmul.h +48 -0
  46. package/include/adcintrin.h +165 -0
  47. package/include/adxintrin.h +107 -0
  48. package/include/altivec.h +19434 -0
  49. package/include/amdgpuintrin.h +164 -0
  50. package/include/amdhsa_abi.h +83 -0
  51. package/include/ammintrin.h +183 -0
  52. package/include/amo.h +220 -0
  53. package/include/amxavx512intrin.h +596 -0
  54. package/include/amxcomplexintrin.h +167 -0
  55. package/include/amxfp16intrin.h +93 -0
  56. package/include/amxfp8intrin.h +230 -0
  57. package/include/amxintrin.h +492 -0
  58. package/include/amxmovrsintrin.h +48 -0
  59. package/include/andes_vector.h +21 -0
  60. package/include/arm64_neon.h +21 -0
  61. package/include/arm64intr.h +45 -0
  62. package/include/arm_acle.h +866 -0
  63. package/include/arm_bf16.h +20 -0
  64. package/include/arm_cde.h +410 -0
  65. package/include/arm_cmse.h +217 -0
  66. package/include/arm_fp16.h +596 -0
  67. package/include/arm_mve.h +19187 -0
  68. package/include/arm_neon.h +74351 -0
  69. package/include/arm_neon_sve_bridge.h +182 -0
  70. package/include/arm_sme.h +3753 -0
  71. package/include/arm_sve.h +32698 -0
  72. package/include/arm_vector_types.h +432 -0
  73. package/include/armintr.h +31 -0
  74. package/include/avx10_2_512bf16intrin.h +568 -0
  75. package/include/avx10_2_512convertintrin.h +322 -0
  76. package/include/avx10_2_512minmaxintrin.h +127 -0
  77. package/include/avx10_2_512niintrin.h +314 -0
  78. package/include/avx10_2_512satcvtdsintrin.h +307 -0
  79. package/include/avx10_2_512satcvtintrin.h +301 -0
  80. package/include/avx10_2bf16intrin.h +1094 -0
  81. package/include/avx10_2convertintrin.h +3257 -0
  82. package/include/avx10_2copyintrin.h +66 -0
  83. package/include/avx10_2minmaxintrin.h +232 -0
  84. package/include/avx10_2niintrin.h +409 -0
  85. package/include/avx10_2satcvtdsintrin.h +376 -0
  86. package/include/avx10_2satcvtintrin.h +312 -0
  87. package/include/avx2intrin.h +5190 -0
  88. package/include/avx512bf16intrin.h +292 -0
  89. package/include/avx512bitalgintrin.h +75 -0
  90. package/include/avx512bmmintrin.h +174 -0
  91. package/include/avx512bmmvlintrin.h +245 -0
  92. package/include/avx512bwintrin.h +1885 -0
  93. package/include/avx512cdintrin.h +112 -0
  94. package/include/avx512dqintrin.h +1350 -0
  95. package/include/avx512fintrin.h +9351 -0
  96. package/include/avx512fp16intrin.h +3349 -0
  97. package/include/avx512ifmaintrin.h +68 -0
  98. package/include/avx512ifmavlintrin.h +138 -0
  99. package/include/avx512vbmi2intrin.h +364 -0
  100. package/include/avx512vbmiintrin.h +98 -0
  101. package/include/avx512vbmivlintrin.h +179 -0
  102. package/include/avx512vlbf16intrin.h +527 -0
  103. package/include/avx512vlbitalgintrin.h +135 -0
  104. package/include/avx512vlbwintrin.h +3052 -0
  105. package/include/avx512vlcdintrin.h +202 -0
  106. package/include/avx512vldqintrin.h +1156 -0
  107. package/include/avx512vlfp16intrin.h +2090 -0
  108. package/include/avx512vlintrin.h +8067 -0
  109. package/include/avx512vlvbmi2intrin.h +702 -0
  110. package/include/avx512vlvnniintrin.h +308 -0
  111. package/include/avx512vlvp2intersectintrin.h +123 -0
  112. package/include/avx512vnniintrin.h +113 -0
  113. package/include/avx512vp2intersectintrin.h +77 -0
  114. package/include/avx512vpopcntdqintrin.h +62 -0
  115. package/include/avx512vpopcntdqvlintrin.h +105 -0
  116. package/include/avxifmaintrin.h +193 -0
  117. package/include/avxintrin.h +5064 -0
  118. package/include/avxneconvertintrin.h +484 -0
  119. package/include/avxvnniint16intrin.h +451 -0
  120. package/include/avxvnniint8intrin.h +454 -0
  121. package/include/avxvnniintrin.h +238 -0
  122. package/include/bmi2intrin.h +253 -0
  123. package/include/bmiintrin.h +604 -0
  124. package/include/builtins.h +19 -0
  125. package/include/cet.h +66 -0
  126. package/include/cetintrin.h +115 -0
  127. package/include/cldemoteintrin.h +36 -0
  128. package/include/clflushoptintrin.h +36 -0
  129. package/include/clwbintrin.h +38 -0
  130. package/include/clzerointrin.h +38 -0
  131. package/include/cmpccxaddintrin.h +70 -0
  132. package/include/cpuid.h +451 -0
  133. package/include/crc32intrin.h +102 -0
  134. package/include/cuda_wrappers/__utility/declval.h +28 -0
  135. package/include/cuda_wrappers/algorithm +116 -0
  136. package/include/cuda_wrappers/bits/basic_string.h +9 -0
  137. package/include/cuda_wrappers/bits/basic_string.tcc +9 -0
  138. package/include/cuda_wrappers/bits/c++config.h +61 -0
  139. package/include/cuda_wrappers/bits/shared_ptr_base.h +9 -0
  140. package/include/cuda_wrappers/cmath +44 -0
  141. package/include/cuda_wrappers/complex +90 -0
  142. package/include/cuda_wrappers/new +108 -0
  143. package/include/emmintrin.h +4940 -0
  144. package/include/endian.h +91 -0
  145. package/include/enqcmdintrin.h +63 -0
  146. package/include/f16cintrin.h +176 -0
  147. package/include/float.h +48 -0
  148. package/include/fma4intrin.h +220 -0
  149. package/include/fmaintrin.h +826 -0
  150. package/include/fuzzer/FuzzedDataProvider.h +397 -0
  151. package/include/fxsrintrin.h +91 -0
  152. package/include/gfniintrin.h +238 -0
  153. package/include/gpuintrin.h +348 -0
  154. package/include/hexagon_circ_brev_intrinsics.h +298 -0
  155. package/include/hexagon_protos.h +8439 -0
  156. package/include/hexagon_types.h +2628 -0
  157. package/include/hlsl_alias_intrinsics_gen.inc +3869 -0
  158. package/include/hlsl_inline_intrinsics_gen.inc +546 -0
  159. package/include/hresetintrin.h +49 -0
  160. package/include/htmintrin.h +212 -0
  161. package/include/htmxlintrin.h +345 -0
  162. package/include/hvx_hexagon_protos.h +5421 -0
  163. package/include/ia32intrin.h +863 -0
  164. package/include/immintrin.h +597 -0
  165. package/include/intrin.h +501 -0
  166. package/include/intrin0.h +256 -0
  167. package/include/inttypes.h +101 -0
  168. package/include/invpcidintrin.h +23 -0
  169. package/include/iso646.h +31 -0
  170. package/include/keylockerintrin.h +518 -0
  171. package/include/larchintrin.h +262 -0
  172. package/include/lasxintrin.h +3999 -0
  173. package/include/limits.h +133 -0
  174. package/include/llvm_libc_wrappers/assert.h +32 -0
  175. package/include/llvm_libc_wrappers/ctype.h +29 -0
  176. package/include/llvm_libc_wrappers/inttypes.h +32 -0
  177. package/include/llvm_libc_wrappers/stdio.h +52 -0
  178. package/include/llvm_libc_wrappers/stdlib.h +32 -0
  179. package/include/llvm_libc_wrappers/string.h +29 -0
  180. package/include/llvm_libc_wrappers/time.h +28 -0
  181. package/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  182. package/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  183. package/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  184. package/include/lsxintrin.h +3752 -0
  185. package/include/lwpintrin.h +136 -0
  186. package/include/lzcntintrin.h +109 -0
  187. package/include/mm3dnow.h +22 -0
  188. package/include/mm_malloc.h +67 -0
  189. package/include/mmintrin.h +1541 -0
  190. package/include/module.modulemap +375 -0
  191. package/include/movdirintrin.h +49 -0
  192. package/include/movrs_avx10_2_512intrin.h +98 -0
  193. package/include/movrs_avx10_2intrin.h +174 -0
  194. package/include/movrsintrin.h +59 -0
  195. package/include/msa.h +573 -0
  196. package/include/mwaitxintrin.h +62 -0
  197. package/include/nmmintrin.h +20 -0
  198. package/include/nvptxintrin.h +208 -0
  199. package/include/opencl-c-base.h +765 -0
  200. package/include/opencl-c.h +18737 -0
  201. package/include/openmp_wrappers/__clang_openmp_device_functions.h +118 -0
  202. package/include/openmp_wrappers/cmath +132 -0
  203. package/include/openmp_wrappers/complex +61 -0
  204. package/include/openmp_wrappers/complex.h +41 -0
  205. package/include/openmp_wrappers/complex_cmath.h +393 -0
  206. package/include/openmp_wrappers/math.h +71 -0
  207. package/include/openmp_wrappers/new +48 -0
  208. package/include/pconfigintrin.h +40 -0
  209. package/include/pkuintrin.h +34 -0
  210. package/include/pmmintrin.h +302 -0
  211. package/include/popcntintrin.h +59 -0
  212. package/include/ppc_wrappers/bmi2intrin.h +134 -0
  213. package/include/ppc_wrappers/bmiintrin.h +165 -0
  214. package/include/ppc_wrappers/emmintrin.h +2269 -0
  215. package/include/ppc_wrappers/immintrin.h +27 -0
  216. package/include/ppc_wrappers/mm_malloc.h +45 -0
  217. package/include/ppc_wrappers/mmintrin.h +1453 -0
  218. package/include/ppc_wrappers/nmmintrin.h +26 -0
  219. package/include/ppc_wrappers/pmmintrin.h +145 -0
  220. package/include/ppc_wrappers/smmintrin.h +683 -0
  221. package/include/ppc_wrappers/tmmintrin.h +453 -0
  222. package/include/ppc_wrappers/x86gprintrin.h +17 -0
  223. package/include/ppc_wrappers/x86intrin.h +28 -0
  224. package/include/ppc_wrappers/xmmintrin.h +1827 -0
  225. package/include/prfchiintrin.h +61 -0
  226. package/include/prfchwintrin.h +57 -0
  227. package/include/profile/InstrProfData.inc +1063 -0
  228. package/include/profile/instr_prof_interface.h +88 -0
  229. package/include/ptrauth.h +485 -0
  230. package/include/ptwriteintrin.h +37 -0
  231. package/include/raointintrin.h +203 -0
  232. package/include/rdpruintrin.h +57 -0
  233. package/include/rdseedintrin.h +105 -0
  234. package/include/riscv_bitmanip.h +202 -0
  235. package/include/riscv_corev_alu.h +130 -0
  236. package/include/riscv_crypto.h +178 -0
  237. package/include/riscv_mips.h +36 -0
  238. package/include/riscv_nds.h +92 -0
  239. package/include/riscv_ntlh.h +28 -0
  240. package/include/riscv_packed_simd.h +644 -0
  241. package/include/riscv_vector.h +465 -0
  242. package/include/rtmintrin.h +45 -0
  243. package/include/s390intrin.h +25 -0
  244. package/include/sanitizer/allocator_interface.h +106 -0
  245. package/include/sanitizer/asan_interface.h +398 -0
  246. package/include/sanitizer/common_interface_defs.h +507 -0
  247. package/include/sanitizer/coverage_interface.h +36 -0
  248. package/include/sanitizer/dfsan_interface.h +220 -0
  249. package/include/sanitizer/hwasan_interface.h +109 -0
  250. package/include/sanitizer/linux_syscall_hooks.h +3112 -0
  251. package/include/sanitizer/lsan_interface.h +89 -0
  252. package/include/sanitizer/msan_interface.h +135 -0
  253. package/include/sanitizer/netbsd_syscall_hooks.h +5005 -0
  254. package/include/sanitizer/rtsan_interface.h +75 -0
  255. package/include/sanitizer/safestack_interface.h +50 -0
  256. package/include/sanitizer/scudo_interface.h +38 -0
  257. package/include/sanitizer/tsan_interface.h +316 -0
  258. package/include/sanitizer/tsan_interface_atomic.h +223 -0
  259. package/include/sanitizer/tysan_interface.h +36 -0
  260. package/include/sanitizer/ubsan_interface.h +64 -0
  261. package/include/serializeintrin.h +30 -0
  262. package/include/sgxintrin.h +60 -0
  263. package/include/sha512intrin.h +200 -0
  264. package/include/shaintrin.h +190 -0
  265. package/include/sifive_vector.h +192 -0
  266. package/include/sm3intrin.h +238 -0
  267. package/include/sm4evexintrin.h +32 -0
  268. package/include/sm4intrin.h +269 -0
  269. package/include/smmintrin.h +2352 -0
  270. package/include/spirvintrin.h +167 -0
  271. package/include/stdalign.h +24 -0
  272. package/include/stdarg.h +75 -0
  273. package/include/stdatomic.h +204 -0
  274. package/include/stdbool.h +39 -0
  275. package/include/stdckdint.h +42 -0
  276. package/include/stdcountof.h +15 -0
  277. package/include/stddef.h +139 -0
  278. package/include/stddefer.h +19 -0
  279. package/include/stdint.h +835 -0
  280. package/include/stdnoreturn.h +35 -0
  281. package/include/tbmintrin.h +128 -0
  282. package/include/tgmath.h +1368 -0
  283. package/include/tmmintrin.h +779 -0
  284. package/include/tsxldtrkintrin.h +56 -0
  285. package/include/uintrintrin.h +157 -0
  286. package/include/unwind.h +332 -0
  287. package/include/usermsrintrin.h +51 -0
  288. package/include/vadefs.h +51 -0
  289. package/include/vaesintrin.h +86 -0
  290. package/include/varargs.h +16 -0
  291. package/include/vecintrin.h +12868 -0
  292. package/include/velintrin.h +71 -0
  293. package/include/velintrin_approx.h +120 -0
  294. package/include/velintrin_gen.h +1257 -0
  295. package/include/vpclmulqdqintrin.h +30 -0
  296. package/include/waitpkgintrin.h +42 -0
  297. package/include/wasm_simd128.h +2160 -0
  298. package/include/wbnoinvdintrin.h +24 -0
  299. package/include/wmmintrin.h +23 -0
  300. package/include/x86gprintrin.h +49 -0
  301. package/include/x86intrin.h +35 -0
  302. package/include/xmmintrin.h +3176 -0
  303. package/include/xopintrin.h +780 -0
  304. package/include/xsavecintrin.h +84 -0
  305. package/include/xsaveintrin.h +63 -0
  306. package/include/xsaveoptintrin.h +34 -0
  307. package/include/xsavesintrin.h +44 -0
  308. package/include/xtestintrin.h +27 -0
  309. package/include/yvals_core.h +25 -0
  310. package/include/zos_wrappers/builtins.h +18 -0
  311. package/include/zos_wrappers/grp.h +19 -0
  312. package/include/zos_wrappers/locale.h +19 -0
  313. package/include/zos_wrappers/math.h +31 -0
  314. package/include/zos_wrappers/poll.h +19 -0
  315. package/include/zos_wrappers/stdlib.h +20 -0
  316. package/include/zos_wrappers/string.h +19 -0
  317. package/include/zos_wrappers/time.h +19 -0
  318. package/include/zos_wrappers/variant.h +19 -0
  319. package/index.js +5 -0
  320. package/lib/darwin/libclang_rt.asan_abi_ios.a +0 -0
  321. package/lib/darwin/libclang_rt.asan_abi_iossim.a +0 -0
  322. package/lib/darwin/libclang_rt.asan_abi_osx.a +0 -0
  323. package/lib/darwin/libclang_rt.asan_ios_dynamic.dylib +0 -0
  324. package/lib/darwin/libclang_rt.asan_iossim_dynamic.dylib +0 -0
  325. package/lib/darwin/libclang_rt.asan_osx_dynamic.dylib +0 -0
  326. package/lib/darwin/libclang_rt.cc_kext.a +0 -0
  327. package/lib/darwin/libclang_rt.cc_kext_ios.a +0 -0
  328. package/lib/darwin/libclang_rt.fuzzer_interceptors_ios.a +0 -0
  329. package/lib/darwin/libclang_rt.fuzzer_interceptors_iossim.a +0 -0
  330. package/lib/darwin/libclang_rt.fuzzer_interceptors_osx.a +0 -0
  331. package/lib/darwin/libclang_rt.fuzzer_ios.a +0 -0
  332. package/lib/darwin/libclang_rt.fuzzer_iossim.a +0 -0
  333. package/lib/darwin/libclang_rt.fuzzer_no_main_ios.a +0 -0
  334. package/lib/darwin/libclang_rt.fuzzer_no_main_iossim.a +0 -0
  335. package/lib/darwin/libclang_rt.fuzzer_no_main_osx.a +0 -0
  336. package/lib/darwin/libclang_rt.fuzzer_osx.a +0 -0
  337. package/lib/darwin/libclang_rt.ios.a +0 -0
  338. package/lib/darwin/libclang_rt.iossim.a +0 -0
  339. package/lib/darwin/libclang_rt.lsan_ios_dynamic.dylib +0 -0
  340. package/lib/darwin/libclang_rt.lsan_iossim_dynamic.dylib +0 -0
  341. package/lib/darwin/libclang_rt.lsan_osx_dynamic.dylib +0 -0
  342. package/lib/darwin/libclang_rt.osx.a +0 -0
  343. package/lib/darwin/libclang_rt.profile_ios.a +0 -0
  344. package/lib/darwin/libclang_rt.profile_iossim.a +0 -0
  345. package/lib/darwin/libclang_rt.profile_osx.a +0 -0
  346. package/lib/darwin/libclang_rt.rtsan_ios_dynamic.dylib +0 -0
  347. package/lib/darwin/libclang_rt.rtsan_iossim_dynamic.dylib +0 -0
  348. package/lib/darwin/libclang_rt.rtsan_osx_dynamic.dylib +0 -0
  349. package/lib/darwin/libclang_rt.stats_client_ios.a +0 -0
  350. package/lib/darwin/libclang_rt.stats_client_iossim.a +0 -0
  351. package/lib/darwin/libclang_rt.stats_client_osx.a +0 -0
  352. package/lib/darwin/libclang_rt.stats_ios_dynamic.dylib +0 -0
  353. package/lib/darwin/libclang_rt.stats_iossim_dynamic.dylib +0 -0
  354. package/lib/darwin/libclang_rt.stats_osx_dynamic.dylib +0 -0
  355. package/lib/darwin/libclang_rt.tsan_ios_dynamic.dylib +0 -0
  356. package/lib/darwin/libclang_rt.tsan_iossim_dynamic.dylib +0 -0
  357. package/lib/darwin/libclang_rt.tsan_osx_dynamic.dylib +0 -0
  358. package/lib/darwin/libclang_rt.tysan_ios_dynamic.dylib +0 -0
  359. package/lib/darwin/libclang_rt.tysan_iossim_dynamic.dylib +0 -0
  360. package/lib/darwin/libclang_rt.tysan_osx_dynamic.dylib +0 -0
  361. package/lib/darwin/libclang_rt.ubsan_ios_dynamic.dylib +0 -0
  362. package/lib/darwin/libclang_rt.ubsan_iossim_dynamic.dylib +0 -0
  363. package/lib/darwin/libclang_rt.ubsan_minimal_ios.a +0 -0
  364. package/lib/darwin/libclang_rt.ubsan_minimal_ios_dynamic.dylib +0 -0
  365. package/lib/darwin/libclang_rt.ubsan_minimal_iossim.a +0 -0
  366. package/lib/darwin/libclang_rt.ubsan_minimal_iossim_dynamic.dylib +0 -0
  367. package/lib/darwin/libclang_rt.ubsan_minimal_osx.a +0 -0
  368. package/lib/darwin/libclang_rt.ubsan_minimal_osx_dynamic.dylib +0 -0
  369. package/lib/darwin/libclang_rt.ubsan_osx_dynamic.dylib +0 -0
  370. package/package.json +40 -1
  371. package/share/asan_ignorelist.txt +14 -0
  372. package/share/cfi_ignorelist.txt +17 -0
@@ -0,0 +1,136 @@
1
+ /*===---- lwpintrin.h - LWP intrinsics -------------------------------------===
2
+ *
3
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
+ * See https://llvm.org/LICENSE.txt for license information.
5
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
+ *
7
+ *===-----------------------------------------------------------------------===
8
+ */
9
+
10
+ #ifndef __X86INTRIN_H
11
+ #error "Never use <lwpintrin.h> directly; include <x86intrin.h> instead."
12
+ #endif
13
+
14
+ #ifndef __LWPINTRIN_H
15
+ #define __LWPINTRIN_H
16
+
17
+ /* Define the default attributes for the functions in this file. */
18
+ #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("lwp")))
19
+
20
+ /// Parses the LWPCB at the specified address and enables
21
+ /// profiling if valid.
22
+ ///
23
+ /// \headerfile <x86intrin.h>
24
+ ///
25
+ /// This intrinsic corresponds to the <c> LLWPCB </c> instruction.
26
+ ///
27
+ /// \param __addr
28
+ /// Address to the new Lightweight Profiling Control Block (LWPCB). If the
29
+ /// LWPCB is valid, writes the address into the LWP_CBADDR MSR and enables
30
+ /// Lightweight Profiling.
31
+ static __inline__ void __DEFAULT_FN_ATTRS
32
+ __llwpcb (void *__addr)
33
+ {
34
+ __builtin_ia32_llwpcb(__addr);
35
+ }
36
+
37
+ /// Flushes the LWP state to memory and returns the address of the LWPCB.
38
+ ///
39
+ /// \headerfile <x86intrin.h>
40
+ ///
41
+ /// This intrinsic corresponds to the <c> SLWPCB </c> instruction.
42
+ ///
43
+ /// \return
44
+ /// Address to the current Lightweight Profiling Control Block (LWPCB).
45
+ /// If LWP is not currently enabled, returns NULL.
46
+ static __inline__ void* __DEFAULT_FN_ATTRS
47
+ __slwpcb (void)
48
+ {
49
+ return __builtin_ia32_slwpcb();
50
+ }
51
+
52
+ /// Inserts programmed event record into the LWP event ring buffer
53
+ /// and advances the ring buffer pointer.
54
+ ///
55
+ /// \headerfile <x86intrin.h>
56
+ ///
57
+ /// This intrinsic corresponds to the <c> LWPINS </c> instruction.
58
+ ///
59
+ /// \param DATA2
60
+ /// A 32-bit value is zero-extended and inserted into the 64-bit Data2 field.
61
+ /// \param DATA1
62
+ /// A 32-bit value is inserted into the 32-bit Data1 field.
63
+ /// \param FLAGS
64
+ /// A 32-bit immediate value is inserted into the 32-bit Flags field.
65
+ /// \returns If the ring buffer is full and LWP is running in Synchronized Mode,
66
+ /// the event record overwrites the last record in the buffer, the MissedEvents
67
+ /// counter in the LWPCB is incremented, the head pointer is not advanced, and
68
+ /// 1 is returned. Otherwise 0 is returned.
69
+ #define __lwpins32(DATA2, DATA1, FLAGS) \
70
+ (__builtin_ia32_lwpins32((unsigned int) (DATA2), (unsigned int) (DATA1), \
71
+ (unsigned int) (FLAGS)))
72
+
73
+ /// Decrements the LWP programmed value sample event counter. If the result is
74
+ /// negative, inserts an event record into the LWP event ring buffer in memory
75
+ /// and advances the ring buffer pointer.
76
+ ///
77
+ /// \headerfile <x86intrin.h>
78
+ ///
79
+ /// This intrinsic corresponds to the <c> LWPVAL </c> instruction.
80
+ ///
81
+ /// \param DATA2
82
+ /// A 32-bit value is zero-extended and inserted into the 64-bit Data2 field.
83
+ /// \param DATA1
84
+ /// A 32-bit value is inserted into the 32-bit Data1 field.
85
+ /// \param FLAGS
86
+ /// A 32-bit immediate value is inserted into the 32-bit Flags field.
87
+ #define __lwpval32(DATA2, DATA1, FLAGS) \
88
+ (__builtin_ia32_lwpval32((unsigned int) (DATA2), (unsigned int) (DATA1), \
89
+ (unsigned int) (FLAGS)))
90
+
91
+ #ifdef __x86_64__
92
+
93
+ /// Inserts programmed event record into the LWP event ring buffer
94
+ /// and advances the ring buffer pointer.
95
+ ///
96
+ /// \headerfile <x86intrin.h>
97
+ ///
98
+ /// This intrinsic corresponds to the <c> LWPINS </c> instruction.
99
+ ///
100
+ /// \param DATA2
101
+ /// A 64-bit value is inserted into the 64-bit Data2 field.
102
+ /// \param DATA1
103
+ /// A 32-bit value is inserted into the 32-bit Data1 field.
104
+ /// \param FLAGS
105
+ /// A 32-bit immediate value is inserted into the 32-bit Flags field.
106
+ /// \returns If the ring buffer is full and LWP is running in Synchronized Mode,
107
+ /// the event record overwrites the last record in the buffer, the MissedEvents
108
+ /// counter in the LWPCB is incremented, the head pointer is not advanced, and
109
+ /// 1 is returned. Otherwise 0 is returned.
110
+ #define __lwpins64(DATA2, DATA1, FLAGS) \
111
+ (__builtin_ia32_lwpins64((unsigned long long) (DATA2), (unsigned int) (DATA1), \
112
+ (unsigned int) (FLAGS)))
113
+
114
+ /// Decrements the LWP programmed value sample event counter. If the result is
115
+ /// negative, inserts an event record into the LWP event ring buffer in memory
116
+ /// and advances the ring buffer pointer.
117
+ ///
118
+ /// \headerfile <x86intrin.h>
119
+ ///
120
+ /// This intrinsic corresponds to the <c> LWPVAL </c> instruction.
121
+ ///
122
+ /// \param DATA2
123
+ /// A 64-bit value is and inserted into the 64-bit Data2 field.
124
+ /// \param DATA1
125
+ /// A 32-bit value is inserted into the 32-bit Data1 field.
126
+ /// \param FLAGS
127
+ /// A 32-bit immediate value is inserted into the 32-bit Flags field.
128
+ #define __lwpval64(DATA2, DATA1, FLAGS) \
129
+ (__builtin_ia32_lwpval64((unsigned long long) (DATA2), (unsigned int) (DATA1), \
130
+ (unsigned int) (FLAGS)))
131
+
132
+ #endif
133
+
134
+ #undef __DEFAULT_FN_ATTRS
135
+
136
+ #endif /* __LWPINTRIN_H */
@@ -0,0 +1,109 @@
1
+ /*===---- lzcntintrin.h - LZCNT intrinsics ---------------------------------===
2
+ *
3
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
+ * See https://llvm.org/LICENSE.txt for license information.
5
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
+ *
7
+ *===-----------------------------------------------------------------------===
8
+ */
9
+
10
+ #if !defined __X86INTRIN_H && !defined __IMMINTRIN_H
11
+ #error "Never use <lzcntintrin.h> directly; include <x86intrin.h> instead."
12
+ #endif
13
+
14
+ #ifndef __LZCNTINTRIN_H
15
+ #define __LZCNTINTRIN_H
16
+
17
+ /* Define the default attributes for the functions in this file.
18
+ Allow using the lzcnt intrinsics even for non-LZCNT targets. Since the LZCNT
19
+ intrinsics are mapped to llvm.ctlz.*, false, which can be lowered to BSR on
20
+ non-LZCNT targets with zero-value input handled correctly. */
21
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
22
+ #define __DEFAULT_FN_ATTRS \
23
+ __attribute__((__always_inline__, __nodebug__)) constexpr
24
+ #else
25
+ #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
26
+ #endif
27
+
28
+ #ifndef _MSC_VER
29
+ /// Counts the number of leading zero bits in the operand.
30
+ ///
31
+ /// \headerfile <x86intrin.h>
32
+ ///
33
+ /// This intrinsic corresponds to the \c LZCNT instruction.
34
+ ///
35
+ /// \param __X
36
+ /// An unsigned 16-bit integer whose leading zeros are to be counted.
37
+ /// \returns An unsigned 16-bit integer containing the number of leading zero
38
+ /// bits in the operand.
39
+ #define __lzcnt16(X) __builtin_ia32_lzcnt_u16((unsigned short)(X))
40
+ #endif // _MSC_VER
41
+
42
+ /// Counts the number of leading zero bits in the operand.
43
+ ///
44
+ /// \headerfile <x86intrin.h>
45
+ ///
46
+ /// This intrinsic corresponds to the \c LZCNT instruction.
47
+ ///
48
+ /// \param __X
49
+ /// An unsigned 32-bit integer whose leading zeros are to be counted.
50
+ /// \returns An unsigned 32-bit integer containing the number of leading zero
51
+ /// bits in the operand.
52
+ /// \see _lzcnt_u32
53
+ static __inline__ unsigned int __DEFAULT_FN_ATTRS
54
+ __lzcnt32(unsigned int __X) {
55
+ return __builtin_ia32_lzcnt_u32(__X);
56
+ }
57
+
58
+ /// Counts the number of leading zero bits in the operand.
59
+ ///
60
+ /// \headerfile <x86intrin.h>
61
+ ///
62
+ /// This intrinsic corresponds to the \c LZCNT instruction.
63
+ ///
64
+ /// \param __X
65
+ /// An unsigned 32-bit integer whose leading zeros are to be counted.
66
+ /// \returns An unsigned 32-bit integer containing the number of leading zero
67
+ /// bits in the operand.
68
+ /// \see __lzcnt32
69
+ static __inline__ unsigned int __DEFAULT_FN_ATTRS
70
+ _lzcnt_u32(unsigned int __X) {
71
+ return __builtin_ia32_lzcnt_u32(__X);
72
+ }
73
+
74
+ #ifdef __x86_64__
75
+ #ifndef _MSC_VER
76
+ /// Counts the number of leading zero bits in the operand.
77
+ ///
78
+ /// \headerfile <x86intrin.h>
79
+ ///
80
+ /// This intrinsic corresponds to the \c LZCNT instruction.
81
+ ///
82
+ /// \param __X
83
+ /// An unsigned 64-bit integer whose leading zeros are to be counted.
84
+ /// \returns An unsigned 64-bit integer containing the number of leading zero
85
+ /// bits in the operand.
86
+ /// \see _lzcnt_u64
87
+ #define __lzcnt64(X) __builtin_ia32_lzcnt_u64((unsigned long long)(X))
88
+ #endif // _MSC_VER
89
+
90
+ /// Counts the number of leading zero bits in the operand.
91
+ ///
92
+ /// \headerfile <x86intrin.h>
93
+ ///
94
+ /// This intrinsic corresponds to the \c LZCNT instruction.
95
+ ///
96
+ /// \param __X
97
+ /// An unsigned 64-bit integer whose leading zeros are to be counted.
98
+ /// \returns An unsigned 64-bit integer containing the number of leading zero
99
+ /// bits in the operand.
100
+ /// \see __lzcnt64
101
+ static __inline__ unsigned long long __DEFAULT_FN_ATTRS
102
+ _lzcnt_u64(unsigned long long __X) {
103
+ return __builtin_ia32_lzcnt_u64(__X);
104
+ }
105
+ #endif
106
+
107
+ #undef __DEFAULT_FN_ATTRS
108
+
109
+ #endif /* __LZCNTINTRIN_H */
@@ -0,0 +1,22 @@
1
+ /*===---- mm3dnow.h - 3DNow! intrinsics ------------------------------------===
2
+ *
3
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
+ * See https://llvm.org/LICENSE.txt for license information.
5
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
+ *
7
+ *===-----------------------------------------------------------------------===
8
+ */
9
+
10
+ // 3dNow intrinsics are no longer supported.
11
+
12
+ #ifndef _MM3DNOW_H_INCLUDED
13
+ #define _MM3DNOW_H_INCLUDED
14
+
15
+ #ifndef _CLANG_DISABLE_CRT_DEPRECATION_WARNINGS
16
+ #warning "The <mm3dnow.h> header is deprecated, and 3dNow! intrinsics are unsupported. For other intrinsics, include <x86intrin.h>, instead."
17
+ #endif
18
+
19
+ #include <mmintrin.h>
20
+ #include <prfchwintrin.h>
21
+
22
+ #endif
@@ -0,0 +1,67 @@
1
+ /*===---- mm_malloc.h - Allocating and Freeing Aligned Memory Blocks -------===
2
+ *
3
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
+ * See https://llvm.org/LICENSE.txt for license information.
5
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
+ *
7
+ *===-----------------------------------------------------------------------===
8
+ */
9
+
10
+ #ifndef __MM_MALLOC_H
11
+ #define __MM_MALLOC_H
12
+
13
+ #include <stdlib.h>
14
+
15
+ #ifdef _WIN32
16
+ #include <malloc.h>
17
+ #else
18
+ #ifndef __cplusplus
19
+ extern int posix_memalign(void **__memptr, size_t __alignment, size_t __size);
20
+ #else
21
+ // Some systems (e.g. those with GNU libc) declare posix_memalign with an
22
+ // exception specifier. Via an "egregious workaround" in
23
+ // Sema::CheckEquivalentExceptionSpec, Clang accepts the following as a valid
24
+ // redeclaration of glibc's declaration.
25
+ extern "C" int posix_memalign(void **__memptr, size_t __alignment, size_t __size);
26
+ #endif
27
+ #endif
28
+
29
+ #if !(defined(_WIN32) && defined(_mm_malloc))
30
+ static __inline__ void *__attribute__((__always_inline__, __nodebug__,
31
+ __malloc__, __alloc_size__(1),
32
+ __alloc_align__(2)))
33
+ _mm_malloc(size_t __size, size_t __align) {
34
+ if (__align == 1) {
35
+ return malloc(__size);
36
+ }
37
+
38
+ if (!(__align & (__align - 1)) && __align < sizeof(void *))
39
+ __align = sizeof(void *);
40
+
41
+ void *__mallocedMemory;
42
+ #if defined(__MINGW32__)
43
+ __mallocedMemory = __mingw_aligned_malloc(__size, __align);
44
+ #elif defined(_WIN32)
45
+ __mallocedMemory = _aligned_malloc(__size, __align);
46
+ #else
47
+ if (posix_memalign(&__mallocedMemory, __align, __size))
48
+ return 0;
49
+ #endif
50
+
51
+ return __mallocedMemory;
52
+ }
53
+
54
+ static __inline__ void __attribute__((__always_inline__, __nodebug__))
55
+ _mm_free(void *__p)
56
+ {
57
+ #if defined(__MINGW32__)
58
+ __mingw_aligned_free(__p);
59
+ #elif defined(_WIN32)
60
+ _aligned_free(__p);
61
+ #else
62
+ free(__p);
63
+ #endif
64
+ }
65
+ #endif
66
+
67
+ #endif /* __MM_MALLOC_H */