@cpp-linter/clang-tidy-win32-x64 20.1.0 → 22.1.8

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 (309) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/22/include/__clang_cuda_complex_builtins.h +229 -0
  4. package/lib/clang/{20 → 22}/include/__clang_cuda_device_functions.h +1 -1
  5. package/lib/clang/{20 → 22}/include/__clang_cuda_intrinsics.h +295 -8
  6. package/lib/clang/{20 → 22}/include/__clang_cuda_runtime_wrapper.h +19 -0
  7. package/lib/clang/{20 → 22}/include/__clang_cuda_texture_intrinsics.h +437 -2
  8. package/lib/clang/{20 → 22}/include/__clang_hip_cmath.h +9 -8
  9. package/lib/clang/{20 → 22}/include/__clang_hip_libdevice_declares.h +29 -42
  10. package/lib/clang/{20 → 22}/include/__clang_hip_math.h +107 -31
  11. package/lib/clang/{20 → 22}/include/__clang_hip_runtime_wrapper.h +6 -0
  12. package/lib/clang/22/include/__clang_spirv_builtins.h +217 -0
  13. package/lib/clang/{20/include/float.h → 22/include/__float_float.h} +14 -34
  14. package/lib/clang/22/include/__float_header_macro.h +12 -0
  15. package/lib/clang/22/include/__float_infinity_nan.h +20 -0
  16. package/lib/clang/{20 → 22}/include/__stdarg_va_arg.h +2 -2
  17. package/lib/clang/{20 → 22}/include/altivec.h +82 -79
  18. package/lib/clang/{20 → 22}/include/amdgpuintrin.h +23 -26
  19. package/lib/clang/22/include/amo.h +131 -0
  20. package/lib/clang/{20 → 22}/include/amxavx512intrin.h +216 -2
  21. package/lib/clang/{20 → 22}/include/amxcomplexintrin.h +4 -6
  22. package/lib/clang/{20 → 22}/include/amxintrin.h +0 -2
  23. package/lib/clang/22/include/andes_vector.h +16 -0
  24. package/lib/clang/{20 → 22}/include/arm_acle.h +48 -68
  25. package/lib/clang/{20 → 22}/include/arm_fp16.h +89 -89
  26. package/lib/clang/{20 → 22}/include/arm_neon.h +22413 -19759
  27. package/lib/clang/{20 → 22}/include/arm_sme.h +702 -8
  28. package/lib/clang/{20 → 22}/include/arm_sve.h +6346 -5626
  29. package/lib/clang/{20 → 22}/include/avx10_2_512bf16intrin.h +19 -12
  30. package/lib/clang/{20 → 22}/include/avx10_2_512convertintrin.h +25 -23
  31. package/lib/clang/{20 → 22}/include/avx10_2_512niintrin.h +31 -31
  32. package/lib/clang/{20 → 22}/include/avx10_2_512satcvtdsintrin.h +29 -25
  33. package/lib/clang/{20 → 22}/include/avx10_2_512satcvtintrin.h +84 -84
  34. package/lib/clang/{20 → 22}/include/avx10_2bf16intrin.h +54 -45
  35. package/lib/clang/22/include/avx10_2convertintrin.h +3257 -0
  36. package/lib/clang/{20 → 22}/include/avx10_2copyintrin.h +1 -1
  37. package/lib/clang/{20 → 22}/include/avx10_2minmaxintrin.h +18 -63
  38. package/lib/clang/22/include/avx10_2niintrin.h +409 -0
  39. package/lib/clang/22/include/avx10_2satcvtdsintrin.h +376 -0
  40. package/lib/clang/22/include/avx10_2satcvtintrin.h +312 -0
  41. package/lib/clang/{20 → 22}/include/avx2intrin.h +275 -377
  42. package/lib/clang/{20 → 22}/include/avx512bf16intrin.h +25 -16
  43. package/lib/clang/{20 → 22}/include/avx512bitalgintrin.h +19 -30
  44. package/lib/clang/{20 → 22}/include/avx512bwintrin.h +386 -505
  45. package/lib/clang/22/include/avx512cdintrin.h +112 -0
  46. package/lib/clang/{20 → 22}/include/avx512dqintrin.h +132 -161
  47. package/lib/clang/{20 → 22}/include/avx512fintrin.h +1015 -1424
  48. package/lib/clang/{20 → 22}/include/avx512fp16intrin.h +114 -111
  49. package/lib/clang/22/include/avx512ifmaintrin.h +68 -0
  50. package/lib/clang/22/include/avx512ifmavlintrin.h +138 -0
  51. package/lib/clang/{20 → 22}/include/avx512vbmi2intrin.h +43 -32
  52. package/lib/clang/{20 → 22}/include/avx512vbmiintrin.h +19 -27
  53. package/lib/clang/{20 → 22}/include/avx512vbmivlintrin.h +35 -49
  54. package/lib/clang/{20 → 22}/include/avx512vlbf16intrin.h +32 -22
  55. package/lib/clang/{20 → 22}/include/avx512vlbitalgintrin.h +37 -53
  56. package/lib/clang/{20 → 22}/include/avx512vlbwintrin.h +470 -573
  57. package/lib/clang/22/include/avx512vlcdintrin.h +202 -0
  58. package/lib/clang/{20 → 22}/include/avx512vldqintrin.h +110 -127
  59. package/lib/clang/{20 → 22}/include/avx512vlfp16intrin.h +130 -111
  60. package/lib/clang/{20 → 22}/include/avx512vlintrin.h +945 -1299
  61. package/lib/clang/{20 → 22}/include/avx512vlvbmi2intrin.h +78 -63
  62. package/lib/clang/{20 → 22}/include/avx512vlvnniintrin.h +21 -18
  63. package/lib/clang/{20 → 22}/include/avx512vlvp2intersectintrin.h +2 -2
  64. package/lib/clang/{20 → 22}/include/avx512vnniintrin.h +10 -10
  65. package/lib/clang/{20 → 22}/include/avx512vp2intersectintrin.h +1 -2
  66. package/lib/clang/{20 → 22}/include/avx512vpopcntdqintrin.h +8 -10
  67. package/lib/clang/{20 → 22}/include/avx512vpopcntdqvlintrin.h +17 -15
  68. package/lib/clang/{20 → 22}/include/avxifmaintrin.h +16 -0
  69. package/lib/clang/{20 → 22}/include/avxintrin.h +165 -241
  70. package/lib/clang/{20 → 22}/include/avxvnniint16intrin.h +118 -99
  71. package/lib/clang/{20 → 22}/include/avxvnniint8intrin.h +56 -32
  72. package/lib/clang/{20 → 22}/include/avxvnniintrin.h +16 -8
  73. package/lib/clang/{20 → 22}/include/bmiintrin.h +0 -4
  74. package/lib/clang/{20 → 22}/include/cpuid.h +125 -26
  75. package/lib/clang/22/include/cuda_wrappers/__utility/declval.h +28 -0
  76. package/lib/clang/22/include/cuda_wrappers/bits/c++config.h +61 -0
  77. package/lib/clang/{20 → 22}/include/cuda_wrappers/cmath +0 -50
  78. package/lib/clang/{20 → 22}/include/emmintrin.h +168 -168
  79. package/lib/clang/{20 → 22}/include/f16cintrin.h +23 -9
  80. package/lib/clang/22/include/float.h +48 -0
  81. package/lib/clang/22/include/fma4intrin.h +220 -0
  82. package/lib/clang/{20 → 22}/include/fmaintrin.h +96 -66
  83. package/lib/clang/{20 → 22}/include/gfniintrin.h +21 -16
  84. package/lib/clang/{20 → 22}/include/gpuintrin.h +117 -11
  85. package/lib/clang/{20 → 22}/include/hexagon_types.h +23 -20
  86. package/lib/clang/{20/include/hlsl/hlsl_intrinsics.h → 22/include/hlsl/hlsl_alias_intrinsics.h} +643 -296
  87. package/lib/clang/22/include/hlsl/hlsl_basic_types.h +370 -0
  88. package/lib/clang/22/include/hlsl/hlsl_compat_overloads.h +520 -0
  89. package/lib/clang/22/include/hlsl/hlsl_detail.h +54 -0
  90. package/lib/clang/22/include/hlsl/hlsl_intrinsic_helpers.h +190 -0
  91. package/lib/clang/22/include/hlsl/hlsl_intrinsics.h +794 -0
  92. package/lib/clang/22/include/hlsl/hlsl_spirv.h +28 -0
  93. package/lib/clang/{20 → 22}/include/hlsl.h +12 -0
  94. package/lib/clang/{20 → 22}/include/hvx_hexagon_protos.h +649 -860
  95. package/lib/clang/{20 → 22}/include/immintrin.h +0 -236
  96. package/lib/clang/{20 → 22}/include/intrin.h +25 -4
  97. package/lib/clang/{20 → 22}/include/keylockerintrin.h +0 -9
  98. package/lib/clang/{20 → 22}/include/lasxintrin.h +113 -0
  99. package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/assert.h +3 -5
  100. package/lib/clang/22/include/llvm_libc_wrappers/ctype.h +28 -0
  101. package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/inttypes.h +3 -5
  102. package/lib/clang/22/include/llvm_libc_wrappers/stdio.h +52 -0
  103. package/lib/clang/22/include/llvm_libc_wrappers/stdlib.h +32 -0
  104. package/lib/clang/22/include/llvm_libc_wrappers/string.h +28 -0
  105. package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/time.h +4 -10
  106. package/lib/clang/{20 → 22}/include/lzcntintrin.h +6 -4
  107. package/lib/clang/{20 → 22}/include/mmintrin.h +188 -257
  108. package/lib/clang/{20 → 22}/include/module.modulemap +36 -4
  109. package/lib/clang/{20 → 22}/include/movrs_avx10_2_512intrin.h +2 -2
  110. package/lib/clang/{20 → 22}/include/movrs_avx10_2intrin.h +4 -4
  111. package/lib/clang/{20 → 22}/include/movrsintrin.h +1 -1
  112. package/lib/clang/{20 → 22}/include/nvptxintrin.h +48 -31
  113. package/lib/clang/{20 → 22}/include/opencl-c-base.h +18 -93
  114. package/lib/clang/{20 → 22}/include/opencl-c.h +360 -55
  115. package/lib/clang/{20 → 22}/include/pmmintrin.h +12 -24
  116. package/lib/clang/{20 → 22}/include/prfchwintrin.h +10 -13
  117. package/lib/clang/{20 → 22}/include/ptrauth.h +73 -2
  118. package/lib/clang/{20 → 22}/include/riscv_corev_alu.h +4 -4
  119. package/lib/clang/22/include/riscv_mips.h +34 -0
  120. package/lib/clang/22/include/riscv_nds.h +89 -0
  121. package/lib/clang/{20 → 22}/include/riscv_vector.h +0 -4
  122. package/lib/clang/{20 → 22}/include/shaintrin.h +3 -2
  123. package/lib/clang/{20 → 22}/include/sifive_vector.h +58 -2
  124. package/lib/clang/{20 → 22}/include/sm4evexintrin.h +2 -2
  125. package/lib/clang/{20 → 22}/include/smmintrin.h +77 -59
  126. package/lib/clang/22/include/spirvintrin.h +194 -0
  127. package/lib/clang/22/include/stdcountof.h +15 -0
  128. package/lib/clang/22/include/stddefer.h +19 -0
  129. package/lib/clang/{20 → 22}/include/stdint.h +18 -129
  130. package/lib/clang/{20 → 22}/include/tmmintrin.h +116 -147
  131. package/lib/clang/{20 → 22}/include/vaesintrin.h +1 -2
  132. package/lib/clang/{20 → 22}/include/vecintrin.h +5 -0
  133. package/lib/clang/{20 → 22}/include/x86gprintrin.h +0 -14
  134. package/lib/clang/{20 → 22}/include/x86intrin.h +0 -18
  135. package/lib/clang/{20 → 22}/include/xmmintrin.h +47 -72
  136. package/lib/clang/{20 → 22}/include/xopintrin.h +20 -10
  137. package/package.json +6 -6
  138. package/lib/clang/20/include/__clang_cuda_complex_builtins.h +0 -285
  139. package/lib/clang/20/include/amxbf16transposeintrin.h +0 -94
  140. package/lib/clang/20/include/amxcomplextransposeintrin.h +0 -303
  141. package/lib/clang/20/include/amxfp16transposeintrin.h +0 -94
  142. package/lib/clang/20/include/amxmovrstransposeintrin.h +0 -200
  143. package/lib/clang/20/include/amxtf32transposeintrin.h +0 -105
  144. package/lib/clang/20/include/amxtransposeintrin.h +0 -248
  145. package/lib/clang/20/include/avx10_2convertintrin.h +0 -589
  146. package/lib/clang/20/include/avx10_2niintrin.h +0 -2075
  147. package/lib/clang/20/include/avx10_2satcvtdsintrin.h +0 -496
  148. package/lib/clang/20/include/avx10_2satcvtintrin.h +0 -444
  149. package/lib/clang/20/include/avx512cdintrin.h +0 -125
  150. package/lib/clang/20/include/avx512ifmaintrin.h +0 -70
  151. package/lib/clang/20/include/avx512ifmavlintrin.h +0 -111
  152. package/lib/clang/20/include/avx512vlcdintrin.h +0 -230
  153. package/lib/clang/20/include/fma4intrin.h +0 -218
  154. package/lib/clang/20/include/hlsl/hlsl_basic_types.h +0 -120
  155. package/lib/clang/20/include/hlsl/hlsl_detail.h +0 -84
  156. package/lib/clang/20/include/llvm_libc_wrappers/ctype.h +0 -140
  157. package/lib/clang/20/include/llvm_libc_wrappers/stdio.h +0 -80
  158. package/lib/clang/20/include/llvm_libc_wrappers/stdlib.h +0 -53
  159. package/lib/clang/20/include/llvm_libc_wrappers/string.h +0 -96
  160. /package/lib/clang/{20 → 22}/include/__clang_cuda_builtin_vars.h +0 -0
  161. /package/lib/clang/{20 → 22}/include/__clang_cuda_cmath.h +0 -0
  162. /package/lib/clang/{20 → 22}/include/__clang_cuda_libdevice_declares.h +0 -0
  163. /package/lib/clang/{20 → 22}/include/__clang_cuda_math.h +0 -0
  164. /package/lib/clang/{20 → 22}/include/__clang_cuda_math_forward_declares.h +0 -0
  165. /package/lib/clang/{20 → 22}/include/__clang_hip_stdlib.h +0 -0
  166. /package/lib/clang/{20 → 22}/include/__stdarg___gnuc_va_list.h +0 -0
  167. /package/lib/clang/{20 → 22}/include/__stdarg___va_copy.h +0 -0
  168. /package/lib/clang/{20 → 22}/include/__stdarg_header_macro.h +0 -0
  169. /package/lib/clang/{20 → 22}/include/__stdarg_va_copy.h +0 -0
  170. /package/lib/clang/{20 → 22}/include/__stdarg_va_list.h +0 -0
  171. /package/lib/clang/{20 → 22}/include/__stddef_header_macro.h +0 -0
  172. /package/lib/clang/{20 → 22}/include/__stddef_max_align_t.h +0 -0
  173. /package/lib/clang/{20 → 22}/include/__stddef_null.h +0 -0
  174. /package/lib/clang/{20 → 22}/include/__stddef_nullptr_t.h +0 -0
  175. /package/lib/clang/{20 → 22}/include/__stddef_offsetof.h +0 -0
  176. /package/lib/clang/{20 → 22}/include/__stddef_ptrdiff_t.h +0 -0
  177. /package/lib/clang/{20 → 22}/include/__stddef_rsize_t.h +0 -0
  178. /package/lib/clang/{20 → 22}/include/__stddef_size_t.h +0 -0
  179. /package/lib/clang/{20 → 22}/include/__stddef_unreachable.h +0 -0
  180. /package/lib/clang/{20 → 22}/include/__stddef_wchar_t.h +0 -0
  181. /package/lib/clang/{20 → 22}/include/__stddef_wint_t.h +0 -0
  182. /package/lib/clang/{20 → 22}/include/__wmmintrin_aes.h +0 -0
  183. /package/lib/clang/{20 → 22}/include/__wmmintrin_pclmul.h +0 -0
  184. /package/lib/clang/{20 → 22}/include/adcintrin.h +0 -0
  185. /package/lib/clang/{20 → 22}/include/adxintrin.h +0 -0
  186. /package/lib/clang/{20 → 22}/include/ammintrin.h +0 -0
  187. /package/lib/clang/{20 → 22}/include/amxfp16intrin.h +0 -0
  188. /package/lib/clang/{20 → 22}/include/amxfp8intrin.h +0 -0
  189. /package/lib/clang/{20 → 22}/include/amxmovrsintrin.h +0 -0
  190. /package/lib/clang/{20 → 22}/include/amxtf32intrin.h +0 -0
  191. /package/lib/clang/{20 → 22}/include/arm64intr.h +0 -0
  192. /package/lib/clang/{20 → 22}/include/arm_bf16.h +0 -0
  193. /package/lib/clang/{20 → 22}/include/arm_cde.h +0 -0
  194. /package/lib/clang/{20 → 22}/include/arm_cmse.h +0 -0
  195. /package/lib/clang/{20 → 22}/include/arm_mve.h +0 -0
  196. /package/lib/clang/{20 → 22}/include/arm_neon_sve_bridge.h +0 -0
  197. /package/lib/clang/{20 → 22}/include/arm_vector_types.h +0 -0
  198. /package/lib/clang/{20 → 22}/include/armintr.h +0 -0
  199. /package/lib/clang/{20 → 22}/include/avx10_2_512minmaxintrin.h +0 -0
  200. /package/lib/clang/{20 → 22}/include/avxneconvertintrin.h +0 -0
  201. /package/lib/clang/{20 → 22}/include/bmi2intrin.h +0 -0
  202. /package/lib/clang/{20 → 22}/include/builtins.h +0 -0
  203. /package/lib/clang/{20 → 22}/include/cet.h +0 -0
  204. /package/lib/clang/{20 → 22}/include/cetintrin.h +0 -0
  205. /package/lib/clang/{20 → 22}/include/cldemoteintrin.h +0 -0
  206. /package/lib/clang/{20 → 22}/include/clflushoptintrin.h +0 -0
  207. /package/lib/clang/{20 → 22}/include/clwbintrin.h +0 -0
  208. /package/lib/clang/{20 → 22}/include/clzerointrin.h +0 -0
  209. /package/lib/clang/{20 → 22}/include/cmpccxaddintrin.h +0 -0
  210. /package/lib/clang/{20 → 22}/include/crc32intrin.h +0 -0
  211. /package/lib/clang/{20 → 22}/include/cuda_wrappers/algorithm +0 -0
  212. /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/basic_string.h +0 -0
  213. /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  214. /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  215. /package/lib/clang/{20 → 22}/include/cuda_wrappers/complex +0 -0
  216. /package/lib/clang/{20 → 22}/include/cuda_wrappers/new +0 -0
  217. /package/lib/clang/{20 → 22}/include/enqcmdintrin.h +0 -0
  218. /package/lib/clang/{20 → 22}/include/fxsrintrin.h +0 -0
  219. /package/lib/clang/{20 → 22}/include/hexagon_circ_brev_intrinsics.h +0 -0
  220. /package/lib/clang/{20 → 22}/include/hexagon_protos.h +0 -0
  221. /package/lib/clang/{20 → 22}/include/hresetintrin.h +0 -0
  222. /package/lib/clang/{20 → 22}/include/htmintrin.h +0 -0
  223. /package/lib/clang/{20 → 22}/include/htmxlintrin.h +0 -0
  224. /package/lib/clang/{20 → 22}/include/ia32intrin.h +0 -0
  225. /package/lib/clang/{20 → 22}/include/intrin0.h +0 -0
  226. /package/lib/clang/{20 → 22}/include/inttypes.h +0 -0
  227. /package/lib/clang/{20 → 22}/include/invpcidintrin.h +0 -0
  228. /package/lib/clang/{20 → 22}/include/iso646.h +0 -0
  229. /package/lib/clang/{20 → 22}/include/larchintrin.h +0 -0
  230. /package/lib/clang/{20 → 22}/include/limits.h +0 -0
  231. /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
  232. /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
  233. /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
  234. /package/lib/clang/{20 → 22}/include/lsxintrin.h +0 -0
  235. /package/lib/clang/{20 → 22}/include/lwpintrin.h +0 -0
  236. /package/lib/clang/{20 → 22}/include/mm3dnow.h +0 -0
  237. /package/lib/clang/{20 → 22}/include/mm_malloc.h +0 -0
  238. /package/lib/clang/{20 → 22}/include/movdirintrin.h +0 -0
  239. /package/lib/clang/{20 → 22}/include/msa.h +0 -0
  240. /package/lib/clang/{20 → 22}/include/mwaitxintrin.h +0 -0
  241. /package/lib/clang/{20 → 22}/include/nmmintrin.h +0 -0
  242. /package/lib/clang/{20 → 22}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  243. /package/lib/clang/{20 → 22}/include/openmp_wrappers/cmath +0 -0
  244. /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex +0 -0
  245. /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex.h +0 -0
  246. /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex_cmath.h +0 -0
  247. /package/lib/clang/{20 → 22}/include/openmp_wrappers/math.h +0 -0
  248. /package/lib/clang/{20 → 22}/include/openmp_wrappers/new +0 -0
  249. /package/lib/clang/{20 → 22}/include/pconfigintrin.h +0 -0
  250. /package/lib/clang/{20 → 22}/include/pkuintrin.h +0 -0
  251. /package/lib/clang/{20 → 22}/include/popcntintrin.h +0 -0
  252. /package/lib/clang/{20 → 22}/include/ppc_wrappers/bmi2intrin.h +0 -0
  253. /package/lib/clang/{20 → 22}/include/ppc_wrappers/bmiintrin.h +0 -0
  254. /package/lib/clang/{20 → 22}/include/ppc_wrappers/emmintrin.h +0 -0
  255. /package/lib/clang/{20 → 22}/include/ppc_wrappers/immintrin.h +0 -0
  256. /package/lib/clang/{20 → 22}/include/ppc_wrappers/mm_malloc.h +0 -0
  257. /package/lib/clang/{20 → 22}/include/ppc_wrappers/mmintrin.h +0 -0
  258. /package/lib/clang/{20 → 22}/include/ppc_wrappers/nmmintrin.h +0 -0
  259. /package/lib/clang/{20 → 22}/include/ppc_wrappers/pmmintrin.h +0 -0
  260. /package/lib/clang/{20 → 22}/include/ppc_wrappers/smmintrin.h +0 -0
  261. /package/lib/clang/{20 → 22}/include/ppc_wrappers/tmmintrin.h +0 -0
  262. /package/lib/clang/{20 → 22}/include/ppc_wrappers/x86gprintrin.h +0 -0
  263. /package/lib/clang/{20 → 22}/include/ppc_wrappers/x86intrin.h +0 -0
  264. /package/lib/clang/{20 → 22}/include/ppc_wrappers/xmmintrin.h +0 -0
  265. /package/lib/clang/{20 → 22}/include/prfchiintrin.h +0 -0
  266. /package/lib/clang/{20 → 22}/include/ptwriteintrin.h +0 -0
  267. /package/lib/clang/{20 → 22}/include/raointintrin.h +0 -0
  268. /package/lib/clang/{20 → 22}/include/rdpruintrin.h +0 -0
  269. /package/lib/clang/{20 → 22}/include/rdseedintrin.h +0 -0
  270. /package/lib/clang/{20 → 22}/include/riscv_bitmanip.h +0 -0
  271. /package/lib/clang/{20 → 22}/include/riscv_crypto.h +0 -0
  272. /package/lib/clang/{20 → 22}/include/riscv_ntlh.h +0 -0
  273. /package/lib/clang/{20 → 22}/include/rtmintrin.h +0 -0
  274. /package/lib/clang/{20 → 22}/include/s390intrin.h +0 -0
  275. /package/lib/clang/{20 → 22}/include/serializeintrin.h +0 -0
  276. /package/lib/clang/{20 → 22}/include/sgxintrin.h +0 -0
  277. /package/lib/clang/{20 → 22}/include/sha512intrin.h +0 -0
  278. /package/lib/clang/{20 → 22}/include/sm3intrin.h +0 -0
  279. /package/lib/clang/{20 → 22}/include/sm4intrin.h +0 -0
  280. /package/lib/clang/{20 → 22}/include/stdalign.h +0 -0
  281. /package/lib/clang/{20 → 22}/include/stdarg.h +0 -0
  282. /package/lib/clang/{20 → 22}/include/stdatomic.h +0 -0
  283. /package/lib/clang/{20 → 22}/include/stdbool.h +0 -0
  284. /package/lib/clang/{20 → 22}/include/stdckdint.h +0 -0
  285. /package/lib/clang/{20 → 22}/include/stddef.h +0 -0
  286. /package/lib/clang/{20 → 22}/include/stdnoreturn.h +0 -0
  287. /package/lib/clang/{20 → 22}/include/tbmintrin.h +0 -0
  288. /package/lib/clang/{20 → 22}/include/tgmath.h +0 -0
  289. /package/lib/clang/{20 → 22}/include/tsxldtrkintrin.h +0 -0
  290. /package/lib/clang/{20 → 22}/include/uintrintrin.h +0 -0
  291. /package/lib/clang/{20 → 22}/include/unwind.h +0 -0
  292. /package/lib/clang/{20 → 22}/include/usermsrintrin.h +0 -0
  293. /package/lib/clang/{20 → 22}/include/vadefs.h +0 -0
  294. /package/lib/clang/{20 → 22}/include/varargs.h +0 -0
  295. /package/lib/clang/{20 → 22}/include/velintrin.h +0 -0
  296. /package/lib/clang/{20 → 22}/include/velintrin_approx.h +0 -0
  297. /package/lib/clang/{20 → 22}/include/velintrin_gen.h +0 -0
  298. /package/lib/clang/{20 → 22}/include/vpclmulqdqintrin.h +0 -0
  299. /package/lib/clang/{20 → 22}/include/waitpkgintrin.h +0 -0
  300. /package/lib/clang/{20 → 22}/include/wasm_simd128.h +0 -0
  301. /package/lib/clang/{20 → 22}/include/wbnoinvdintrin.h +0 -0
  302. /package/lib/clang/{20 → 22}/include/wmmintrin.h +0 -0
  303. /package/lib/clang/{20 → 22}/include/xsavecintrin.h +0 -0
  304. /package/lib/clang/{20 → 22}/include/xsaveintrin.h +0 -0
  305. /package/lib/clang/{20 → 22}/include/xsaveoptintrin.h +0 -0
  306. /package/lib/clang/{20 → 22}/include/xsavesintrin.h +0 -0
  307. /package/lib/clang/{20 → 22}/include/xtestintrin.h +0 -0
  308. /package/lib/clang/{20 → 22}/include/yvals_core.h +0 -0
  309. /package/lib/clang/{20 → 22}/include/zos_wrappers/builtins.h +0 -0
@@ -22,26 +22,36 @@ typedef _Float16 __m512h_u __attribute__((__vector_size__(64), __aligned__(1)));
22
22
 
23
23
  /* Define the default attributes for the functions in this file. */
24
24
  #define __DEFAULT_FN_ATTRS512 \
25
- __attribute__((__always_inline__, __nodebug__, \
26
- __target__("avx512fp16,evex512"), __min_vector_width__(512)))
25
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \
26
+ __min_vector_width__(512)))
27
27
  #define __DEFAULT_FN_ATTRS256 \
28
- __attribute__((__always_inline__, __nodebug__, \
29
- __target__("avx512fp16,no-evex512"), \
28
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \
30
29
  __min_vector_width__(256)))
31
30
  #define __DEFAULT_FN_ATTRS128 \
32
- __attribute__((__always_inline__, __nodebug__, \
33
- __target__("avx512fp16,no-evex512"), \
31
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \
34
32
  __min_vector_width__(128)))
35
33
 
36
- static __inline__ _Float16 __DEFAULT_FN_ATTRS512 _mm512_cvtsh_h(__m512h __a) {
34
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
35
+ #define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512 constexpr
36
+ #define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256 constexpr
37
+ #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
38
+ #else
39
+ #define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512
40
+ #define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256
41
+ #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
42
+ #endif
43
+
44
+ static __inline__ _Float16 __DEFAULT_FN_ATTRS512_CONSTEXPR
45
+ _mm512_cvtsh_h(__m512h __a) {
37
46
  return __a[0];
38
47
  }
39
48
 
40
- static __inline __m128h __DEFAULT_FN_ATTRS128 _mm_setzero_ph(void) {
49
+ static __inline __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_setzero_ph(void) {
41
50
  return (__m128h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
42
51
  }
43
52
 
44
- static __inline __m256h __DEFAULT_FN_ATTRS256 _mm256_setzero_ph(void) {
53
+ static __inline __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
54
+ _mm256_setzero_ph(void) {
45
55
  return (__m256h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
46
56
  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
47
57
  }
@@ -50,7 +60,8 @@ static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_undefined_ph(void) {
50
60
  return (__m256h)__builtin_ia32_undef256();
51
61
  }
52
62
 
53
- static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_setzero_ph(void) {
63
+ static __inline __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
64
+ _mm512_setzero_ph(void) {
54
65
  return (__m512h){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
55
66
  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
56
67
  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
@@ -64,14 +75,15 @@ static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_undefined_ph(void) {
64
75
  return (__m512h)__builtin_ia32_undef512();
65
76
  }
66
77
 
67
- static __inline __m512h __DEFAULT_FN_ATTRS512 _mm512_set1_ph(_Float16 __h) {
78
+ static __inline __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
79
+ _mm512_set1_ph(_Float16 __h) {
68
80
  return (__m512h)(__v32hf){__h, __h, __h, __h, __h, __h, __h, __h,
69
81
  __h, __h, __h, __h, __h, __h, __h, __h,
70
82
  __h, __h, __h, __h, __h, __h, __h, __h,
71
83
  __h, __h, __h, __h, __h, __h, __h, __h};
72
84
  }
73
85
 
74
- static __inline __m512h __DEFAULT_FN_ATTRS512
86
+ static __inline __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
75
87
  _mm512_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4,
76
88
  _Float16 __h5, _Float16 __h6, _Float16 __h7, _Float16 __h8,
77
89
  _Float16 __h9, _Float16 __h10, _Float16 __h11, _Float16 __h12,
@@ -87,106 +99,111 @@ _mm512_set_ph(_Float16 __h1, _Float16 __h2, _Float16 __h3, _Float16 __h4,
87
99
  __h4, __h3, __h2, __h1};
88
100
  }
89
101
 
90
- #define _mm512_setr_ph(h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13, \
91
- h14, h15, h16, h17, h18, h19, h20, h21, h22, h23, h24, \
92
- h25, h26, h27, h28, h29, h30, h31, h32) \
93
- _mm512_set_ph((h32), (h31), (h30), (h29), (h28), (h27), (h26), (h25), (h24), \
94
- (h23), (h22), (h21), (h20), (h19), (h18), (h17), (h16), (h15), \
95
- (h14), (h13), (h12), (h11), (h10), (h9), (h8), (h7), (h6), \
96
- (h5), (h4), (h3), (h2), (h1))
102
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_setr_ph(
103
+ _Float16 e0, _Float16 e1, _Float16 e2, _Float16 e3, _Float16 e4,
104
+ _Float16 e5, _Float16 e6, _Float16 e7, _Float16 e8, _Float16 e9,
105
+ _Float16 e10, _Float16 e11, _Float16 e12, _Float16 e13, _Float16 e14,
106
+ _Float16 e15, _Float16 e16, _Float16 e17, _Float16 e18, _Float16 e19,
107
+ _Float16 e20, _Float16 e21, _Float16 e22, _Float16 e23, _Float16 e24,
108
+ _Float16 e25, _Float16 e26, _Float16 e27, _Float16 e28, _Float16 e29,
109
+ _Float16 e30, _Float16 e31) {
110
+ return _mm512_set_ph(e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21,
111
+ e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10,
112
+ e9, e8, e7, e6, e5, e4, e3, e2, e1, e0);
113
+ }
97
114
 
98
- static __inline __m512h __DEFAULT_FN_ATTRS512
115
+ static __inline __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
99
116
  _mm512_set1_pch(_Float16 _Complex __h) {
100
117
  return (__m512h)_mm512_set1_ps(__builtin_bit_cast(float, __h));
101
118
  }
102
119
 
103
- static __inline__ __m128 __DEFAULT_FN_ATTRS128 _mm_castph_ps(__m128h __a) {
120
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castph_ps(__m128h __a) {
104
121
  return (__m128)__a;
105
122
  }
106
123
 
107
- static __inline__ __m256 __DEFAULT_FN_ATTRS256 _mm256_castph_ps(__m256h __a) {
124
+ static __inline__ __m256 __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_castph_ps(__m256h __a) {
108
125
  return (__m256)__a;
109
126
  }
110
127
 
111
- static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_castph_ps(__m512h __a) {
128
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_castph_ps(__m512h __a) {
112
129
  return (__m512)__a;
113
130
  }
114
131
 
115
- static __inline__ __m128d __DEFAULT_FN_ATTRS128 _mm_castph_pd(__m128h __a) {
132
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castph_pd(__m128h __a) {
116
133
  return (__m128d)__a;
117
134
  }
118
135
 
119
- static __inline__ __m256d __DEFAULT_FN_ATTRS256 _mm256_castph_pd(__m256h __a) {
136
+ static __inline__ __m256d __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_castph_pd(__m256h __a) {
120
137
  return (__m256d)__a;
121
138
  }
122
139
 
123
- static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_castph_pd(__m512h __a) {
140
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_castph_pd(__m512h __a) {
124
141
  return (__m512d)__a;
125
142
  }
126
143
 
127
- static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_castph_si128(__m128h __a) {
144
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castph_si128(__m128h __a) {
128
145
  return (__m128i)__a;
129
146
  }
130
147
 
131
- static __inline__ __m256i __DEFAULT_FN_ATTRS256
148
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
132
149
  _mm256_castph_si256(__m256h __a) {
133
150
  return (__m256i)__a;
134
151
  }
135
152
 
136
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
153
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
137
154
  _mm512_castph_si512(__m512h __a) {
138
155
  return (__m512i)__a;
139
156
  }
140
157
 
141
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castps_ph(__m128 __a) {
158
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castps_ph(__m128 __a) {
142
159
  return (__m128h)__a;
143
160
  }
144
161
 
145
- static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castps_ph(__m256 __a) {
162
+ static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_castps_ph(__m256 __a) {
146
163
  return (__m256h)__a;
147
164
  }
148
165
 
149
- static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castps_ph(__m512 __a) {
166
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_castps_ph(__m512 __a) {
150
167
  return (__m512h)__a;
151
168
  }
152
169
 
153
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castpd_ph(__m128d __a) {
170
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castpd_ph(__m128d __a) {
154
171
  return (__m128h)__a;
155
172
  }
156
173
 
157
- static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_castpd_ph(__m256d __a) {
174
+ static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_castpd_ph(__m256d __a) {
158
175
  return (__m256h)__a;
159
176
  }
160
177
 
161
- static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_castpd_ph(__m512d __a) {
178
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_castpd_ph(__m512d __a) {
162
179
  return (__m512h)__a;
163
180
  }
164
181
 
165
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_castsi128_ph(__m128i __a) {
182
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_castsi128_ph(__m128i __a) {
166
183
  return (__m128h)__a;
167
184
  }
168
185
 
169
- static __inline__ __m256h __DEFAULT_FN_ATTRS256
186
+ static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
170
187
  _mm256_castsi256_ph(__m256i __a) {
171
188
  return (__m256h)__a;
172
189
  }
173
190
 
174
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
191
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
175
192
  _mm512_castsi512_ph(__m512i __a) {
176
193
  return (__m512h)__a;
177
194
  }
178
195
 
179
- static __inline__ __m128h __DEFAULT_FN_ATTRS256
196
+ static __inline__ __m128h __DEFAULT_FN_ATTRS256_CONSTEXPR
180
197
  _mm256_castph256_ph128(__m256h __a) {
181
198
  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7);
182
199
  }
183
200
 
184
- static __inline__ __m128h __DEFAULT_FN_ATTRS512
201
+ static __inline__ __m128h __DEFAULT_FN_ATTRS512_CONSTEXPR
185
202
  _mm512_castph512_ph128(__m512h __a) {
186
203
  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7);
187
204
  }
188
205
 
189
- static __inline__ __m256h __DEFAULT_FN_ATTRS512
206
+ static __inline__ __m256h __DEFAULT_FN_ATTRS512_CONSTEXPR
190
207
  _mm512_castph512_ph256(__m512h __a) {
191
208
  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
192
209
  12, 13, 14, 15);
@@ -229,7 +246,7 @@ _mm512_castph256_ph512(__m256h __a) {
229
246
  /// A 128-bit vector of [8 x half].
230
247
  /// \returns A 512-bit floating-point vector of [16 x half]. The lower 128 bits
231
248
  /// contain the value of the parameter. The upper 384 bits are set to zero.
232
- static __inline__ __m256h __DEFAULT_FN_ATTRS256
249
+ static __inline__ __m256h __DEFAULT_FN_ATTRS256_CONSTEXPR
233
250
  _mm256_zextph128_ph256(__m128h __a) {
234
251
  return __builtin_shufflevector(__a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4,
235
252
  5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
@@ -248,7 +265,7 @@ _mm256_zextph128_ph256(__m128h __a) {
248
265
  /// A 128-bit vector of [8 x half].
249
266
  /// \returns A 512-bit floating-point vector of [32 x half]. The lower 128 bits
250
267
  /// contain the value of the parameter. The upper 384 bits are set to zero.
251
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
268
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
252
269
  _mm512_zextph128_ph512(__m128h __a) {
253
270
  return __builtin_shufflevector(
254
271
  __a, (__v8hf)_mm_setzero_ph(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
@@ -268,7 +285,7 @@ _mm512_zextph128_ph512(__m128h __a) {
268
285
  /// A 256-bit vector of [16 x half].
269
286
  /// \returns A 512-bit floating-point vector of [32 x half]. The lower 256 bits
270
287
  /// contain the value of the parameter. The upper 256 bits are set to zero.
271
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
288
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
272
289
  _mm512_zextph256_ph512(__m256h __a) {
273
290
  return __builtin_shufflevector(__a, (__v16hf)_mm256_setzero_ph(), 0, 1, 2, 3,
274
291
  4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
@@ -482,19 +499,19 @@ _mm512_maskz_div_ph(__mmask32 __U, __m512h __A, __m512h __B) {
482
499
  (__mmask32)(U), (__v32hf)_mm512_div_round_ph((A), (B), (R)), \
483
500
  (__v32hf)_mm512_setzero_ph()))
484
501
 
485
- static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_min_ph(__m512h __A,
486
- __m512h __B) {
502
+ static __inline__ __m512h
503
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_ph(__m512h __A, __m512h __B) {
487
504
  return (__m512h)__builtin_ia32_minph512((__v32hf)__A, (__v32hf)__B,
488
505
  _MM_FROUND_CUR_DIRECTION);
489
506
  }
490
507
 
491
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
508
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
492
509
  _mm512_mask_min_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) {
493
510
  return (__m512h)__builtin_ia32_selectph_512(
494
511
  (__mmask32)__U, (__v32hf)_mm512_min_ph(__A, __B), (__v32hf)__W);
495
512
  }
496
513
 
497
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
514
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
498
515
  _mm512_maskz_min_ph(__mmask32 __U, __m512h __A, __m512h __B) {
499
516
  return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U,
500
517
  (__v32hf)_mm512_min_ph(__A, __B),
@@ -515,19 +532,19 @@ _mm512_maskz_min_ph(__mmask32 __U, __m512h __A, __m512h __B) {
515
532
  (__mmask32)(U), (__v32hf)_mm512_min_round_ph((A), (B), (R)), \
516
533
  (__v32hf)_mm512_setzero_ph()))
517
534
 
518
- static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_max_ph(__m512h __A,
519
- __m512h __B) {
535
+ static __inline__ __m512h
536
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_ph(__m512h __A, __m512h __B) {
520
537
  return (__m512h)__builtin_ia32_maxph512((__v32hf)__A, (__v32hf)__B,
521
538
  _MM_FROUND_CUR_DIRECTION);
522
539
  }
523
540
 
524
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
541
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
525
542
  _mm512_mask_max_ph(__m512h __W, __mmask32 __U, __m512h __A, __m512h __B) {
526
543
  return (__m512h)__builtin_ia32_selectph_512(
527
544
  (__mmask32)__U, (__v32hf)_mm512_max_ph(__A, __B), (__v32hf)__W);
528
545
  }
529
546
 
530
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
547
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
531
548
  _mm512_maskz_max_ph(__mmask32 __U, __m512h __A, __m512h __B) {
532
549
  return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U,
533
550
  (__v32hf)_mm512_max_ph(__A, __B),
@@ -548,12 +565,14 @@ _mm512_maskz_max_ph(__mmask32 __U, __m512h __A, __m512h __B) {
548
565
  (__mmask32)(U), (__v32hf)_mm512_max_round_ph((A), (B), (R)), \
549
566
  (__v32hf)_mm512_setzero_ph()))
550
567
 
551
- static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_abs_ph(__m512h __A) {
568
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
569
+ _mm512_abs_ph(__m512h __A) {
552
570
  return (__m512h)_mm512_and_epi32(_mm512_set1_epi32(0x7FFF7FFF), (__m512i)__A);
553
571
  }
554
572
 
555
573
  static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_conj_pch(__m512h __A) {
556
- return (__m512h)_mm512_xor_ps((__m512)__A, _mm512_set1_ps(-0.0f));
574
+ return (__m512h)_mm512_xor_epi32((__m512i)__A,
575
+ _mm512_set1_epi32(-2147483648));
557
576
  }
558
577
 
559
578
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
@@ -569,23 +588,20 @@ _mm512_maskz_conj_pch(__mmask16 __U, __m512h __A) {
569
588
  (__v16sf)_mm512_setzero_ps());
570
589
  }
571
590
 
572
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_add_sh(__m128h __A,
573
- __m128h __B) {
591
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
592
+ _mm_add_sh(__m128h __A, __m128h __B) {
574
593
  __A[0] += __B[0];
575
594
  return __A;
576
595
  }
577
596
 
578
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_add_sh(__m128h __W,
579
- __mmask8 __U,
580
- __m128h __A,
581
- __m128h __B) {
597
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
598
+ _mm_mask_add_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
582
599
  __A = _mm_add_sh(__A, __B);
583
600
  return __builtin_ia32_selectsh_128(__U, __A, __W);
584
601
  }
585
602
 
586
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_sh(__mmask8 __U,
587
- __m128h __A,
588
- __m128h __B) {
603
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
604
+ _mm_maskz_add_sh(__mmask8 __U, __m128h __A, __m128h __B) {
589
605
  __A = _mm_add_sh(__A, __B);
590
606
  return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph());
591
607
  }
@@ -605,23 +621,20 @@ static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_add_sh(__mmask8 __U,
605
621
  (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \
606
622
  (__mmask8)(U), (int)(R)))
607
623
 
608
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_sub_sh(__m128h __A,
609
- __m128h __B) {
624
+ static __inline__ __m128h
625
+ __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_sub_sh(__m128h __A, __m128h __B) {
610
626
  __A[0] -= __B[0];
611
627
  return __A;
612
628
  }
613
629
 
614
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_sub_sh(__m128h __W,
615
- __mmask8 __U,
616
- __m128h __A,
617
- __m128h __B) {
630
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
631
+ _mm_mask_sub_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
618
632
  __A = _mm_sub_sh(__A, __B);
619
633
  return __builtin_ia32_selectsh_128(__U, __A, __W);
620
634
  }
621
635
 
622
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_sh(__mmask8 __U,
623
- __m128h __A,
624
- __m128h __B) {
636
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
637
+ _mm_maskz_sub_sh(__mmask8 __U, __m128h __A, __m128h __B) {
625
638
  __A = _mm_sub_sh(__A, __B);
626
639
  return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph());
627
640
  }
@@ -641,23 +654,20 @@ static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_sub_sh(__mmask8 __U,
641
654
  (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \
642
655
  (__mmask8)(U), (int)(R)))
643
656
 
644
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mul_sh(__m128h __A,
645
- __m128h __B) {
657
+ static __inline__ __m128h
658
+ __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mul_sh(__m128h __A, __m128h __B) {
646
659
  __A[0] *= __B[0];
647
660
  return __A;
648
661
  }
649
662
 
650
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_mul_sh(__m128h __W,
651
- __mmask8 __U,
652
- __m128h __A,
653
- __m128h __B) {
663
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
664
+ _mm_mask_mul_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
654
665
  __A = _mm_mul_sh(__A, __B);
655
666
  return __builtin_ia32_selectsh_128(__U, __A, __W);
656
667
  }
657
668
 
658
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_sh(__mmask8 __U,
659
- __m128h __A,
660
- __m128h __B) {
669
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
670
+ _mm_maskz_mul_sh(__mmask8 __U, __m128h __A, __m128h __B) {
661
671
  __A = _mm_mul_sh(__A, __B);
662
672
  return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph());
663
673
  }
@@ -677,23 +687,20 @@ static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_mul_sh(__mmask8 __U,
677
687
  (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \
678
688
  (__mmask8)(U), (int)(R)))
679
689
 
680
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_div_sh(__m128h __A,
681
- __m128h __B) {
690
+ static __inline__ __m128h
691
+ __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_div_sh(__m128h __A, __m128h __B) {
682
692
  __A[0] /= __B[0];
683
693
  return __A;
684
694
  }
685
695
 
686
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_div_sh(__m128h __W,
687
- __mmask8 __U,
688
- __m128h __A,
689
- __m128h __B) {
696
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
697
+ _mm_mask_div_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
690
698
  __A = _mm_div_sh(__A, __B);
691
699
  return __builtin_ia32_selectsh_128(__U, __A, __W);
692
700
  }
693
701
 
694
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_sh(__mmask8 __U,
695
- __m128h __A,
696
- __m128h __B) {
702
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
703
+ _mm_maskz_div_sh(__mmask8 __U, __m128h __A, __m128h __B) {
697
704
  __A = _mm_div_sh(__A, __B);
698
705
  return __builtin_ia32_selectsh_128(__U, __A, _mm_setzero_ph());
699
706
  }
@@ -941,22 +948,19 @@ static __inline__ void __DEFAULT_FN_ATTRS128 _mm_storeu_ph(void *__P,
941
948
  }
942
949
 
943
950
  // moves with vmovsh:
944
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_move_sh(__m128h __a,
945
- __m128h __b) {
951
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
952
+ _mm_move_sh(__m128h __a, __m128h __b) {
946
953
  __a[0] = __b[0];
947
954
  return __a;
948
955
  }
949
956
 
950
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_move_sh(__m128h __W,
951
- __mmask8 __U,
952
- __m128h __A,
953
- __m128h __B) {
957
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
958
+ _mm_mask_move_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
954
959
  return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), __W);
955
960
  }
956
961
 
957
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_move_sh(__mmask8 __U,
958
- __m128h __A,
959
- __m128h __B) {
962
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
963
+ _mm_maskz_move_sh(__mmask8 __U, __m128h __A, __m128h __B) {
960
964
  return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B),
961
965
  _mm_setzero_ph());
962
966
  }
@@ -1382,24 +1386,20 @@ _mm_maskz_scalef_sh(__mmask8 __U, __m128h __A, __m128h __B) {
1382
1386
  (__v32hf)_mm512_setzero_ph()))
1383
1387
 
1384
1388
  static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sqrt_ph(__m512h __A) {
1385
- return (__m512h)__builtin_ia32_sqrtph512((__v32hf)__A,
1386
- _MM_FROUND_CUR_DIRECTION);
1389
+ return (__m512h)__builtin_elementwise_sqrt((__v32hf)__A);
1387
1390
  }
1388
1391
 
1389
1392
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
1390
1393
  _mm512_mask_sqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) {
1391
1394
  return (__m512h)__builtin_ia32_selectph_512(
1392
- (__mmask32)(__U),
1393
- (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)),
1394
- (__v32hf)(__m512h)(__W));
1395
+ (__mmask32)(__U), (__v32hf)_mm512_sqrt_ph(__A), (__v32hf)(__m512h)(__W));
1395
1396
  }
1396
1397
 
1397
1398
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
1398
1399
  _mm512_maskz_sqrt_ph(__mmask32 __U, __m512h __A) {
1399
- return (__m512h)__builtin_ia32_selectph_512(
1400
- (__mmask32)(__U),
1401
- (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)),
1402
- (__v32hf)_mm512_setzero_ph());
1400
+ return (__m512h)__builtin_ia32_selectph_512((__mmask32)(__U),
1401
+ (__v32hf)_mm512_sqrt_ph(__A),
1402
+ (__v32hf)_mm512_setzero_ph());
1403
1403
  }
1404
1404
 
1405
1405
  #define _mm_sqrt_round_sh(A, B, R) \
@@ -3291,19 +3291,19 @@ _mm512_reduce_min_ph(__m512h __V) {
3291
3291
  return __builtin_ia32_reduce_fmin_ph512(__V);
3292
3292
  }
3293
3293
 
3294
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3294
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3295
3295
  _mm512_mask_blend_ph(__mmask32 __U, __m512h __A, __m512h __W) {
3296
3296
  return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, (__v32hf)__W,
3297
3297
  (__v32hf)__A);
3298
3298
  }
3299
3299
 
3300
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3300
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3301
3301
  _mm512_permutex2var_ph(__m512h __A, __m512i __I, __m512h __B) {
3302
3302
  return (__m512h)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I,
3303
3303
  (__v32hi)__B);
3304
3304
  }
3305
3305
 
3306
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3306
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3307
3307
  _mm512_permutexvar_ph(__m512i __A, __m512h __B) {
3308
3308
  return (__m512h)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A);
3309
3309
  }
@@ -3347,6 +3347,9 @@ _mm512_permutexvar_ph(__m512i __A, __m512h __B) {
3347
3347
  #undef __DEFAULT_FN_ATTRS128
3348
3348
  #undef __DEFAULT_FN_ATTRS256
3349
3349
  #undef __DEFAULT_FN_ATTRS512
3350
+ #undef __DEFAULT_FN_ATTRS128_CONSTEXPR
3351
+ #undef __DEFAULT_FN_ATTRS256_CONSTEXPR
3352
+ #undef __DEFAULT_FN_ATTRS512_CONSTEXPR
3350
3353
 
3351
3354
  #endif
3352
3355
  #endif
@@ -0,0 +1,68 @@
1
+ /*===------------- avx512ifmaintrin.h - IFMA intrinsics ------------------===
2
+ *
3
+ *
4
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5
+ * See https://llvm.org/LICENSE.txt for license information.
6
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7
+ *
8
+ *===-----------------------------------------------------------------------===
9
+ */
10
+ #ifndef __IMMINTRIN_H
11
+ #error "Never use <avx512ifmaintrin.h> directly; include <immintrin.h> instead."
12
+ #endif
13
+
14
+ #ifndef __IFMAINTRIN_H
15
+ #define __IFMAINTRIN_H
16
+
17
+ /* Define the default attributes for the functions in this file. */
18
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
19
+ #define __DEFAULT_FN_ATTRS \
20
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma"), \
21
+ __min_vector_width__(512))) constexpr
22
+ #else
23
+ #define __DEFAULT_FN_ATTRS \
24
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma"), \
25
+ __min_vector_width__(512)))
26
+ #endif
27
+
28
+ static __inline__ __m512i __DEFAULT_FN_ATTRS
29
+ _mm512_madd52hi_epu64(__m512i __X, __m512i __Y, __m512i __Z) {
30
+ return (__m512i)__builtin_ia32_vpmadd52huq512((__v8di)__X, (__v8di)__Y,
31
+ (__v8di)__Z);
32
+ }
33
+
34
+ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_mask_madd52hi_epu64(
35
+ __m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
36
+ return (__m512i)__builtin_ia32_selectq_512(
37
+ __M, (__v8di)_mm512_madd52hi_epu64(__W, __X, __Y), (__v8di)__W);
38
+ }
39
+
40
+ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_madd52hi_epu64(
41
+ __mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) {
42
+ return (__m512i)__builtin_ia32_selectq_512(
43
+ __M, (__v8di)_mm512_madd52hi_epu64(__X, __Y, __Z),
44
+ (__v8di)_mm512_setzero_si512());
45
+ }
46
+
47
+ static __inline__ __m512i __DEFAULT_FN_ATTRS
48
+ _mm512_madd52lo_epu64(__m512i __X, __m512i __Y, __m512i __Z) {
49
+ return (__m512i)__builtin_ia32_vpmadd52luq512((__v8di)__X, (__v8di)__Y,
50
+ (__v8di)__Z);
51
+ }
52
+
53
+ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_mask_madd52lo_epu64(
54
+ __m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
55
+ return (__m512i)__builtin_ia32_selectq_512(
56
+ __M, (__v8di)_mm512_madd52lo_epu64(__W, __X, __Y), (__v8di)__W);
57
+ }
58
+
59
+ static __inline__ __m512i __DEFAULT_FN_ATTRS _mm512_maskz_madd52lo_epu64(
60
+ __mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z) {
61
+ return (__m512i)__builtin_ia32_selectq_512(
62
+ __M, (__v8di)_mm512_madd52lo_epu64(__X, __Y, __Z),
63
+ (__v8di)_mm512_setzero_si512());
64
+ }
65
+
66
+ #undef __DEFAULT_FN_ATTRS
67
+
68
+ #endif