@cpp-linter/clang-tidy-win32-x64 19.1.0 → 23.1.3

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 (320) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/23/include/__clang_cuda_complex_builtins.h +236 -0
  4. package/lib/clang/{19 → 23}/include/__clang_cuda_device_functions.h +15 -1
  5. package/lib/clang/{19 → 23}/include/__clang_cuda_intrinsics.h +288 -20
  6. package/lib/clang/{19 → 23}/include/__clang_cuda_math.h +5 -0
  7. package/lib/clang/{19 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
  8. package/lib/clang/{19 → 23}/include/__clang_cuda_runtime_wrapper.h +28 -5
  9. package/lib/clang/{19 → 23}/include/__clang_cuda_texture_intrinsics.h +437 -2
  10. package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
  11. package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
  12. package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
  13. package/lib/clang/{19 → 23}/include/__clang_hip_cmath.h +15 -9
  14. package/lib/clang/{19 → 23}/include/__clang_hip_libdevice_declares.h +24 -139
  15. package/lib/clang/{19 → 23}/include/__clang_hip_math.h +115 -34
  16. package/lib/clang/{19 → 23}/include/__clang_hip_runtime_wrapper.h +12 -1
  17. package/lib/clang/23/include/__clang_spirv_builtins.h +217 -0
  18. package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
  19. package/lib/clang/23/include/__clang_spirv_math.h +719 -0
  20. package/lib/clang/{19/include/float.h → 23/include/__float_float.h} +14 -34
  21. package/lib/clang/23/include/__float_header_macro.h +12 -0
  22. package/lib/clang/23/include/__float_infinity_nan.h +20 -0
  23. package/lib/clang/{19 → 23}/include/__stdarg_va_arg.h +2 -2
  24. package/lib/clang/{19 → 23}/include/adcintrin.h +5 -0
  25. package/lib/clang/{19 → 23}/include/adxintrin.h +5 -0
  26. package/lib/clang/{19 → 23}/include/altivec.h +169 -96
  27. package/lib/clang/23/include/amdgpuintrin.h +164 -0
  28. package/lib/clang/23/include/amdhsa_abi.h +83 -0
  29. package/lib/clang/23/include/amo.h +220 -0
  30. package/lib/clang/23/include/amxavx512intrin.h +596 -0
  31. package/lib/clang/{19 → 23}/include/amxcomplexintrin.h +4 -6
  32. package/lib/clang/{19 → 23}/include/amxfp16intrin.h +35 -0
  33. package/lib/clang/23/include/amxfp8intrin.h +230 -0
  34. package/lib/clang/{19 → 23}/include/amxintrin.h +3 -35
  35. package/lib/clang/23/include/amxmovrsintrin.h +48 -0
  36. package/lib/clang/23/include/andes_vector.h +21 -0
  37. package/lib/clang/23/include/arm64_neon.h +21 -0
  38. package/lib/clang/{19 → 23}/include/arm64intr.h +10 -0
  39. package/lib/clang/{19 → 23}/include/arm_acle.h +67 -89
  40. package/lib/clang/{19 → 23}/include/arm_fp16.h +89 -89
  41. package/lib/clang/{19 → 23}/include/arm_neon.h +43614 -38901
  42. package/lib/clang/{19 → 23}/include/arm_sme.h +1028 -94
  43. package/lib/clang/{19 → 23}/include/arm_sve.h +7331 -5170
  44. package/lib/clang/{19 → 23}/include/arm_vector_types.h +87 -0
  45. package/lib/clang/23/include/avx10_2_512bf16intrin.h +568 -0
  46. package/lib/clang/23/include/avx10_2_512convertintrin.h +322 -0
  47. package/lib/clang/23/include/avx10_2_512minmaxintrin.h +127 -0
  48. package/lib/clang/23/include/avx10_2_512niintrin.h +314 -0
  49. package/lib/clang/23/include/avx10_2_512satcvtdsintrin.h +307 -0
  50. package/lib/clang/23/include/avx10_2_512satcvtintrin.h +301 -0
  51. package/lib/clang/23/include/avx10_2bf16intrin.h +1094 -0
  52. package/lib/clang/23/include/avx10_2convertintrin.h +3257 -0
  53. package/lib/clang/23/include/avx10_2copyintrin.h +66 -0
  54. package/lib/clang/23/include/avx10_2minmaxintrin.h +232 -0
  55. package/lib/clang/23/include/avx10_2niintrin.h +409 -0
  56. package/lib/clang/23/include/avx10_2satcvtdsintrin.h +376 -0
  57. package/lib/clang/23/include/avx10_2satcvtintrin.h +312 -0
  58. package/lib/clang/{19 → 23}/include/avx2intrin.h +284 -378
  59. package/lib/clang/{19 → 23}/include/avx512bf16intrin.h +25 -16
  60. package/lib/clang/{19 → 23}/include/avx512bitalgintrin.h +21 -32
  61. package/lib/clang/23/include/avx512bmmintrin.h +174 -0
  62. package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
  63. package/lib/clang/{19 → 23}/include/avx512bwintrin.h +405 -534
  64. package/lib/clang/23/include/avx512cdintrin.h +112 -0
  65. package/lib/clang/{19 → 23}/include/avx512dqintrin.h +132 -161
  66. package/lib/clang/{19 → 23}/include/avx512fintrin.h +1068 -1496
  67. package/lib/clang/{19 → 23}/include/avx512fp16intrin.h +126 -129
  68. package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
  69. package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
  70. package/lib/clang/{19 → 23}/include/avx512vbmi2intrin.h +55 -48
  71. package/lib/clang/{19 → 23}/include/avx512vbmiintrin.h +19 -27
  72. package/lib/clang/{19 → 23}/include/avx512vbmivlintrin.h +35 -49
  73. package/lib/clang/{19 → 23}/include/avx512vlbf16intrin.h +32 -22
  74. package/lib/clang/{19 → 23}/include/avx512vlbitalgintrin.h +41 -57
  75. package/lib/clang/{19 → 23}/include/avx512vlbwintrin.h +494 -609
  76. package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
  77. package/lib/clang/{19 → 23}/include/avx512vldqintrin.h +110 -127
  78. package/lib/clang/{19 → 23}/include/avx512vlfp16intrin.h +130 -111
  79. package/lib/clang/{19 → 23}/include/avx512vlintrin.h +1025 -1395
  80. package/lib/clang/{19 → 23}/include/avx512vlvbmi2intrin.h +102 -95
  81. package/lib/clang/{19 → 23}/include/avx512vlvnniintrin.h +50 -52
  82. package/lib/clang/{19 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
  83. package/lib/clang/{19 → 23}/include/avx512vnniintrin.h +42 -45
  84. package/lib/clang/{19 → 23}/include/avx512vp2intersectintrin.h +2 -3
  85. package/lib/clang/{19 → 23}/include/avx512vpopcntdqintrin.h +10 -4
  86. package/lib/clang/{19 → 23}/include/avx512vpopcntdqvlintrin.h +20 -10
  87. package/lib/clang/{19 → 23}/include/avxifmaintrin.h +16 -0
  88. package/lib/clang/{19 → 23}/include/avxintrin.h +186 -248
  89. package/lib/clang/{19 → 23}/include/avxvnniint16intrin.h +130 -152
  90. package/lib/clang/{19 → 23}/include/avxvnniint8intrin.h +68 -85
  91. package/lib/clang/{19 → 23}/include/avxvnniintrin.h +39 -26
  92. package/lib/clang/{19 → 23}/include/bmi2intrin.h +15 -17
  93. package/lib/clang/{19 → 23}/include/bmiintrin.h +31 -41
  94. package/lib/clang/{19 → 23}/include/cmpccxaddintrin.h +1 -1
  95. package/lib/clang/{19 → 23}/include/cpuid.h +137 -37
  96. package/lib/clang/{19 → 23}/include/crc32intrin.h +10 -8
  97. package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
  98. package/lib/clang/23/include/cuda_wrappers/bits/c++config.h +61 -0
  99. package/lib/clang/23/include/cuda_wrappers/cmath +44 -0
  100. package/lib/clang/{19 → 23}/include/cuda_wrappers/new +2 -0
  101. package/lib/clang/{19 → 23}/include/emmintrin.h +306 -272
  102. package/lib/clang/23/include/endian.h +91 -0
  103. package/lib/clang/{19 → 23}/include/f16cintrin.h +23 -9
  104. package/lib/clang/23/include/float.h +48 -0
  105. package/lib/clang/23/include/fma4intrin.h +220 -0
  106. package/lib/clang/{19 → 23}/include/fmaintrin.h +96 -66
  107. package/lib/clang/{19 → 23}/include/gfniintrin.h +39 -12
  108. package/lib/clang/23/include/gpuintrin.h +348 -0
  109. package/lib/clang/{19 → 23}/include/hexagon_types.h +31 -24
  110. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
  111. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics_gen.inc +3869 -0
  112. package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
  113. package/lib/clang/23/include/hlsl/hlsl_compat_overloads.h +559 -0
  114. package/lib/clang/23/include/hlsl/hlsl_detail.h +56 -0
  115. package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
  116. package/lib/clang/23/include/hlsl/hlsl_intrinsic_helpers.h +170 -0
  117. package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
  118. package/lib/clang/23/include/hlsl/hlsl_spirv.h +28 -0
  119. package/lib/clang/23/include/hlsl.h +38 -0
  120. package/lib/clang/{19 → 23}/include/hvx_hexagon_protos.h +1041 -803
  121. package/lib/clang/{19 → 23}/include/immintrin.h +35 -185
  122. package/lib/clang/{19 → 23}/include/intrin.h +62 -21
  123. package/lib/clang/{19 → 23}/include/intrin0.h +10 -1
  124. package/lib/clang/{19 → 23}/include/keylockerintrin.h +0 -9
  125. package/lib/clang/{19 → 23}/include/larchintrin.h +24 -8
  126. package/lib/clang/{19 → 23}/include/lasxintrin.h +140 -25
  127. package/lib/clang/{19 → 23}/include/limits.h +7 -4
  128. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
  129. package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
  130. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
  131. package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
  132. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/stdlib.h +3 -16
  133. package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
  134. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/time.h +4 -10
  135. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  136. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  137. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  138. package/lib/clang/{19 → 23}/include/lsxintrin.h +27 -25
  139. package/lib/clang/{19 → 23}/include/lzcntintrin.h +13 -8
  140. package/lib/clang/{19 → 23}/include/mmintrin.h +241 -256
  141. package/lib/clang/{19 → 23}/include/module.modulemap +54 -9
  142. package/lib/clang/23/include/movrs_avx10_2_512intrin.h +98 -0
  143. package/lib/clang/23/include/movrs_avx10_2intrin.h +174 -0
  144. package/lib/clang/23/include/movrsintrin.h +59 -0
  145. package/lib/clang/23/include/nvptxintrin.h +208 -0
  146. package/lib/clang/{19 → 23}/include/opencl-c-base.h +28 -92
  147. package/lib/clang/{19 → 23}/include/opencl-c.h +506 -140
  148. package/lib/clang/{19 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +18 -5
  149. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex +7 -1
  150. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex.h +6 -0
  151. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex_cmath.h +7 -2
  152. package/lib/clang/{19 → 23}/include/openmp_wrappers/math.h +10 -0
  153. package/lib/clang/{19 → 23}/include/pmmintrin.h +24 -23
  154. package/lib/clang/{19 → 23}/include/popcntintrin.h +7 -7
  155. package/lib/clang/{19 → 23}/include/prfchwintrin.h +10 -13
  156. package/lib/clang/{19 → 23}/include/ptrauth.h +169 -14
  157. package/lib/clang/{19 → 23}/include/riscv_bitmanip.h +7 -0
  158. package/lib/clang/23/include/riscv_corev_alu.h +130 -0
  159. package/lib/clang/{19 → 23}/include/riscv_crypto.h +8 -0
  160. package/lib/clang/23/include/riscv_mips.h +36 -0
  161. package/lib/clang/23/include/riscv_nds.h +92 -0
  162. package/lib/clang/{19 → 23}/include/riscv_ntlh.h +2 -0
  163. package/lib/clang/23/include/riscv_packed_simd.h +644 -0
  164. package/lib/clang/{19 → 23}/include/riscv_vector.h +43 -5
  165. package/lib/clang/{19 → 23}/include/shaintrin.h +3 -2
  166. package/lib/clang/{19 → 23}/include/sifive_vector.h +76 -2
  167. package/lib/clang/23/include/sm4evexintrin.h +32 -0
  168. package/lib/clang/{19 → 23}/include/smmintrin.h +80 -56
  169. package/lib/clang/23/include/spirvintrin.h +167 -0
  170. package/lib/clang/{19 → 23}/include/stdalign.h +0 -5
  171. package/lib/clang/23/include/stdcountof.h +15 -0
  172. package/lib/clang/23/include/stddefer.h +19 -0
  173. package/lib/clang/{19 → 23}/include/stdint.h +23 -143
  174. package/lib/clang/{19 → 23}/include/tbmintrin.h +25 -37
  175. package/lib/clang/{19 → 23}/include/tmmintrin.h +125 -130
  176. package/lib/clang/{19 → 23}/include/vaesintrin.h +1 -2
  177. package/lib/clang/{19 → 23}/include/vecintrin.h +1783 -60
  178. package/lib/clang/{19 → 23}/include/wasm_simd128.h +184 -21
  179. package/lib/clang/{19 → 23}/include/x86gprintrin.h +0 -14
  180. package/lib/clang/{19 → 23}/include/x86intrin.h +0 -18
  181. package/lib/clang/{19 → 23}/include/xmmintrin.h +190 -221
  182. package/lib/clang/{19 → 23}/include/xopintrin.h +20 -10
  183. package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
  184. package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
  185. package/lib/clang/23/include/zos_wrappers/math.h +31 -0
  186. package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
  187. package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
  188. package/lib/clang/23/include/zos_wrappers/string.h +19 -0
  189. package/lib/clang/23/include/zos_wrappers/time.h +19 -0
  190. package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
  191. package/package.json +6 -6
  192. package/lib/clang/19/include/__clang_cuda_complex_builtins.h +0 -285
  193. package/lib/clang/19/include/avx512cdintrin.h +0 -125
  194. package/lib/clang/19/include/avx512ifmaintrin.h +0 -70
  195. package/lib/clang/19/include/avx512ifmavlintrin.h +0 -111
  196. package/lib/clang/19/include/avx512vlcdintrin.h +0 -230
  197. package/lib/clang/19/include/cuda_wrappers/cmath +0 -90
  198. package/lib/clang/19/include/fma4intrin.h +0 -218
  199. package/lib/clang/19/include/hlsl/hlsl_basic_types.h +0 -74
  200. package/lib/clang/19/include/hlsl/hlsl_intrinsics.h +0 -1697
  201. package/lib/clang/19/include/hlsl.h +0 -15
  202. package/lib/clang/19/include/llvm_libc_wrappers/ctype.h +0 -102
  203. package/lib/clang/19/include/llvm_libc_wrappers/stdio.h +0 -80
  204. package/lib/clang/19/include/llvm_libc_wrappers/string.h +0 -96
  205. /package/lib/clang/{19 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
  206. /package/lib/clang/{19 → 23}/include/__clang_cuda_cmath.h +0 -0
  207. /package/lib/clang/{19 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
  208. /package/lib/clang/{19 → 23}/include/__clang_hip_stdlib.h +0 -0
  209. /package/lib/clang/{19 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
  210. /package/lib/clang/{19 → 23}/include/__stdarg___va_copy.h +0 -0
  211. /package/lib/clang/{19 → 23}/include/__stdarg_header_macro.h +0 -0
  212. /package/lib/clang/{19 → 23}/include/__stdarg_va_copy.h +0 -0
  213. /package/lib/clang/{19 → 23}/include/__stdarg_va_list.h +0 -0
  214. /package/lib/clang/{19 → 23}/include/__stddef_header_macro.h +0 -0
  215. /package/lib/clang/{19 → 23}/include/__stddef_max_align_t.h +0 -0
  216. /package/lib/clang/{19 → 23}/include/__stddef_null.h +0 -0
  217. /package/lib/clang/{19 → 23}/include/__stddef_nullptr_t.h +0 -0
  218. /package/lib/clang/{19 → 23}/include/__stddef_offsetof.h +0 -0
  219. /package/lib/clang/{19 → 23}/include/__stddef_ptrdiff_t.h +0 -0
  220. /package/lib/clang/{19 → 23}/include/__stddef_rsize_t.h +0 -0
  221. /package/lib/clang/{19 → 23}/include/__stddef_size_t.h +0 -0
  222. /package/lib/clang/{19 → 23}/include/__stddef_unreachable.h +0 -0
  223. /package/lib/clang/{19 → 23}/include/__stddef_wchar_t.h +0 -0
  224. /package/lib/clang/{19 → 23}/include/__stddef_wint_t.h +0 -0
  225. /package/lib/clang/{19 → 23}/include/__wmmintrin_aes.h +0 -0
  226. /package/lib/clang/{19 → 23}/include/__wmmintrin_pclmul.h +0 -0
  227. /package/lib/clang/{19 → 23}/include/ammintrin.h +0 -0
  228. /package/lib/clang/{19 → 23}/include/arm_bf16.h +0 -0
  229. /package/lib/clang/{19 → 23}/include/arm_cde.h +0 -0
  230. /package/lib/clang/{19 → 23}/include/arm_cmse.h +0 -0
  231. /package/lib/clang/{19 → 23}/include/arm_mve.h +0 -0
  232. /package/lib/clang/{19 → 23}/include/arm_neon_sve_bridge.h +0 -0
  233. /package/lib/clang/{19 → 23}/include/armintr.h +0 -0
  234. /package/lib/clang/{19 → 23}/include/avxneconvertintrin.h +0 -0
  235. /package/lib/clang/{19 → 23}/include/builtins.h +0 -0
  236. /package/lib/clang/{19 → 23}/include/cet.h +0 -0
  237. /package/lib/clang/{19 → 23}/include/cetintrin.h +0 -0
  238. /package/lib/clang/{19 → 23}/include/cldemoteintrin.h +0 -0
  239. /package/lib/clang/{19 → 23}/include/clflushoptintrin.h +0 -0
  240. /package/lib/clang/{19 → 23}/include/clwbintrin.h +0 -0
  241. /package/lib/clang/{19 → 23}/include/clzerointrin.h +0 -0
  242. /package/lib/clang/{19 → 23}/include/cuda_wrappers/algorithm +0 -0
  243. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
  244. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  245. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  246. /package/lib/clang/{19 → 23}/include/cuda_wrappers/complex +0 -0
  247. /package/lib/clang/{19 → 23}/include/enqcmdintrin.h +0 -0
  248. /package/lib/clang/{19 → 23}/include/fxsrintrin.h +0 -0
  249. /package/lib/clang/{19 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
  250. /package/lib/clang/{19 → 23}/include/hexagon_protos.h +0 -0
  251. /package/lib/clang/{19 → 23}/include/hresetintrin.h +0 -0
  252. /package/lib/clang/{19 → 23}/include/htmintrin.h +0 -0
  253. /package/lib/clang/{19 → 23}/include/htmxlintrin.h +0 -0
  254. /package/lib/clang/{19 → 23}/include/ia32intrin.h +0 -0
  255. /package/lib/clang/{19 → 23}/include/inttypes.h +0 -0
  256. /package/lib/clang/{19 → 23}/include/invpcidintrin.h +0 -0
  257. /package/lib/clang/{19 → 23}/include/iso646.h +0 -0
  258. /package/lib/clang/{19 → 23}/include/lwpintrin.h +0 -0
  259. /package/lib/clang/{19 → 23}/include/mm3dnow.h +0 -0
  260. /package/lib/clang/{19 → 23}/include/mm_malloc.h +0 -0
  261. /package/lib/clang/{19 → 23}/include/movdirintrin.h +0 -0
  262. /package/lib/clang/{19 → 23}/include/msa.h +0 -0
  263. /package/lib/clang/{19 → 23}/include/mwaitxintrin.h +0 -0
  264. /package/lib/clang/{19 → 23}/include/nmmintrin.h +0 -0
  265. /package/lib/clang/{19 → 23}/include/openmp_wrappers/cmath +0 -0
  266. /package/lib/clang/{19 → 23}/include/openmp_wrappers/new +0 -0
  267. /package/lib/clang/{19 → 23}/include/pconfigintrin.h +0 -0
  268. /package/lib/clang/{19 → 23}/include/pkuintrin.h +0 -0
  269. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
  270. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
  271. /package/lib/clang/{19 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
  272. /package/lib/clang/{19 → 23}/include/ppc_wrappers/immintrin.h +0 -0
  273. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
  274. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
  275. /package/lib/clang/{19 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
  276. /package/lib/clang/{19 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
  277. /package/lib/clang/{19 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
  278. /package/lib/clang/{19 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
  279. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
  280. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
  281. /package/lib/clang/{19 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
  282. /package/lib/clang/{19 → 23}/include/prfchiintrin.h +0 -0
  283. /package/lib/clang/{19 → 23}/include/ptwriteintrin.h +0 -0
  284. /package/lib/clang/{19 → 23}/include/raointintrin.h +0 -0
  285. /package/lib/clang/{19 → 23}/include/rdpruintrin.h +0 -0
  286. /package/lib/clang/{19 → 23}/include/rdseedintrin.h +0 -0
  287. /package/lib/clang/{19 → 23}/include/rtmintrin.h +0 -0
  288. /package/lib/clang/{19 → 23}/include/s390intrin.h +0 -0
  289. /package/lib/clang/{19 → 23}/include/serializeintrin.h +0 -0
  290. /package/lib/clang/{19 → 23}/include/sgxintrin.h +0 -0
  291. /package/lib/clang/{19 → 23}/include/sha512intrin.h +0 -0
  292. /package/lib/clang/{19 → 23}/include/sm3intrin.h +0 -0
  293. /package/lib/clang/{19 → 23}/include/sm4intrin.h +0 -0
  294. /package/lib/clang/{19 → 23}/include/stdarg.h +0 -0
  295. /package/lib/clang/{19 → 23}/include/stdatomic.h +0 -0
  296. /package/lib/clang/{19 → 23}/include/stdbool.h +0 -0
  297. /package/lib/clang/{19 → 23}/include/stdckdint.h +0 -0
  298. /package/lib/clang/{19 → 23}/include/stddef.h +0 -0
  299. /package/lib/clang/{19 → 23}/include/stdnoreturn.h +0 -0
  300. /package/lib/clang/{19 → 23}/include/tgmath.h +0 -0
  301. /package/lib/clang/{19 → 23}/include/tsxldtrkintrin.h +0 -0
  302. /package/lib/clang/{19 → 23}/include/uintrintrin.h +0 -0
  303. /package/lib/clang/{19 → 23}/include/unwind.h +0 -0
  304. /package/lib/clang/{19 → 23}/include/usermsrintrin.h +0 -0
  305. /package/lib/clang/{19 → 23}/include/vadefs.h +0 -0
  306. /package/lib/clang/{19 → 23}/include/varargs.h +0 -0
  307. /package/lib/clang/{19 → 23}/include/velintrin.h +0 -0
  308. /package/lib/clang/{19 → 23}/include/velintrin_approx.h +0 -0
  309. /package/lib/clang/{19 → 23}/include/velintrin_gen.h +0 -0
  310. /package/lib/clang/{19 → 23}/include/vpclmulqdqintrin.h +0 -0
  311. /package/lib/clang/{19 → 23}/include/waitpkgintrin.h +0 -0
  312. /package/lib/clang/{19 → 23}/include/wbnoinvdintrin.h +0 -0
  313. /package/lib/clang/{19 → 23}/include/wmmintrin.h +0 -0
  314. /package/lib/clang/{19 → 23}/include/xsavecintrin.h +0 -0
  315. /package/lib/clang/{19 → 23}/include/xsaveintrin.h +0 -0
  316. /package/lib/clang/{19 → 23}/include/xsaveoptintrin.h +0 -0
  317. /package/lib/clang/{19 → 23}/include/xsavesintrin.h +0 -0
  318. /package/lib/clang/{19 → 23}/include/xtestintrin.h +0 -0
  319. /package/lib/clang/{19 → 23}/include/yvals_core.h +0 -0
  320. /package/lib/clang/{19 → 23}/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
  }
@@ -713,25 +720,22 @@ static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_div_sh(__mmask8 __U,
713
720
  (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \
714
721
  (__mmask8)(U), (int)(R)))
715
722
 
716
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_min_sh(__m128h __A,
717
- __m128h __B) {
723
+ static __inline__ __m128h
724
+ __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_min_sh(__m128h __A, __m128h __B) {
718
725
  return (__m128h)__builtin_ia32_minsh_round_mask(
719
726
  (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1,
720
727
  _MM_FROUND_CUR_DIRECTION);
721
728
  }
722
729
 
723
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_min_sh(__m128h __W,
724
- __mmask8 __U,
725
- __m128h __A,
726
- __m128h __B) {
730
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
731
+ _mm_mask_min_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
727
732
  return (__m128h)__builtin_ia32_minsh_round_mask((__v8hf)__A, (__v8hf)__B,
728
733
  (__v8hf)__W, (__mmask8)__U,
729
734
  _MM_FROUND_CUR_DIRECTION);
730
735
  }
731
736
 
732
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_sh(__mmask8 __U,
733
- __m128h __A,
734
- __m128h __B) {
737
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
738
+ _mm_maskz_min_sh(__mmask8 __U, __m128h __A, __m128h __B) {
735
739
  return (__m128h)__builtin_ia32_minsh_round_mask(
736
740
  (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U,
737
741
  _MM_FROUND_CUR_DIRECTION);
@@ -752,25 +756,22 @@ static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_min_sh(__mmask8 __U,
752
756
  (__v8hf)(__m128h)(A), (__v8hf)(__m128h)(B), (__v8hf)_mm_setzero_ph(), \
753
757
  (__mmask8)(U), (int)(R)))
754
758
 
755
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_max_sh(__m128h __A,
756
- __m128h __B) {
759
+ static __inline__ __m128h
760
+ __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_max_sh(__m128h __A, __m128h __B) {
757
761
  return (__m128h)__builtin_ia32_maxsh_round_mask(
758
762
  (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)-1,
759
763
  _MM_FROUND_CUR_DIRECTION);
760
764
  }
761
765
 
762
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_max_sh(__m128h __W,
763
- __mmask8 __U,
764
- __m128h __A,
765
- __m128h __B) {
766
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
767
+ _mm_mask_max_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
766
768
  return (__m128h)__builtin_ia32_maxsh_round_mask((__v8hf)__A, (__v8hf)__B,
767
769
  (__v8hf)__W, (__mmask8)__U,
768
770
  _MM_FROUND_CUR_DIRECTION);
769
771
  }
770
772
 
771
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_max_sh(__mmask8 __U,
772
- __m128h __A,
773
- __m128h __B) {
773
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
774
+ _mm_maskz_max_sh(__mmask8 __U, __m128h __A, __m128h __B) {
774
775
  return (__m128h)__builtin_ia32_maxsh_round_mask(
775
776
  (__v8hf)__A, (__v8hf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U,
776
777
  _MM_FROUND_CUR_DIRECTION);
@@ -941,22 +942,19 @@ static __inline__ void __DEFAULT_FN_ATTRS128 _mm_storeu_ph(void *__P,
941
942
  }
942
943
 
943
944
  // moves with vmovsh:
944
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_move_sh(__m128h __a,
945
- __m128h __b) {
945
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
946
+ _mm_move_sh(__m128h __a, __m128h __b) {
946
947
  __a[0] = __b[0];
947
948
  return __a;
948
949
  }
949
950
 
950
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_mask_move_sh(__m128h __W,
951
- __mmask8 __U,
952
- __m128h __A,
953
- __m128h __B) {
951
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
952
+ _mm_mask_move_sh(__m128h __W, __mmask8 __U, __m128h __A, __m128h __B) {
954
953
  return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B), __W);
955
954
  }
956
955
 
957
- static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_maskz_move_sh(__mmask8 __U,
958
- __m128h __A,
959
- __m128h __B) {
956
+ static __inline__ __m128h __DEFAULT_FN_ATTRS128_CONSTEXPR
957
+ _mm_maskz_move_sh(__mmask8 __U, __m128h __A, __m128h __B) {
960
958
  return __builtin_ia32_selectsh_128(__U, _mm_move_sh(__A, __B),
961
959
  _mm_setzero_ph());
962
960
  }
@@ -1382,24 +1380,20 @@ _mm_maskz_scalef_sh(__mmask8 __U, __m128h __A, __m128h __B) {
1382
1380
  (__v32hf)_mm512_setzero_ph()))
1383
1381
 
1384
1382
  static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_sqrt_ph(__m512h __A) {
1385
- return (__m512h)__builtin_ia32_sqrtph512((__v32hf)__A,
1386
- _MM_FROUND_CUR_DIRECTION);
1383
+ return (__m512h)__builtin_elementwise_sqrt((__v32hf)__A);
1387
1384
  }
1388
1385
 
1389
1386
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
1390
1387
  _mm512_mask_sqrt_ph(__m512h __W, __mmask32 __U, __m512h __A) {
1391
1388
  return (__m512h)__builtin_ia32_selectph_512(
1392
- (__mmask32)(__U),
1393
- (__v32hf)__builtin_ia32_sqrtph512((__A), (_MM_FROUND_CUR_DIRECTION)),
1394
- (__v32hf)(__m512h)(__W));
1389
+ (__mmask32)(__U), (__v32hf)_mm512_sqrt_ph(__A), (__v32hf)(__m512h)(__W));
1395
1390
  }
1396
1391
 
1397
1392
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
1398
1393
  _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());
1394
+ return (__m512h)__builtin_ia32_selectph_512((__mmask32)(__U),
1395
+ (__v32hf)_mm512_sqrt_ph(__A),
1396
+ (__v32hf)_mm512_setzero_ph());
1403
1397
  }
1404
1398
 
1405
1399
  #define _mm_sqrt_round_sh(A, B, R) \
@@ -3291,19 +3285,19 @@ _mm512_reduce_min_ph(__m512h __V) {
3291
3285
  return __builtin_ia32_reduce_fmin_ph512(__V);
3292
3286
  }
3293
3287
 
3294
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3288
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3295
3289
  _mm512_mask_blend_ph(__mmask32 __U, __m512h __A, __m512h __W) {
3296
3290
  return (__m512h)__builtin_ia32_selectph_512((__mmask32)__U, (__v32hf)__W,
3297
3291
  (__v32hf)__A);
3298
3292
  }
3299
3293
 
3300
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3294
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3301
3295
  _mm512_permutex2var_ph(__m512h __A, __m512i __I, __m512h __B) {
3302
3296
  return (__m512h)__builtin_ia32_vpermi2varhi512((__v32hi)__A, (__v32hi)__I,
3303
3297
  (__v32hi)__B);
3304
3298
  }
3305
3299
 
3306
- static __inline__ __m512h __DEFAULT_FN_ATTRS512
3300
+ static __inline__ __m512h __DEFAULT_FN_ATTRS512_CONSTEXPR
3307
3301
  _mm512_permutexvar_ph(__m512i __A, __m512h __B) {
3308
3302
  return (__m512h)__builtin_ia32_permvarhi512((__v32hi)__B, (__v32hi)__A);
3309
3303
  }
@@ -3347,6 +3341,9 @@ _mm512_permutexvar_ph(__m512i __A, __m512h __B) {
3347
3341
  #undef __DEFAULT_FN_ATTRS128
3348
3342
  #undef __DEFAULT_FN_ATTRS256
3349
3343
  #undef __DEFAULT_FN_ATTRS512
3344
+ #undef __DEFAULT_FN_ATTRS128_CONSTEXPR
3345
+ #undef __DEFAULT_FN_ATTRS256_CONSTEXPR
3346
+ #undef __DEFAULT_FN_ATTRS512_CONSTEXPR
3350
3347
 
3351
3348
  #endif
3352
3349
  #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