@cpp-linter/clang-tidy-darwin-arm64 16.0.3 → 18.1.5

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 (250) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{16 → 18}/include/__clang_cuda_device_functions.h +2 -2
  4. package/lib/clang/{16 → 18}/include/__clang_cuda_intrinsics.h +191 -0
  5. package/lib/clang/{16 → 18}/include/__clang_cuda_libdevice_declares.h +2 -2
  6. package/lib/clang/{16 → 18}/include/__clang_cuda_math.h +3 -3
  7. package/lib/clang/{16 → 18}/include/__clang_cuda_runtime_wrapper.h +2 -2
  8. package/lib/clang/{16 → 18}/include/__clang_hip_cmath.h +1 -1
  9. package/lib/clang/{16 → 18}/include/__clang_hip_libdevice_declares.h +32 -30
  10. package/lib/clang/{16 → 18}/include/__clang_hip_math.h +244 -238
  11. package/lib/clang/{16 → 18}/include/__clang_hip_runtime_wrapper.h +44 -23
  12. package/lib/clang/18/include/__stdarg___gnuc_va_list.h +13 -0
  13. package/lib/clang/18/include/__stdarg___va_copy.h +12 -0
  14. package/lib/clang/18/include/__stdarg_va_arg.h +22 -0
  15. package/lib/clang/18/include/__stdarg_va_copy.h +12 -0
  16. package/lib/clang/18/include/__stdarg_va_list.h +13 -0
  17. package/lib/clang/{16 → 18}/include/__stddef_max_align_t.h +1 -1
  18. package/lib/clang/18/include/__stddef_null.h +29 -0
  19. package/lib/clang/18/include/__stddef_nullptr_t.h +29 -0
  20. package/lib/clang/18/include/__stddef_offsetof.h +17 -0
  21. package/lib/clang/18/include/__stddef_ptrdiff_t.h +20 -0
  22. package/lib/clang/18/include/__stddef_rsize_t.h +20 -0
  23. package/lib/clang/18/include/__stddef_size_t.h +20 -0
  24. package/lib/clang/18/include/__stddef_unreachable.h +21 -0
  25. package/lib/clang/18/include/__stddef_wchar_t.h +28 -0
  26. package/lib/clang/18/include/__stddef_wint_t.h +15 -0
  27. package/lib/clang/18/include/adcintrin.h +160 -0
  28. package/lib/clang/18/include/adxintrin.h +102 -0
  29. package/lib/clang/{16 → 18}/include/altivec.h +167 -136
  30. package/lib/clang/{16 → 18}/include/ammintrin.h +4 -4
  31. package/lib/clang/18/include/amxcomplexintrin.h +169 -0
  32. package/lib/clang/{16 → 18}/include/arm_acle.h +124 -40
  33. package/lib/clang/{16 → 18}/include/arm_neon.h +249 -328
  34. package/lib/clang/18/include/arm_sme.h +2412 -0
  35. package/lib/clang/{16 → 18}/include/arm_sve.h +7454 -364
  36. package/lib/clang/18/include/arm_vector_types.h +345 -0
  37. package/lib/clang/18/include/avx2intrin.h +5284 -0
  38. package/lib/clang/{16 → 18}/include/avx512bf16intrin.h +3 -2
  39. package/lib/clang/{16 → 18}/include/avx512bitalgintrin.h +4 -1
  40. package/lib/clang/{16 → 18}/include/avx512bwintrin.h +28 -38
  41. package/lib/clang/{16 → 18}/include/avx512cdintrin.h +3 -1
  42. package/lib/clang/{16 → 18}/include/avx512dqintrin.h +4 -2
  43. package/lib/clang/{16 → 18}/include/avx512fintrin.h +24 -10
  44. package/lib/clang/{16 → 18}/include/avx512fp16intrin.h +18 -12
  45. package/lib/clang/{16 → 18}/include/avx512ifmaintrin.h +3 -1
  46. package/lib/clang/{16 → 18}/include/avx512ifmavlintrin.h +8 -2
  47. package/lib/clang/{16 → 18}/include/avx512pfintrin.h +0 -5
  48. package/lib/clang/{16 → 18}/include/avx512vbmi2intrin.h +1 -1
  49. package/lib/clang/{16 → 18}/include/avx512vbmiintrin.h +3 -2
  50. package/lib/clang/{16 → 18}/include/avx512vbmivlintrin.h +8 -3
  51. package/lib/clang/{16 → 18}/include/avx512vlbf16intrin.h +8 -6
  52. package/lib/clang/{16 → 18}/include/avx512vlbitalgintrin.h +8 -2
  53. package/lib/clang/{16 → 18}/include/avx512vlbwintrin.h +8 -2
  54. package/lib/clang/{16 → 18}/include/avx512vlcdintrin.h +8 -3
  55. package/lib/clang/{16 → 18}/include/avx512vldqintrin.h +8 -2
  56. package/lib/clang/{16 → 18}/include/avx512vlfp16intrin.h +2 -2
  57. package/lib/clang/{16 → 18}/include/avx512vlintrin.h +8 -2
  58. package/lib/clang/{16 → 18}/include/avx512vlvbmi2intrin.h +8 -2
  59. package/lib/clang/{16 → 18}/include/avx512vlvnniintrin.h +8 -2
  60. package/lib/clang/{16 → 18}/include/avx512vlvp2intersectintrin.h +6 -4
  61. package/lib/clang/{16 → 18}/include/avx512vnniintrin.h +3 -2
  62. package/lib/clang/{16 → 18}/include/avx512vp2intersectintrin.h +3 -2
  63. package/lib/clang/{16 → 18}/include/avx512vpopcntdqintrin.h +3 -1
  64. package/lib/clang/{16 → 18}/include/avx512vpopcntdqvlintrin.h +6 -2
  65. package/lib/clang/{16 → 18}/include/avxintrin.h +29 -12
  66. package/lib/clang/18/include/avxvnniint16intrin.h +473 -0
  67. package/lib/clang/18/include/bmi2intrin.h +255 -0
  68. package/lib/clang/{16 → 18}/include/bmiintrin.h +231 -46
  69. package/lib/clang/{16 → 18}/include/clflushoptintrin.h +9 -0
  70. package/lib/clang/{16 → 18}/include/clzerointrin.h +7 -5
  71. package/lib/clang/18/include/cuda_wrappers/bits/basic_string.h +9 -0
  72. package/lib/clang/18/include/cuda_wrappers/bits/basic_string.tcc +9 -0
  73. package/lib/clang/18/include/cuda_wrappers/bits/shared_ptr_base.h +9 -0
  74. package/lib/clang/{16 → 18}/include/emmintrin.h +10 -10
  75. package/lib/clang/18/include/fmaintrin.h +780 -0
  76. package/lib/clang/{16 → 18}/include/gfniintrin.h +23 -6
  77. package/lib/clang/18/include/hlsl/hlsl_intrinsics.h +624 -0
  78. package/lib/clang/18/include/ia32intrin.h +863 -0
  79. package/lib/clang/{16 → 18}/include/immintrin.h +182 -11
  80. package/lib/clang/{16 → 18}/include/intrin.h +16 -0
  81. package/lib/clang/{16 → 18}/include/larchintrin.h +13 -1
  82. package/lib/clang/18/include/lasxintrin.h +3884 -0
  83. package/lib/clang/{16 → 18}/include/limits.h +7 -5
  84. package/lib/clang/18/include/llvm_libc_wrappers/assert.h +34 -0
  85. package/lib/clang/18/include/llvm_libc_wrappers/ctype.h +102 -0
  86. package/lib/clang/18/include/llvm_libc_wrappers/inttypes.h +34 -0
  87. package/lib/clang/18/include/llvm_libc_wrappers/stdio.h +80 -0
  88. package/lib/clang/18/include/llvm_libc_wrappers/stdlib.h +45 -0
  89. package/lib/clang/18/include/llvm_libc_wrappers/string.h +96 -0
  90. package/lib/clang/18/include/llvm_libc_wrappers/time.h +34 -0
  91. package/lib/clang/18/include/lsxintrin.h +3750 -0
  92. package/lib/clang/{16 → 18}/include/mmintrin.h +7 -5
  93. package/lib/clang/{16 → 18}/include/module.modulemap +155 -2
  94. package/lib/clang/18/include/mwaitxintrin.h +62 -0
  95. package/lib/clang/{16 → 18}/include/opencl-c-base.h +8 -0
  96. package/lib/clang/{16 → 18}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -1
  97. package/lib/clang/{16 → 18}/include/openmp_wrappers/cmath +1 -1
  98. package/lib/clang/{16 → 18}/include/openmp_wrappers/new +1 -1
  99. package/lib/clang/{16 → 18}/include/pmmintrin.h +15 -8
  100. package/lib/clang/{16 → 18}/include/ppc_wrappers/emmintrin.h +2 -1
  101. package/lib/clang/18/include/ppc_wrappers/nmmintrin.h +26 -0
  102. package/lib/clang/{16 → 18}/include/ppc_wrappers/smmintrin.h +37 -17
  103. package/lib/clang/18/include/rdseedintrin.h +105 -0
  104. package/lib/clang/18/include/riscv_bitmanip.h +195 -0
  105. package/lib/clang/18/include/riscv_crypto.h +170 -0
  106. package/lib/clang/18/include/riscv_ntlh.h +26 -0
  107. package/lib/clang/18/include/riscv_vector.h +431 -0
  108. package/lib/clang/18/include/sha512intrin.h +200 -0
  109. package/lib/clang/18/include/shaintrin.h +189 -0
  110. package/lib/clang/18/include/sifive_vector.h +16 -0
  111. package/lib/clang/18/include/sm3intrin.h +238 -0
  112. package/lib/clang/18/include/sm4intrin.h +269 -0
  113. package/lib/clang/{16 → 18}/include/smmintrin.h +3 -3
  114. package/lib/clang/{16 → 18}/include/stdalign.h +3 -0
  115. package/lib/clang/18/include/stdarg.h +79 -0
  116. package/lib/clang/{16 → 18}/include/stdatomic.h +7 -2
  117. package/lib/clang/18/include/stdckdint.h +42 -0
  118. package/lib/clang/18/include/stddef.h +123 -0
  119. package/lib/clang/{16 → 18}/include/stdint.h +19 -48
  120. package/lib/clang/{16 → 18}/include/stdnoreturn.h +2 -2
  121. package/lib/clang/{16 → 18}/include/tmmintrin.h +7 -2
  122. package/lib/clang/18/include/usermsrintrin.h +51 -0
  123. package/lib/clang/{16 → 18}/include/vaesintrin.h +4 -2
  124. package/lib/clang/{16 → 18}/include/vecintrin.h +217 -199
  125. package/lib/clang/{16 → 18}/include/wasm_simd128.h +132 -12
  126. package/lib/clang/{16 → 18}/include/x86gprintrin.h +5 -0
  127. package/lib/clang/{16 → 18}/include/xmmintrin.h +9 -5
  128. package/lib/clang/18/include/xsavecintrin.h +84 -0
  129. package/package.json +6 -6
  130. package/lib/clang/16/include/adxintrin.h +0 -72
  131. package/lib/clang/16/include/avx2intrin.h +0 -1148
  132. package/lib/clang/16/include/bmi2intrin.h +0 -81
  133. package/lib/clang/16/include/fmaintrin.h +0 -216
  134. package/lib/clang/16/include/hlsl/hlsl_intrinsics.h +0 -223
  135. package/lib/clang/16/include/ia32intrin.h +0 -441
  136. package/lib/clang/16/include/mwaitxintrin.h +0 -33
  137. package/lib/clang/16/include/rdseedintrin.h +0 -42
  138. package/lib/clang/16/include/riscv_vector.h +0 -211
  139. package/lib/clang/16/include/shaintrin.h +0 -61
  140. package/lib/clang/16/include/stdarg.h +0 -51
  141. package/lib/clang/16/include/stddef.h +0 -128
  142. package/lib/clang/16/include/xsavecintrin.h +0 -34
  143. /package/lib/clang/{16 → 18}/include/__clang_cuda_builtin_vars.h +0 -0
  144. /package/lib/clang/{16 → 18}/include/__clang_cuda_cmath.h +0 -0
  145. /package/lib/clang/{16 → 18}/include/__clang_cuda_complex_builtins.h +0 -0
  146. /package/lib/clang/{16 → 18}/include/__clang_cuda_math_forward_declares.h +0 -0
  147. /package/lib/clang/{16 → 18}/include/__clang_cuda_texture_intrinsics.h +0 -0
  148. /package/lib/clang/{16 → 18}/include/__clang_hip_stdlib.h +0 -0
  149. /package/lib/clang/{16 → 18}/include/__wmmintrin_aes.h +0 -0
  150. /package/lib/clang/{16 → 18}/include/__wmmintrin_pclmul.h +0 -0
  151. /package/lib/clang/{16 → 18}/include/amxfp16intrin.h +0 -0
  152. /package/lib/clang/{16 → 18}/include/amxintrin.h +0 -0
  153. /package/lib/clang/{16 → 18}/include/arm64intr.h +0 -0
  154. /package/lib/clang/{16 → 18}/include/arm_bf16.h +0 -0
  155. /package/lib/clang/{16 → 18}/include/arm_cde.h +0 -0
  156. /package/lib/clang/{16 → 18}/include/arm_cmse.h +0 -0
  157. /package/lib/clang/{16 → 18}/include/arm_fp16.h +0 -0
  158. /package/lib/clang/{16 → 18}/include/arm_mve.h +0 -0
  159. /package/lib/clang/{16 → 18}/include/arm_neon_sve_bridge.h +0 -0
  160. /package/lib/clang/{16 → 18}/include/armintr.h +0 -0
  161. /package/lib/clang/{16 → 18}/include/avx512erintrin.h +0 -0
  162. /package/lib/clang/{16 → 18}/include/avxifmaintrin.h +0 -0
  163. /package/lib/clang/{16 → 18}/include/avxneconvertintrin.h +0 -0
  164. /package/lib/clang/{16 → 18}/include/avxvnniint8intrin.h +0 -0
  165. /package/lib/clang/{16 → 18}/include/avxvnniintrin.h +0 -0
  166. /package/lib/clang/{16 → 18}/include/builtins.h +0 -0
  167. /package/lib/clang/{16 → 18}/include/cet.h +0 -0
  168. /package/lib/clang/{16 → 18}/include/cetintrin.h +0 -0
  169. /package/lib/clang/{16 → 18}/include/cldemoteintrin.h +0 -0
  170. /package/lib/clang/{16 → 18}/include/clwbintrin.h +0 -0
  171. /package/lib/clang/{16 → 18}/include/cmpccxaddintrin.h +0 -0
  172. /package/lib/clang/{16 → 18}/include/cpuid.h +0 -0
  173. /package/lib/clang/{16 → 18}/include/crc32intrin.h +0 -0
  174. /package/lib/clang/{16 → 18}/include/cuda_wrappers/algorithm +0 -0
  175. /package/lib/clang/{16 → 18}/include/cuda_wrappers/cmath +0 -0
  176. /package/lib/clang/{16 → 18}/include/cuda_wrappers/complex +0 -0
  177. /package/lib/clang/{16 → 18}/include/cuda_wrappers/new +0 -0
  178. /package/lib/clang/{16 → 18}/include/enqcmdintrin.h +0 -0
  179. /package/lib/clang/{16 → 18}/include/f16cintrin.h +0 -0
  180. /package/lib/clang/{16 → 18}/include/float.h +0 -0
  181. /package/lib/clang/{16 → 18}/include/fma4intrin.h +0 -0
  182. /package/lib/clang/{16 → 18}/include/fxsrintrin.h +0 -0
  183. /package/lib/clang/{16 → 18}/include/hexagon_circ_brev_intrinsics.h +0 -0
  184. /package/lib/clang/{16 → 18}/include/hexagon_protos.h +0 -0
  185. /package/lib/clang/{16 → 18}/include/hexagon_types.h +0 -0
  186. /package/lib/clang/{16 → 18}/include/hlsl/hlsl_basic_types.h +0 -0
  187. /package/lib/clang/{16 → 18}/include/hlsl.h +0 -0
  188. /package/lib/clang/{16 → 18}/include/hresetintrin.h +0 -0
  189. /package/lib/clang/{16 → 18}/include/htmintrin.h +0 -0
  190. /package/lib/clang/{16 → 18}/include/htmxlintrin.h +0 -0
  191. /package/lib/clang/{16 → 18}/include/hvx_hexagon_protos.h +0 -0
  192. /package/lib/clang/{16 → 18}/include/inttypes.h +0 -0
  193. /package/lib/clang/{16 → 18}/include/invpcidintrin.h +0 -0
  194. /package/lib/clang/{16 → 18}/include/iso646.h +0 -0
  195. /package/lib/clang/{16 → 18}/include/keylockerintrin.h +0 -0
  196. /package/lib/clang/{16 → 18}/include/lwpintrin.h +0 -0
  197. /package/lib/clang/{16 → 18}/include/lzcntintrin.h +0 -0
  198. /package/lib/clang/{16 → 18}/include/mm3dnow.h +0 -0
  199. /package/lib/clang/{16 → 18}/include/mm_malloc.h +0 -0
  200. /package/lib/clang/{16 → 18}/include/movdirintrin.h +0 -0
  201. /package/lib/clang/{16 → 18}/include/msa.h +0 -0
  202. /package/lib/clang/{16 → 18}/include/nmmintrin.h +0 -0
  203. /package/lib/clang/{16 → 18}/include/opencl-c.h +0 -0
  204. /package/lib/clang/{16 → 18}/include/openmp_wrappers/complex +0 -0
  205. /package/lib/clang/{16 → 18}/include/openmp_wrappers/complex.h +0 -0
  206. /package/lib/clang/{16 → 18}/include/openmp_wrappers/complex_cmath.h +0 -0
  207. /package/lib/clang/{16 → 18}/include/openmp_wrappers/math.h +0 -0
  208. /package/lib/clang/{16 → 18}/include/pconfigintrin.h +0 -0
  209. /package/lib/clang/{16 → 18}/include/pkuintrin.h +0 -0
  210. /package/lib/clang/{16 → 18}/include/popcntintrin.h +0 -0
  211. /package/lib/clang/{16 → 18}/include/ppc_wrappers/bmi2intrin.h +0 -0
  212. /package/lib/clang/{16 → 18}/include/ppc_wrappers/bmiintrin.h +0 -0
  213. /package/lib/clang/{16 → 18}/include/ppc_wrappers/immintrin.h +0 -0
  214. /package/lib/clang/{16 → 18}/include/ppc_wrappers/mm_malloc.h +0 -0
  215. /package/lib/clang/{16 → 18}/include/ppc_wrappers/mmintrin.h +0 -0
  216. /package/lib/clang/{16 → 18}/include/ppc_wrappers/pmmintrin.h +0 -0
  217. /package/lib/clang/{16 → 18}/include/ppc_wrappers/tmmintrin.h +0 -0
  218. /package/lib/clang/{16 → 18}/include/ppc_wrappers/x86gprintrin.h +0 -0
  219. /package/lib/clang/{16 → 18}/include/ppc_wrappers/x86intrin.h +0 -0
  220. /package/lib/clang/{16 → 18}/include/ppc_wrappers/xmmintrin.h +0 -0
  221. /package/lib/clang/{16 → 18}/include/prfchiintrin.h +0 -0
  222. /package/lib/clang/{16 → 18}/include/prfchwintrin.h +0 -0
  223. /package/lib/clang/{16 → 18}/include/ptwriteintrin.h +0 -0
  224. /package/lib/clang/{16 → 18}/include/raointintrin.h +0 -0
  225. /package/lib/clang/{16 → 18}/include/rdpruintrin.h +0 -0
  226. /package/lib/clang/{16 → 18}/include/rtmintrin.h +0 -0
  227. /package/lib/clang/{16 → 18}/include/s390intrin.h +0 -0
  228. /package/lib/clang/{16 → 18}/include/serializeintrin.h +0 -0
  229. /package/lib/clang/{16 → 18}/include/sgxintrin.h +0 -0
  230. /package/lib/clang/{16 → 18}/include/stdbool.h +0 -0
  231. /package/lib/clang/{16 → 18}/include/tbmintrin.h +0 -0
  232. /package/lib/clang/{16 → 18}/include/tgmath.h +0 -0
  233. /package/lib/clang/{16 → 18}/include/tsxldtrkintrin.h +0 -0
  234. /package/lib/clang/{16 → 18}/include/uintrintrin.h +0 -0
  235. /package/lib/clang/{16 → 18}/include/unwind.h +0 -0
  236. /package/lib/clang/{16 → 18}/include/vadefs.h +0 -0
  237. /package/lib/clang/{16 → 18}/include/varargs.h +0 -0
  238. /package/lib/clang/{16 → 18}/include/velintrin.h +0 -0
  239. /package/lib/clang/{16 → 18}/include/velintrin_approx.h +0 -0
  240. /package/lib/clang/{16 → 18}/include/velintrin_gen.h +0 -0
  241. /package/lib/clang/{16 → 18}/include/vpclmulqdqintrin.h +0 -0
  242. /package/lib/clang/{16 → 18}/include/waitpkgintrin.h +0 -0
  243. /package/lib/clang/{16 → 18}/include/wbnoinvdintrin.h +0 -0
  244. /package/lib/clang/{16 → 18}/include/wmmintrin.h +0 -0
  245. /package/lib/clang/{16 → 18}/include/x86intrin.h +0 -0
  246. /package/lib/clang/{16 → 18}/include/xopintrin.h +0 -0
  247. /package/lib/clang/{16 → 18}/include/xsaveintrin.h +0 -0
  248. /package/lib/clang/{16 → 18}/include/xsaveoptintrin.h +0 -0
  249. /package/lib/clang/{16 → 18}/include/xsavesintrin.h +0 -0
  250. /package/lib/clang/{16 → 18}/include/xtestintrin.h +0 -0
@@ -20,10 +20,11 @@ typedef __bf16 __m512bh __attribute__((__vector_size__(64), __aligned__(64)));
20
20
  typedef __bf16 __bfloat16 __attribute__((deprecated("use __bf16 instead")));
21
21
 
22
22
  #define __DEFAULT_FN_ATTRS512 \
23
- __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16"), \
23
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16,evex512"), \
24
24
  __min_vector_width__(512)))
25
25
  #define __DEFAULT_FN_ATTRS \
26
- __attribute__((__always_inline__, __nodebug__, __target__("avx512bf16")))
26
+ __attribute__((__always_inline__, __nodebug__, \
27
+ __target__("avx512bf16,no-evex512")))
27
28
 
28
29
  /// Convert One BF16 Data to One Single Float Data.
29
30
  ///
@@ -15,7 +15,10 @@
15
15
  #define __AVX512BITALGINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bitalg"), __min_vector_width__(512)))
18
+ #define __DEFAULT_FN_ATTRS \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512bitalg,evex512"), \
21
+ __min_vector_width__(512)))
19
22
 
20
23
  static __inline__ __m512i __DEFAULT_FN_ATTRS
21
24
  _mm512_popcnt_epi16(__m512i __A)
@@ -18,8 +18,12 @@ typedef unsigned int __mmask32;
18
18
  typedef unsigned long long __mmask64;
19
19
 
20
20
  /* Define the default attributes for the functions in this file. */
21
- #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw"), __min_vector_width__(512)))
22
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512bw")))
21
+ #define __DEFAULT_FN_ATTRS512 \
22
+ __attribute__((__always_inline__, __nodebug__, \
23
+ __target__("avx512bw,evex512"), __min_vector_width__(512)))
24
+ #define __DEFAULT_FN_ATTRS \
25
+ __attribute__((__always_inline__, __nodebug__, \
26
+ __target__("avx512bw,no-evex512")))
23
27
 
24
28
  static __inline __mmask32 __DEFAULT_FN_ATTRS
25
29
  _knot_mask32(__mmask32 __M)
@@ -27,9 +31,7 @@ _knot_mask32(__mmask32 __M)
27
31
  return __builtin_ia32_knotsi(__M);
28
32
  }
29
33
 
30
- static __inline __mmask64 __DEFAULT_FN_ATTRS
31
- _knot_mask64(__mmask64 __M)
32
- {
34
+ static __inline __mmask64 __DEFAULT_FN_ATTRS _knot_mask64(__mmask64 __M) {
33
35
  return __builtin_ia32_knotdi(__M);
34
36
  }
35
37
 
@@ -39,9 +41,8 @@ _kand_mask32(__mmask32 __A, __mmask32 __B)
39
41
  return (__mmask32)__builtin_ia32_kandsi((__mmask32)__A, (__mmask32)__B);
40
42
  }
41
43
 
42
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
43
- _kand_mask64(__mmask64 __A, __mmask64 __B)
44
- {
44
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kand_mask64(__mmask64 __A,
45
+ __mmask64 __B) {
45
46
  return (__mmask64)__builtin_ia32_kanddi((__mmask64)__A, (__mmask64)__B);
46
47
  }
47
48
 
@@ -51,9 +52,8 @@ _kandn_mask32(__mmask32 __A, __mmask32 __B)
51
52
  return (__mmask32)__builtin_ia32_kandnsi((__mmask32)__A, (__mmask32)__B);
52
53
  }
53
54
 
54
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
55
- _kandn_mask64(__mmask64 __A, __mmask64 __B)
56
- {
55
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kandn_mask64(__mmask64 __A,
56
+ __mmask64 __B) {
57
57
  return (__mmask64)__builtin_ia32_kandndi((__mmask64)__A, (__mmask64)__B);
58
58
  }
59
59
 
@@ -63,9 +63,8 @@ _kor_mask32(__mmask32 __A, __mmask32 __B)
63
63
  return (__mmask32)__builtin_ia32_korsi((__mmask32)__A, (__mmask32)__B);
64
64
  }
65
65
 
66
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
67
- _kor_mask64(__mmask64 __A, __mmask64 __B)
68
- {
66
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kor_mask64(__mmask64 __A,
67
+ __mmask64 __B) {
69
68
  return (__mmask64)__builtin_ia32_kordi((__mmask64)__A, (__mmask64)__B);
70
69
  }
71
70
 
@@ -75,9 +74,8 @@ _kxnor_mask32(__mmask32 __A, __mmask32 __B)
75
74
  return (__mmask32)__builtin_ia32_kxnorsi((__mmask32)__A, (__mmask32)__B);
76
75
  }
77
76
 
78
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
79
- _kxnor_mask64(__mmask64 __A, __mmask64 __B)
80
- {
77
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kxnor_mask64(__mmask64 __A,
78
+ __mmask64 __B) {
81
79
  return (__mmask64)__builtin_ia32_kxnordi((__mmask64)__A, (__mmask64)__B);
82
80
  }
83
81
 
@@ -87,9 +85,8 @@ _kxor_mask32(__mmask32 __A, __mmask32 __B)
87
85
  return (__mmask32)__builtin_ia32_kxorsi((__mmask32)__A, (__mmask32)__B);
88
86
  }
89
87
 
90
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
91
- _kxor_mask64(__mmask64 __A, __mmask64 __B)
92
- {
88
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kxor_mask64(__mmask64 __A,
89
+ __mmask64 __B) {
93
90
  return (__mmask64)__builtin_ia32_kxordi((__mmask64)__A, (__mmask64)__B);
94
91
  }
95
92
 
@@ -112,14 +109,12 @@ _kortest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) {
112
109
  }
113
110
 
114
111
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
115
- _kortestc_mask64_u8(__mmask64 __A, __mmask64 __B)
116
- {
112
+ _kortestc_mask64_u8(__mmask64 __A, __mmask64 __B) {
117
113
  return (unsigned char)__builtin_ia32_kortestcdi(__A, __B);
118
114
  }
119
115
 
120
116
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
121
- _kortestz_mask64_u8(__mmask64 __A, __mmask64 __B)
122
- {
117
+ _kortestz_mask64_u8(__mmask64 __A, __mmask64 __B) {
123
118
  return (unsigned char)__builtin_ia32_kortestzdi(__A, __B);
124
119
  }
125
120
 
@@ -148,14 +143,12 @@ _ktest_mask32_u8(__mmask32 __A, __mmask32 __B, unsigned char *__C) {
148
143
  }
149
144
 
150
145
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
151
- _ktestc_mask64_u8(__mmask64 __A, __mmask64 __B)
152
- {
146
+ _ktestc_mask64_u8(__mmask64 __A, __mmask64 __B) {
153
147
  return (unsigned char)__builtin_ia32_ktestcdi(__A, __B);
154
148
  }
155
149
 
156
150
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
157
- _ktestz_mask64_u8(__mmask64 __A, __mmask64 __B)
158
- {
151
+ _ktestz_mask64_u8(__mmask64 __A, __mmask64 __B) {
159
152
  return (unsigned char)__builtin_ia32_ktestzdi(__A, __B);
160
153
  }
161
154
 
@@ -171,9 +164,8 @@ _kadd_mask32(__mmask32 __A, __mmask32 __B)
171
164
  return (__mmask32)__builtin_ia32_kaddsi((__mmask32)__A, (__mmask32)__B);
172
165
  }
173
166
 
174
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
175
- _kadd_mask64(__mmask64 __A, __mmask64 __B)
176
- {
167
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _kadd_mask64(__mmask64 __A,
168
+ __mmask64 __B) {
177
169
  return (__mmask64)__builtin_ia32_kadddi((__mmask64)__A, (__mmask64)__B);
178
170
  }
179
171
 
@@ -214,8 +206,7 @@ _load_mask32(__mmask32 *__A) {
214
206
  return (__mmask32)__builtin_ia32_kmovd(*(__mmask32 *)__A);
215
207
  }
216
208
 
217
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
218
- _load_mask64(__mmask64 *__A) {
209
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _load_mask64(__mmask64 *__A) {
219
210
  return (__mmask64)__builtin_ia32_kmovq(*(__mmask64 *)__A);
220
211
  }
221
212
 
@@ -224,8 +215,8 @@ _store_mask32(__mmask32 *__A, __mmask32 __B) {
224
215
  *(__mmask32 *)__A = __builtin_ia32_kmovd((__mmask32)__B);
225
216
  }
226
217
 
227
- static __inline__ void __DEFAULT_FN_ATTRS
228
- _store_mask64(__mmask64 *__A, __mmask64 __B) {
218
+ static __inline__ void __DEFAULT_FN_ATTRS _store_mask64(__mmask64 *__A,
219
+ __mmask64 __B) {
229
220
  *(__mmask64 *)__A = __builtin_ia32_kmovq((__mmask64)__B);
230
221
  }
231
222
 
@@ -1714,9 +1705,8 @@ _mm512_maskz_set1_epi8 (__mmask64 __M, char __A)
1714
1705
  (__v64qi) _mm512_setzero_si512());
1715
1706
  }
1716
1707
 
1717
- static __inline__ __mmask64 __DEFAULT_FN_ATTRS
1718
- _mm512_kunpackd (__mmask64 __A, __mmask64 __B)
1719
- {
1708
+ static __inline__ __mmask64 __DEFAULT_FN_ATTRS _mm512_kunpackd(__mmask64 __A,
1709
+ __mmask64 __B) {
1720
1710
  return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A,
1721
1711
  (__mmask64) __B);
1722
1712
  }
@@ -15,7 +15,9 @@
15
15
  #define __AVX512CDINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512cd"), __min_vector_width__(512)))
18
+ #define __DEFAULT_FN_ATTRS \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512cd,evex512"), __min_vector_width__(512)))
19
21
 
20
22
  static __inline__ __m512i __DEFAULT_FN_ATTRS
21
23
  _mm512_conflict_epi64 (__m512i __A)
@@ -15,8 +15,10 @@
15
15
  #define __AVX512DQINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512dq"), __min_vector_width__(512)))
19
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512dq")))
18
+ #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512dq,evex512"), __min_vector_width__(512)))
19
+ #define __DEFAULT_FN_ATTRS \
20
+ __attribute__((__always_inline__, __nodebug__, \
21
+ __target__("avx512dq,no-evex512")))
20
22
 
21
23
  static __inline __mmask8 __DEFAULT_FN_ATTRS
22
24
  _knot_mask8(__mmask8 __M)
@@ -167,9 +167,13 @@ typedef enum
167
167
  } _MM_MANTISSA_SIGN_ENUM;
168
168
 
169
169
  /* Define the default attributes for the functions in this file. */
170
- #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(512)))
171
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), __min_vector_width__(128)))
172
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512f")))
170
+ #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512f,evex512"), __min_vector_width__(512)))
171
+ #define __DEFAULT_FN_ATTRS128 \
172
+ __attribute__((__always_inline__, __nodebug__, \
173
+ __target__("avx512f,no-evex512"), __min_vector_width__(128)))
174
+ #define __DEFAULT_FN_ATTRS \
175
+ __attribute__((__always_inline__, __nodebug__, \
176
+ __target__("avx512f,no-evex512")))
173
177
 
174
178
  /* Create vectors with repeated elements */
175
179
 
@@ -397,14 +401,15 @@ _mm512_broadcastsd_pd(__m128d __A)
397
401
  static __inline __m512d __DEFAULT_FN_ATTRS512
398
402
  _mm512_castpd256_pd512(__m256d __a)
399
403
  {
400
- return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, -1, -1, -1, -1);
404
+ return __builtin_shufflevector(__a, __builtin_nondeterministic_value(__a), 0,
405
+ 1, 2, 3, 4, 5, 6, 7);
401
406
  }
402
407
 
403
408
  static __inline __m512 __DEFAULT_FN_ATTRS512
404
409
  _mm512_castps256_ps512(__m256 __a)
405
410
  {
406
- return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7,
407
- -1, -1, -1, -1, -1, -1, -1, -1);
411
+ return __builtin_shufflevector(__a, __builtin_nondeterministic_value(__a), 0,
412
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
408
413
  }
409
414
 
410
415
  static __inline __m128d __DEFAULT_FN_ATTRS512
@@ -446,7 +451,10 @@ _mm512_castpd_si512 (__m512d __A)
446
451
  static __inline__ __m512d __DEFAULT_FN_ATTRS512
447
452
  _mm512_castpd128_pd512 (__m128d __A)
448
453
  {
449
- return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1);
454
+ __m256d __B = __builtin_nondeterministic_value(__B);
455
+ return __builtin_shufflevector(
456
+ __builtin_shufflevector(__A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3),
457
+ __B, 0, 1, 2, 3, 4, 5, 6, 7);
450
458
  }
451
459
 
452
460
  static __inline __m512d __DEFAULT_FN_ATTRS512
@@ -464,19 +472,25 @@ _mm512_castps_si512 (__m512 __A)
464
472
  static __inline__ __m512 __DEFAULT_FN_ATTRS512
465
473
  _mm512_castps128_ps512 (__m128 __A)
466
474
  {
467
- return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
475
+ __m256 __B = __builtin_nondeterministic_value(__B);
476
+ return __builtin_shufflevector(
477
+ __builtin_shufflevector(__A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3, 4, 5, 6, 7),
478
+ __B, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
468
479
  }
469
480
 
470
481
  static __inline__ __m512i __DEFAULT_FN_ATTRS512
471
482
  _mm512_castsi128_si512 (__m128i __A)
472
483
  {
473
- return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1);
484
+ __m256i __B = __builtin_nondeterministic_value(__B);
485
+ return __builtin_shufflevector(
486
+ __builtin_shufflevector(__A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3),
487
+ __B, 0, 1, 2, 3, 4, 5, 6, 7);
474
488
  }
475
489
 
476
490
  static __inline__ __m512i __DEFAULT_FN_ATTRS512
477
491
  _mm512_castsi256_si512 (__m256i __A)
478
492
  {
479
- return __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1);
493
+ return __builtin_shufflevector( __A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3, 4, 5, 6, 7);
480
494
  }
481
495
 
482
496
  static __inline __m512 __DEFAULT_FN_ATTRS512
@@ -22,13 +22,15 @@ 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__, __target__("avx512fp16"), \
26
- __min_vector_width__(512)))
25
+ __attribute__((__always_inline__, __nodebug__, \
26
+ __target__("avx512fp16,evex512"), __min_vector_width__(512)))
27
27
  #define __DEFAULT_FN_ATTRS256 \
28
- __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \
28
+ __attribute__((__always_inline__, __nodebug__, \
29
+ __target__("avx512fp16,no-evex512"), \
29
30
  __min_vector_width__(256)))
30
31
  #define __DEFAULT_FN_ATTRS128 \
31
- __attribute__((__always_inline__, __nodebug__, __target__("avx512fp16"), \
32
+ __attribute__((__always_inline__, __nodebug__, \
33
+ __target__("avx512fp16,no-evex512"), \
32
34
  __min_vector_width__(128)))
33
35
 
34
36
  static __inline__ _Float16 __DEFAULT_FN_ATTRS512 _mm512_cvtsh_h(__m512h __a) {
@@ -192,22 +194,26 @@ _mm512_castph512_ph256(__m512h __a) {
192
194
 
193
195
  static __inline__ __m256h __DEFAULT_FN_ATTRS256
194
196
  _mm256_castph128_ph256(__m128h __a) {
195
- return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1,
196
- -1, -1, -1, -1, -1);
197
+ return __builtin_shufflevector(__a, __builtin_nondeterministic_value(__a),
198
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
197
199
  }
198
200
 
199
201
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
200
202
  _mm512_castph128_ph512(__m128h __a) {
201
- return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, -1, -1, -1,
202
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
203
- -1, -1, -1, -1, -1, -1, -1, -1, -1);
203
+ __m256h __b = __builtin_nondeterministic_value(__b);
204
+ return __builtin_shufflevector(
205
+ __builtin_shufflevector(__a, __builtin_nondeterministic_value(__a),
206
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15),
207
+ __b, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
208
+ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31);
204
209
  }
205
210
 
206
211
  static __inline__ __m512h __DEFAULT_FN_ATTRS512
207
212
  _mm512_castph256_ph512(__m256h __a) {
208
- return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
209
- 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1,
210
- -1, -1, -1, -1, -1, -1, -1, -1);
213
+ return __builtin_shufflevector(__a, __builtin_nondeterministic_value(__a), 0,
214
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
215
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
216
+ 27, 28, 29, 30, 31);
211
217
  }
212
218
 
213
219
  /// Constructs a 256-bit floating-point vector of [16 x half] from a
@@ -15,7 +15,9 @@
15
15
  #define __IFMAINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma"), __min_vector_width__(512)))
18
+ #define __DEFAULT_FN_ATTRS \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512ifma,evex512"), __min_vector_width__(512)))
19
21
 
20
22
  static __inline__ __m512i __DEFAULT_FN_ATTRS
21
23
  _mm512_madd52hi_epu64 (__m512i __X, __m512i __Y, __m512i __Z)
@@ -15,8 +15,14 @@
15
15
  #define __IFMAVLINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512ifma,avx512vl"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512ifma,avx512vl,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512ifma,avx512vl,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  #define _mm_madd52hi_epu64(X, Y, Z) \
22
28
  ((__m128i)__builtin_ia32_vpmadd52huq128((__v2di)(X), (__v2di)(Y), \
@@ -14,9 +14,6 @@
14
14
  #ifndef __AVX512PFINTRIN_H
15
15
  #define __AVX512PFINTRIN_H
16
16
 
17
- /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512pf")))
19
-
20
17
  #define _mm512_mask_prefetch_i32gather_pd(index, mask, addr, scale, hint) \
21
18
  __builtin_ia32_gatherpfdpd((__mmask8)(mask), (__v8si)(__m256i)(index), \
22
19
  (void const *)(addr), (int)(scale), \
@@ -92,6 +89,4 @@
92
89
  __builtin_ia32_scatterpfqps((__mmask8)(mask), (__v8di)(__m512i)(index), \
93
90
  (void *)(addr), (int)(scale), (int)(hint))
94
91
 
95
- #undef __DEFAULT_FN_ATTRS
96
-
97
92
  #endif
@@ -15,7 +15,7 @@
15
15
  #define __AVX512VBMI2INTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi2"), __min_vector_width__(512)))
18
+ #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi2,evex512"), __min_vector_width__(512)))
19
19
 
20
20
 
21
21
  static __inline__ __m512i __DEFAULT_FN_ATTRS
@@ -15,8 +15,9 @@
15
15
  #define __VBMIINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi"), __min_vector_width__(512)))
19
-
18
+ #define __DEFAULT_FN_ATTRS \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vbmi,evex512"), __min_vector_width__(512)))
20
21
 
21
22
  static __inline__ __m512i __DEFAULT_FN_ATTRS
22
23
  _mm512_permutex2var_epi8(__m512i __A, __m512i __I, __m512i __B)
@@ -15,9 +15,14 @@
15
15
  #define __VBMIVLINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(256)))
20
-
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vbmi,avx512vl,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vbmi,avx512vl,no-evex512"), \
25
+ __min_vector_width__(256)))
21
26
 
22
27
  static __inline__ __m128i __DEFAULT_FN_ATTRS128
23
28
  _mm_permutex2var_epi8(__m128i __A, __m128i __I, __m128i __B)
@@ -15,12 +15,14 @@
15
15
  #ifndef __AVX512VLBF16INTRIN_H
16
16
  #define __AVX512VLBF16INTRIN_H
17
17
 
18
- #define __DEFAULT_FN_ATTRS128 \
19
- __attribute__((__always_inline__, __nodebug__, \
20
- __target__("avx512vl, avx512bf16"), __min_vector_width__(128)))
21
- #define __DEFAULT_FN_ATTRS256 \
22
- __attribute__((__always_inline__, __nodebug__, \
23
- __target__("avx512vl, avx512bf16"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512bf16,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512bf16,no-evex512"), \
25
+ __min_vector_width__(256)))
24
26
 
25
27
  /// Convert Two Packed Single Data to One Packed BF16 Data.
26
28
  ///
@@ -15,8 +15,14 @@
15
15
  #define __AVX512VLBITALGINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bitalg"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512bitalg,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512bitalg,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  static __inline__ __m256i __DEFAULT_FN_ATTRS256
22
28
  _mm256_popcnt_epi16(__m256i __A)
@@ -15,8 +15,14 @@
15
15
  #define __AVX512VLBWINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512bw"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512bw,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512bw,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  /* Integer compare */
22
28
 
@@ -14,9 +14,14 @@
14
14
  #define __AVX512VLCDINTRIN_H
15
15
 
16
16
  /* Define the default attributes for the functions in this file. */
17
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(128)))
18
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512cd"), __min_vector_width__(256)))
19
-
17
+ #define __DEFAULT_FN_ATTRS128 \
18
+ __attribute__((__always_inline__, __nodebug__, \
19
+ __target__("avx512vl,avx512cd,no-evex512"), \
20
+ __min_vector_width__(128)))
21
+ #define __DEFAULT_FN_ATTRS256 \
22
+ __attribute__((__always_inline__, __nodebug__, \
23
+ __target__("avx512vl,avx512cd,no-evex512"), \
24
+ __min_vector_width__(256)))
20
25
 
21
26
  static __inline__ __m128i __DEFAULT_FN_ATTRS128
22
27
  _mm_broadcastmb_epi64 (__mmask8 __A)
@@ -15,8 +15,14 @@
15
15
  #define __AVX512VLDQINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512dq,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512dq,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  static __inline__ __m256i __DEFAULT_FN_ATTRS256
22
28
  _mm256_mullo_epi64 (__m256i __A, __m256i __B) {
@@ -19,11 +19,11 @@
19
19
  /* Define the default attributes for the functions in this file. */
20
20
  #define __DEFAULT_FN_ATTRS256 \
21
21
  __attribute__((__always_inline__, __nodebug__, \
22
- __target__("avx512fp16, avx512vl"), \
22
+ __target__("avx512fp16,avx512vl,no-evex512"), \
23
23
  __min_vector_width__(256)))
24
24
  #define __DEFAULT_FN_ATTRS128 \
25
25
  __attribute__((__always_inline__, __nodebug__, \
26
- __target__("avx512fp16, avx512vl"), \
26
+ __target__("avx512fp16,avx512vl,no-evex512"), \
27
27
  __min_vector_width__(128)))
28
28
 
29
29
  static __inline__ _Float16 __DEFAULT_FN_ATTRS128 _mm_cvtsh_h(__m128h __a) {
@@ -14,8 +14,14 @@
14
14
  #ifndef __AVX512VLINTRIN_H
15
15
  #define __AVX512VLINTRIN_H
16
16
 
17
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(128)))
18
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl"), __min_vector_width__(256)))
17
+ #define __DEFAULT_FN_ATTRS128 \
18
+ __attribute__((__always_inline__, __nodebug__, \
19
+ __target__("avx512vl,no-evex512"), \
20
+ __min_vector_width__(128)))
21
+ #define __DEFAULT_FN_ATTRS256 \
22
+ __attribute__((__always_inline__, __nodebug__, \
23
+ __target__("avx512vl,no-evex512"), \
24
+ __min_vector_width__(256)))
19
25
 
20
26
  typedef short __v2hi __attribute__((__vector_size__(4)));
21
27
  typedef char __v4qi __attribute__((__vector_size__(4)));
@@ -15,8 +15,14 @@
15
15
  #define __AVX512VLVBMI2INTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512vbmi2,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512vbmi2,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  static __inline__ __m128i __DEFAULT_FN_ATTRS128
22
28
  _mm_mask_compress_epi16(__m128i __S, __mmask8 __U, __m128i __D)
@@ -15,8 +15,14 @@
15
15
  #define __AVX512VLVNNIINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(128)))
19
- #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vnni"), __min_vector_width__(256)))
18
+ #define __DEFAULT_FN_ATTRS128 \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vl,avx512vnni,no-evex512"), \
21
+ __min_vector_width__(128)))
22
+ #define __DEFAULT_FN_ATTRS256 \
23
+ __attribute__((__always_inline__, __nodebug__, \
24
+ __target__("avx512vl,avx512vnni,no-evex512"), \
25
+ __min_vector_width__(256)))
20
26
 
21
27
  /// Multiply groups of 4 adjacent pairs of unsigned 8-bit integers in \a A with
22
28
  /// corresponding signed 8-bit integers in \a B, producing 4 intermediate signed
@@ -28,12 +28,14 @@
28
28
  #ifndef _AVX512VLVP2INTERSECT_H
29
29
  #define _AVX512VLVP2INTERSECT_H
30
30
 
31
- #define __DEFAULT_FN_ATTRS128 \
32
- __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \
31
+ #define __DEFAULT_FN_ATTRS128 \
32
+ __attribute__((__always_inline__, __nodebug__, \
33
+ __target__("avx512vl,avx512vp2intersect,no-evex512"), \
33
34
  __min_vector_width__(128)))
34
35
 
35
- #define __DEFAULT_FN_ATTRS256 \
36
- __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vp2intersect"), \
36
+ #define __DEFAULT_FN_ATTRS256 \
37
+ __attribute__((__always_inline__, __nodebug__, \
38
+ __target__("avx512vl,avx512vp2intersect,no-evex512"), \
37
39
  __min_vector_width__(256)))
38
40
  /// Store, in an even/odd pair of mask registers, the indicators of the
39
41
  /// locations of value matches between dwords in operands __a and __b.
@@ -15,8 +15,9 @@
15
15
  #define __AVX512VNNIINTRIN_H
16
16
 
17
17
  /* Define the default attributes for the functions in this file. */
18
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vnni"), __min_vector_width__(512)))
19
-
18
+ #define __DEFAULT_FN_ATTRS \
19
+ __attribute__((__always_inline__, __nodebug__, \
20
+ __target__("avx512vnni,evex512"), __min_vector_width__(512)))
20
21
 
21
22
  static __inline__ __m512i __DEFAULT_FN_ATTRS
22
23
  _mm512_dpbusd_epi32(__m512i __S, __m512i __A, __m512i __B)