@cpp-linter/clang-tidy-darwin-x64 21.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 (326) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/23/include/__clang_cuda_complex_builtins.h +236 -0
  4. package/lib/clang/{21 → 23}/include/__clang_cuda_device_functions.h +1 -1
  5. package/lib/clang/{21 → 23}/include/__clang_cuda_intrinsics.h +207 -226
  6. package/lib/clang/{21 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
  7. package/lib/clang/{21 → 23}/include/__clang_cuda_runtime_wrapper.h +27 -5
  8. package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
  9. package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
  10. package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
  11. package/lib/clang/{21 → 23}/include/__clang_hip_libdevice_declares.h +14 -121
  12. package/lib/clang/{21 → 23}/include/__clang_hip_math.h +5 -5
  13. package/lib/clang/{21 → 23}/include/__clang_hip_runtime_wrapper.h +9 -1
  14. package/lib/clang/{21 → 23}/include/__clang_spirv_builtins.h +12 -12
  15. package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
  16. package/lib/clang/23/include/__clang_spirv_math.h +719 -0
  17. package/lib/clang/{21/include/float.h → 23/include/__float_float.h} +13 -24
  18. package/lib/clang/23/include/__float_header_macro.h +12 -0
  19. package/lib/clang/23/include/__float_infinity_nan.h +20 -0
  20. package/lib/clang/{21 → 23}/include/altivec.h +79 -9
  21. package/lib/clang/{21 → 23}/include/amdgpuintrin.h +2 -29
  22. package/lib/clang/23/include/amdhsa_abi.h +83 -0
  23. package/lib/clang/23/include/amo.h +220 -0
  24. package/lib/clang/{21 → 23}/include/amxavx512intrin.h +215 -1
  25. package/lib/clang/{21 → 23}/include/amxintrin.h +0 -2
  26. package/lib/clang/{21 → 23}/include/andes_vector.h +5 -0
  27. package/lib/clang/23/include/arm64_neon.h +21 -0
  28. package/lib/clang/{21 → 23}/include/arm64intr.h +10 -0
  29. package/lib/clang/{21 → 23}/include/arm_acle.h +38 -27
  30. package/lib/clang/{21 → 23}/include/arm_neon.h +4140 -3836
  31. package/lib/clang/{21 → 23}/include/arm_sme.h +20 -8
  32. package/lib/clang/{21 → 23}/include/arm_sve.h +4582 -3782
  33. package/lib/clang/{21 → 23}/include/avx10_2_512bf16intrin.h +19 -12
  34. package/lib/clang/{21 → 23}/include/avx10_2_512convertintrin.h +1 -1
  35. package/lib/clang/{21 → 23}/include/avx10_2_512niintrin.h +25 -25
  36. package/lib/clang/{21 → 23}/include/avx10_2_512satcvtdsintrin.h +1 -1
  37. package/lib/clang/{21 → 23}/include/avx10_2bf16intrin.h +54 -45
  38. package/lib/clang/{21 → 23}/include/avx10_2convertintrin.h +2 -2
  39. package/lib/clang/{21 → 23}/include/avx10_2copyintrin.h +1 -1
  40. package/lib/clang/{21 → 23}/include/avx10_2niintrin.h +2 -2
  41. package/lib/clang/{21 → 23}/include/avx10_2satcvtdsintrin.h +2 -2
  42. package/lib/clang/{21 → 23}/include/avx2intrin.h +279 -382
  43. package/lib/clang/{21 → 23}/include/avx512bf16intrin.h +25 -16
  44. package/lib/clang/{21 → 23}/include/avx512bitalgintrin.h +19 -30
  45. package/lib/clang/23/include/avx512bmmintrin.h +174 -0
  46. package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
  47. package/lib/clang/{21 → 23}/include/avx512bwintrin.h +405 -534
  48. package/lib/clang/23/include/avx512cdintrin.h +112 -0
  49. package/lib/clang/{21 → 23}/include/avx512dqintrin.h +132 -161
  50. package/lib/clang/{21 → 23}/include/avx512fintrin.h +1049 -1485
  51. package/lib/clang/{21 → 23}/include/avx512fp16intrin.h +124 -128
  52. package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
  53. package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
  54. package/lib/clang/{21 → 23}/include/avx512vbmi2intrin.h +55 -48
  55. package/lib/clang/{21 → 23}/include/avx512vbmiintrin.h +19 -27
  56. package/lib/clang/{21 → 23}/include/avx512vbmivlintrin.h +35 -49
  57. package/lib/clang/{21 → 23}/include/avx512vlbf16intrin.h +32 -22
  58. package/lib/clang/{21 → 23}/include/avx512vlbitalgintrin.h +37 -53
  59. package/lib/clang/{21 → 23}/include/avx512vlbwintrin.h +494 -609
  60. package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
  61. package/lib/clang/{21 → 23}/include/avx512vldqintrin.h +110 -127
  62. package/lib/clang/{21 → 23}/include/avx512vlfp16intrin.h +130 -111
  63. package/lib/clang/{21 → 23}/include/avx512vlintrin.h +1025 -1395
  64. package/lib/clang/{21 → 23}/include/avx512vlvbmi2intrin.h +102 -95
  65. package/lib/clang/{21 → 23}/include/avx512vlvnniintrin.h +50 -52
  66. package/lib/clang/{21 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
  67. package/lib/clang/{21 → 23}/include/avx512vnniintrin.h +42 -45
  68. package/lib/clang/{21 → 23}/include/avx512vp2intersectintrin.h +2 -3
  69. package/lib/clang/{21 → 23}/include/avx512vpopcntdqintrin.h +8 -10
  70. package/lib/clang/{21 → 23}/include/avx512vpopcntdqvlintrin.h +17 -15
  71. package/lib/clang/{21 → 23}/include/avxifmaintrin.h +16 -0
  72. package/lib/clang/{21 → 23}/include/avxintrin.h +165 -241
  73. package/lib/clang/{21 → 23}/include/avxvnniint16intrin.h +118 -99
  74. package/lib/clang/{21 → 23}/include/avxvnniint8intrin.h +56 -32
  75. package/lib/clang/{21 → 23}/include/avxvnniintrin.h +39 -26
  76. package/lib/clang/{21 → 23}/include/cpuid.h +101 -4
  77. package/lib/clang/{21 → 23}/include/crc32intrin.h +10 -8
  78. package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
  79. package/lib/clang/{21 → 23}/include/emmintrin.h +176 -176
  80. package/lib/clang/23/include/endian.h +91 -0
  81. package/lib/clang/{21 → 23}/include/f16cintrin.h +23 -9
  82. package/lib/clang/23/include/float.h +48 -0
  83. package/lib/clang/23/include/fma4intrin.h +220 -0
  84. package/lib/clang/{21 → 23}/include/fmaintrin.h +96 -66
  85. package/lib/clang/{21 → 23}/include/gfniintrin.h +21 -16
  86. package/lib/clang/{21 → 23}/include/gpuintrin.h +129 -109
  87. package/lib/clang/{21 → 23}/include/hexagon_types.h +23 -20
  88. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
  89. package/lib/clang/{21/include/hlsl/hlsl_alias_intrinsics.h → 23/include/hlsl/hlsl_alias_intrinsics_gen.inc} +2090 -1032
  90. package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
  91. package/lib/clang/{21 → 23}/include/hlsl/hlsl_compat_overloads.h +150 -18
  92. package/lib/clang/{21 → 23}/include/hlsl/hlsl_detail.h +6 -4
  93. package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
  94. package/lib/clang/{21 → 23}/include/hlsl/hlsl_intrinsic_helpers.h +71 -45
  95. package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
  96. package/lib/clang/{21 → 23}/include/hvx_hexagon_protos.h +724 -913
  97. package/lib/clang/{21 → 23}/include/immintrin.h +4 -14
  98. package/lib/clang/{21 → 23}/include/intrin.h +24 -10
  99. package/lib/clang/{21 → 23}/include/larchintrin.h +2 -0
  100. package/lib/clang/{21 → 23}/include/lasxintrin.h +113 -0
  101. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
  102. package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
  103. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
  104. package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
  105. package/lib/clang/23/include/llvm_libc_wrappers/stdlib.h +32 -0
  106. package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
  107. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/time.h +4 -10
  108. package/lib/clang/{21 → 23}/include/mmintrin.h +188 -257
  109. package/lib/clang/{21 → 23}/include/module.modulemap +39 -5
  110. package/lib/clang/{21 → 23}/include/movrs_avx10_2_512intrin.h +2 -2
  111. package/lib/clang/{21 → 23}/include/movrs_avx10_2intrin.h +4 -4
  112. package/lib/clang/{21 → 23}/include/nvptxintrin.h +15 -26
  113. package/lib/clang/{21 → 23}/include/opencl-c-base.h +7 -93
  114. package/lib/clang/{21 → 23}/include/opencl-c.h +225 -118
  115. package/lib/clang/{21 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +14 -0
  116. package/lib/clang/{21 → 23}/include/openmp_wrappers/complex +7 -1
  117. package/lib/clang/{21 → 23}/include/openmp_wrappers/complex.h +6 -0
  118. package/lib/clang/{21 → 23}/include/openmp_wrappers/math.h +10 -0
  119. package/lib/clang/{21 → 23}/include/pmmintrin.h +12 -24
  120. package/lib/clang/{21 → 23}/include/ptrauth.h +104 -12
  121. package/lib/clang/{21 → 23}/include/riscv_bitmanip.h +7 -0
  122. package/lib/clang/{21 → 23}/include/riscv_corev_alu.h +2 -0
  123. package/lib/clang/{21 → 23}/include/riscv_crypto.h +8 -0
  124. package/lib/clang/23/include/riscv_mips.h +36 -0
  125. package/lib/clang/23/include/riscv_nds.h +92 -0
  126. package/lib/clang/{21 → 23}/include/riscv_ntlh.h +2 -0
  127. package/lib/clang/23/include/riscv_packed_simd.h +644 -0
  128. package/lib/clang/{21 → 23}/include/riscv_vector.h +43 -0
  129. package/lib/clang/{21 → 23}/include/sifive_vector.h +76 -2
  130. package/lib/clang/{21 → 23}/include/sm4evexintrin.h +2 -2
  131. package/lib/clang/{21 → 23}/include/smmintrin.h +77 -59
  132. package/lib/clang/23/include/spirvintrin.h +167 -0
  133. package/lib/clang/23/include/stddefer.h +19 -0
  134. package/lib/clang/{21 → 23}/include/stdint.h +5 -14
  135. package/lib/clang/{21 → 23}/include/tmmintrin.h +116 -147
  136. package/lib/clang/{21 → 23}/include/vaesintrin.h +1 -2
  137. package/lib/clang/{21 → 23}/include/vecintrin.h +1 -1
  138. package/lib/clang/{21 → 23}/include/wasm_simd128.h +17 -0
  139. package/lib/clang/{21 → 23}/include/xmmintrin.h +50 -75
  140. package/lib/clang/{21 → 23}/include/xopintrin.h +20 -10
  141. package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
  142. package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
  143. package/lib/clang/23/include/zos_wrappers/math.h +31 -0
  144. package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
  145. package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
  146. package/lib/clang/23/include/zos_wrappers/string.h +19 -0
  147. package/lib/clang/23/include/zos_wrappers/time.h +19 -0
  148. package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
  149. package/package.json +6 -6
  150. package/lib/clang/21/include/__clang_cuda_complex_builtins.h +0 -285
  151. package/lib/clang/21/include/amxbf16transposeintrin.h +0 -94
  152. package/lib/clang/21/include/amxcomplextransposeintrin.h +0 -303
  153. package/lib/clang/21/include/amxfp16transposeintrin.h +0 -94
  154. package/lib/clang/21/include/amxmovrstransposeintrin.h +0 -200
  155. package/lib/clang/21/include/amxtf32intrin.h +0 -108
  156. package/lib/clang/21/include/amxtf32transposeintrin.h +0 -105
  157. package/lib/clang/21/include/amxtransposeintrin.h +0 -248
  158. package/lib/clang/21/include/avx512cdintrin.h +0 -125
  159. package/lib/clang/21/include/avx512ifmaintrin.h +0 -70
  160. package/lib/clang/21/include/avx512ifmavlintrin.h +0 -111
  161. package/lib/clang/21/include/avx512vlcdintrin.h +0 -230
  162. package/lib/clang/21/include/fma4intrin.h +0 -218
  163. package/lib/clang/21/include/hlsl/hlsl_basic_types.h +0 -120
  164. package/lib/clang/21/include/hlsl/hlsl_intrinsics.h +0 -526
  165. package/lib/clang/21/include/llvm_libc_wrappers/ctype.h +0 -140
  166. package/lib/clang/21/include/llvm_libc_wrappers/stdio.h +0 -80
  167. package/lib/clang/21/include/llvm_libc_wrappers/stdlib.h +0 -53
  168. package/lib/clang/21/include/llvm_libc_wrappers/string.h +0 -96
  169. /package/lib/clang/{21 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
  170. /package/lib/clang/{21 → 23}/include/__clang_cuda_cmath.h +0 -0
  171. /package/lib/clang/{21 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
  172. /package/lib/clang/{21 → 23}/include/__clang_cuda_math.h +0 -0
  173. /package/lib/clang/{21 → 23}/include/__clang_cuda_texture_intrinsics.h +0 -0
  174. /package/lib/clang/{21 → 23}/include/__clang_hip_cmath.h +0 -0
  175. /package/lib/clang/{21 → 23}/include/__clang_hip_stdlib.h +0 -0
  176. /package/lib/clang/{21 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
  177. /package/lib/clang/{21 → 23}/include/__stdarg___va_copy.h +0 -0
  178. /package/lib/clang/{21 → 23}/include/__stdarg_header_macro.h +0 -0
  179. /package/lib/clang/{21 → 23}/include/__stdarg_va_arg.h +0 -0
  180. /package/lib/clang/{21 → 23}/include/__stdarg_va_copy.h +0 -0
  181. /package/lib/clang/{21 → 23}/include/__stdarg_va_list.h +0 -0
  182. /package/lib/clang/{21 → 23}/include/__stddef_header_macro.h +0 -0
  183. /package/lib/clang/{21 → 23}/include/__stddef_max_align_t.h +0 -0
  184. /package/lib/clang/{21 → 23}/include/__stddef_null.h +0 -0
  185. /package/lib/clang/{21 → 23}/include/__stddef_nullptr_t.h +0 -0
  186. /package/lib/clang/{21 → 23}/include/__stddef_offsetof.h +0 -0
  187. /package/lib/clang/{21 → 23}/include/__stddef_ptrdiff_t.h +0 -0
  188. /package/lib/clang/{21 → 23}/include/__stddef_rsize_t.h +0 -0
  189. /package/lib/clang/{21 → 23}/include/__stddef_size_t.h +0 -0
  190. /package/lib/clang/{21 → 23}/include/__stddef_unreachable.h +0 -0
  191. /package/lib/clang/{21 → 23}/include/__stddef_wchar_t.h +0 -0
  192. /package/lib/clang/{21 → 23}/include/__stddef_wint_t.h +0 -0
  193. /package/lib/clang/{21 → 23}/include/__wmmintrin_aes.h +0 -0
  194. /package/lib/clang/{21 → 23}/include/__wmmintrin_pclmul.h +0 -0
  195. /package/lib/clang/{21 → 23}/include/adcintrin.h +0 -0
  196. /package/lib/clang/{21 → 23}/include/adxintrin.h +0 -0
  197. /package/lib/clang/{21 → 23}/include/ammintrin.h +0 -0
  198. /package/lib/clang/{21 → 23}/include/amxcomplexintrin.h +0 -0
  199. /package/lib/clang/{21 → 23}/include/amxfp16intrin.h +0 -0
  200. /package/lib/clang/{21 → 23}/include/amxfp8intrin.h +0 -0
  201. /package/lib/clang/{21 → 23}/include/amxmovrsintrin.h +0 -0
  202. /package/lib/clang/{21 → 23}/include/arm_bf16.h +0 -0
  203. /package/lib/clang/{21 → 23}/include/arm_cde.h +0 -0
  204. /package/lib/clang/{21 → 23}/include/arm_cmse.h +0 -0
  205. /package/lib/clang/{21 → 23}/include/arm_fp16.h +0 -0
  206. /package/lib/clang/{21 → 23}/include/arm_mve.h +0 -0
  207. /package/lib/clang/{21 → 23}/include/arm_neon_sve_bridge.h +0 -0
  208. /package/lib/clang/{21 → 23}/include/arm_vector_types.h +0 -0
  209. /package/lib/clang/{21 → 23}/include/armintr.h +0 -0
  210. /package/lib/clang/{21 → 23}/include/avx10_2_512minmaxintrin.h +0 -0
  211. /package/lib/clang/{21 → 23}/include/avx10_2_512satcvtintrin.h +0 -0
  212. /package/lib/clang/{21 → 23}/include/avx10_2minmaxintrin.h +0 -0
  213. /package/lib/clang/{21 → 23}/include/avx10_2satcvtintrin.h +0 -0
  214. /package/lib/clang/{21 → 23}/include/avxneconvertintrin.h +0 -0
  215. /package/lib/clang/{21 → 23}/include/bmi2intrin.h +0 -0
  216. /package/lib/clang/{21 → 23}/include/bmiintrin.h +0 -0
  217. /package/lib/clang/{21 → 23}/include/builtins.h +0 -0
  218. /package/lib/clang/{21 → 23}/include/cet.h +0 -0
  219. /package/lib/clang/{21 → 23}/include/cetintrin.h +0 -0
  220. /package/lib/clang/{21 → 23}/include/cldemoteintrin.h +0 -0
  221. /package/lib/clang/{21 → 23}/include/clflushoptintrin.h +0 -0
  222. /package/lib/clang/{21 → 23}/include/clwbintrin.h +0 -0
  223. /package/lib/clang/{21 → 23}/include/clzerointrin.h +0 -0
  224. /package/lib/clang/{21 → 23}/include/cmpccxaddintrin.h +0 -0
  225. /package/lib/clang/{21 → 23}/include/cuda_wrappers/algorithm +0 -0
  226. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
  227. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  228. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/c++config.h +0 -0
  229. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  230. /package/lib/clang/{21 → 23}/include/cuda_wrappers/cmath +0 -0
  231. /package/lib/clang/{21 → 23}/include/cuda_wrappers/complex +0 -0
  232. /package/lib/clang/{21 → 23}/include/cuda_wrappers/new +0 -0
  233. /package/lib/clang/{21 → 23}/include/enqcmdintrin.h +0 -0
  234. /package/lib/clang/{21 → 23}/include/fxsrintrin.h +0 -0
  235. /package/lib/clang/{21 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
  236. /package/lib/clang/{21 → 23}/include/hexagon_protos.h +0 -0
  237. /package/lib/clang/{21 → 23}/include/hlsl/hlsl_spirv.h +0 -0
  238. /package/lib/clang/{21 → 23}/include/hlsl.h +0 -0
  239. /package/lib/clang/{21 → 23}/include/hresetintrin.h +0 -0
  240. /package/lib/clang/{21 → 23}/include/htmintrin.h +0 -0
  241. /package/lib/clang/{21 → 23}/include/htmxlintrin.h +0 -0
  242. /package/lib/clang/{21 → 23}/include/ia32intrin.h +0 -0
  243. /package/lib/clang/{21 → 23}/include/intrin0.h +0 -0
  244. /package/lib/clang/{21 → 23}/include/inttypes.h +0 -0
  245. /package/lib/clang/{21 → 23}/include/invpcidintrin.h +0 -0
  246. /package/lib/clang/{21 → 23}/include/iso646.h +0 -0
  247. /package/lib/clang/{21 → 23}/include/keylockerintrin.h +0 -0
  248. /package/lib/clang/{21 → 23}/include/limits.h +0 -0
  249. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
  250. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
  251. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
  252. /package/lib/clang/{21 → 23}/include/lsxintrin.h +0 -0
  253. /package/lib/clang/{21 → 23}/include/lwpintrin.h +0 -0
  254. /package/lib/clang/{21 → 23}/include/lzcntintrin.h +0 -0
  255. /package/lib/clang/{21 → 23}/include/mm3dnow.h +0 -0
  256. /package/lib/clang/{21 → 23}/include/mm_malloc.h +0 -0
  257. /package/lib/clang/{21 → 23}/include/movdirintrin.h +0 -0
  258. /package/lib/clang/{21 → 23}/include/movrsintrin.h +0 -0
  259. /package/lib/clang/{21 → 23}/include/msa.h +0 -0
  260. /package/lib/clang/{21 → 23}/include/mwaitxintrin.h +0 -0
  261. /package/lib/clang/{21 → 23}/include/nmmintrin.h +0 -0
  262. /package/lib/clang/{21 → 23}/include/openmp_wrappers/cmath +0 -0
  263. /package/lib/clang/{21 → 23}/include/openmp_wrappers/complex_cmath.h +0 -0
  264. /package/lib/clang/{21 → 23}/include/openmp_wrappers/new +0 -0
  265. /package/lib/clang/{21 → 23}/include/pconfigintrin.h +0 -0
  266. /package/lib/clang/{21 → 23}/include/pkuintrin.h +0 -0
  267. /package/lib/clang/{21 → 23}/include/popcntintrin.h +0 -0
  268. /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
  269. /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
  270. /package/lib/clang/{21 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
  271. /package/lib/clang/{21 → 23}/include/ppc_wrappers/immintrin.h +0 -0
  272. /package/lib/clang/{21 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
  273. /package/lib/clang/{21 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
  274. /package/lib/clang/{21 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
  275. /package/lib/clang/{21 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
  276. /package/lib/clang/{21 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
  277. /package/lib/clang/{21 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
  278. /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
  279. /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
  280. /package/lib/clang/{21 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
  281. /package/lib/clang/{21 → 23}/include/prfchiintrin.h +0 -0
  282. /package/lib/clang/{21 → 23}/include/prfchwintrin.h +0 -0
  283. /package/lib/clang/{21 → 23}/include/ptwriteintrin.h +0 -0
  284. /package/lib/clang/{21 → 23}/include/raointintrin.h +0 -0
  285. /package/lib/clang/{21 → 23}/include/rdpruintrin.h +0 -0
  286. /package/lib/clang/{21 → 23}/include/rdseedintrin.h +0 -0
  287. /package/lib/clang/{21 → 23}/include/rtmintrin.h +0 -0
  288. /package/lib/clang/{21 → 23}/include/s390intrin.h +0 -0
  289. /package/lib/clang/{21 → 23}/include/serializeintrin.h +0 -0
  290. /package/lib/clang/{21 → 23}/include/sgxintrin.h +0 -0
  291. /package/lib/clang/{21 → 23}/include/sha512intrin.h +0 -0
  292. /package/lib/clang/{21 → 23}/include/shaintrin.h +0 -0
  293. /package/lib/clang/{21 → 23}/include/sm3intrin.h +0 -0
  294. /package/lib/clang/{21 → 23}/include/sm4intrin.h +0 -0
  295. /package/lib/clang/{21 → 23}/include/stdalign.h +0 -0
  296. /package/lib/clang/{21 → 23}/include/stdarg.h +0 -0
  297. /package/lib/clang/{21 → 23}/include/stdatomic.h +0 -0
  298. /package/lib/clang/{21 → 23}/include/stdbool.h +0 -0
  299. /package/lib/clang/{21 → 23}/include/stdckdint.h +0 -0
  300. /package/lib/clang/{21 → 23}/include/stdcountof.h +0 -0
  301. /package/lib/clang/{21 → 23}/include/stddef.h +0 -0
  302. /package/lib/clang/{21 → 23}/include/stdnoreturn.h +0 -0
  303. /package/lib/clang/{21 → 23}/include/tbmintrin.h +0 -0
  304. /package/lib/clang/{21 → 23}/include/tgmath.h +0 -0
  305. /package/lib/clang/{21 → 23}/include/tsxldtrkintrin.h +0 -0
  306. /package/lib/clang/{21 → 23}/include/uintrintrin.h +0 -0
  307. /package/lib/clang/{21 → 23}/include/unwind.h +0 -0
  308. /package/lib/clang/{21 → 23}/include/usermsrintrin.h +0 -0
  309. /package/lib/clang/{21 → 23}/include/vadefs.h +0 -0
  310. /package/lib/clang/{21 → 23}/include/varargs.h +0 -0
  311. /package/lib/clang/{21 → 23}/include/velintrin.h +0 -0
  312. /package/lib/clang/{21 → 23}/include/velintrin_approx.h +0 -0
  313. /package/lib/clang/{21 → 23}/include/velintrin_gen.h +0 -0
  314. /package/lib/clang/{21 → 23}/include/vpclmulqdqintrin.h +0 -0
  315. /package/lib/clang/{21 → 23}/include/waitpkgintrin.h +0 -0
  316. /package/lib/clang/{21 → 23}/include/wbnoinvdintrin.h +0 -0
  317. /package/lib/clang/{21 → 23}/include/wmmintrin.h +0 -0
  318. /package/lib/clang/{21 → 23}/include/x86gprintrin.h +0 -0
  319. /package/lib/clang/{21 → 23}/include/x86intrin.h +0 -0
  320. /package/lib/clang/{21 → 23}/include/xsavecintrin.h +0 -0
  321. /package/lib/clang/{21 → 23}/include/xsaveintrin.h +0 -0
  322. /package/lib/clang/{21 → 23}/include/xsaveoptintrin.h +0 -0
  323. /package/lib/clang/{21 → 23}/include/xsavesintrin.h +0 -0
  324. /package/lib/clang/{21 → 23}/include/xtestintrin.h +0 -0
  325. /package/lib/clang/{21 → 23}/include/yvals_core.h +0 -0
  326. /package/lib/clang/{21 → 23}/include/zos_wrappers/builtins.h +0 -0
@@ -42,11 +42,12 @@ typedef unsigned char __mmask8;
42
42
  typedef unsigned short __mmask16;
43
43
 
44
44
  /* Rounding mode macros. */
45
- #define _MM_FROUND_TO_NEAREST_INT 0x00
46
- #define _MM_FROUND_TO_NEG_INF 0x01
47
- #define _MM_FROUND_TO_POS_INF 0x02
48
- #define _MM_FROUND_TO_ZERO 0x03
49
- #define _MM_FROUND_CUR_DIRECTION 0x04
45
+ #define _MM_FROUND_TO_NEAREST_INT 0x00
46
+ #define _MM_FROUND_TO_NEAREST_TIES_EVEN 0x00
47
+ #define _MM_FROUND_TO_NEG_INF 0x01
48
+ #define _MM_FROUND_TO_POS_INF 0x02
49
+ #define _MM_FROUND_TO_ZERO 0x03
50
+ #define _MM_FROUND_CUR_DIRECTION 0x04
50
51
 
51
52
  /* Constants for integer comparison predicates */
52
53
  typedef enum {
@@ -167,22 +168,23 @@ typedef enum
167
168
  } _MM_MANTISSA_SIGN_ENUM;
168
169
 
169
170
  /* Define the default attributes for the functions in this file. */
170
- #define __DEFAULT_FN_ATTRS512 __attribute__((__always_inline__, __nodebug__, __target__("avx512f,evex512"), __min_vector_width__(512)))
171
+ #define __DEFAULT_FN_ATTRS512 \
172
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), \
173
+ __min_vector_width__(512)))
171
174
  #define __DEFAULT_FN_ATTRS128 \
172
- __attribute__((__always_inline__, __nodebug__, \
173
- __target__("avx512f,no-evex512"), __min_vector_width__(128)))
175
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512f"), \
176
+ __min_vector_width__(128)))
174
177
  #define __DEFAULT_FN_ATTRS \
175
- __attribute__((__always_inline__, __nodebug__, \
176
- __target__("avx512f,no-evex512")))
178
+ __attribute__((__always_inline__, __nodebug__, __target__("avx512f")))
177
179
 
178
180
  #if defined(__cplusplus) && (__cplusplus >= 201103L)
179
181
  #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
180
182
  #define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512 constexpr
181
183
  #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
182
184
  #else
183
- #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS128
185
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
184
186
  #define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512
185
- #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS
187
+ #define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
186
188
  #endif
187
189
 
188
190
  /* Create vectors with repeated elements */
@@ -206,9 +208,7 @@ _mm512_undefined(void)
206
208
  return (__m512)__builtin_ia32_undef512();
207
209
  }
208
210
 
209
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
210
- _mm512_undefined_ps(void)
211
- {
211
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_undefined_ps(void) {
212
212
  return (__m512)__builtin_ia32_undef512();
213
213
  }
214
214
 
@@ -218,48 +218,40 @@ _mm512_undefined_epi32(void)
218
218
  return (__m512i)__builtin_ia32_undef512();
219
219
  }
220
220
 
221
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
222
- _mm512_broadcastd_epi32 (__m128i __A)
223
- {
221
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
222
+ _mm512_broadcastd_epi32(__m128i __A) {
224
223
  return (__m512i)__builtin_shufflevector((__v4si) __A, (__v4si) __A,
225
224
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
226
225
  }
227
226
 
228
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
229
- _mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A)
230
- {
227
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
228
+ _mm512_mask_broadcastd_epi32(__m512i __O, __mmask16 __M, __m128i __A) {
231
229
  return (__m512i)__builtin_ia32_selectd_512(__M,
232
230
  (__v16si) _mm512_broadcastd_epi32(__A),
233
231
  (__v16si) __O);
234
232
  }
235
233
 
236
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
237
- _mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A)
238
- {
234
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
235
+ _mm512_maskz_broadcastd_epi32(__mmask16 __M, __m128i __A) {
239
236
  return (__m512i)__builtin_ia32_selectd_512(__M,
240
237
  (__v16si) _mm512_broadcastd_epi32(__A),
241
238
  (__v16si) _mm512_setzero_si512());
242
239
  }
243
240
 
244
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
245
- _mm512_broadcastq_epi64 (__m128i __A)
246
- {
241
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
242
+ _mm512_broadcastq_epi64(__m128i __A) {
247
243
  return (__m512i)__builtin_shufflevector((__v2di) __A, (__v2di) __A,
248
244
  0, 0, 0, 0, 0, 0, 0, 0);
249
245
  }
250
246
 
251
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
252
- _mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A)
253
- {
254
- return (__m512i)__builtin_ia32_selectq_512(__M,
255
- (__v8di) _mm512_broadcastq_epi64(__A),
256
- (__v8di) __O);
257
-
247
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
248
+ _mm512_mask_broadcastq_epi64(__m512i __O, __mmask8 __M, __m128i __A) {
249
+ return (__m512i)__builtin_ia32_selectq_512(
250
+ __M, (__v8di)_mm512_broadcastq_epi64(__A), (__v8di)__O);
258
251
  }
259
252
 
260
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
261
- _mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
262
- {
253
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
254
+ _mm512_maskz_broadcastq_epi64(__mmask8 __M, __m128i __A) {
263
255
  return (__m512i)__builtin_ia32_selectq_512(__M,
264
256
  (__v8di) _mm512_broadcastq_epi64(__A),
265
257
  (__v8di) _mm512_setzero_si512());
@@ -277,20 +269,20 @@ _mm512_setzero_pd(void) {
277
269
  return __extension__(__m512d){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
278
270
  }
279
271
 
280
- static __inline __m512 __DEFAULT_FN_ATTRS512
272
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
281
273
  _mm512_set1_ps(float __w)
282
274
  {
283
275
  return __extension__ (__m512){ __w, __w, __w, __w, __w, __w, __w, __w,
284
276
  __w, __w, __w, __w, __w, __w, __w, __w };
285
277
  }
286
278
 
287
- static __inline __m512d __DEFAULT_FN_ATTRS512
279
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
288
280
  _mm512_set1_pd(double __w)
289
281
  {
290
282
  return __extension__ (__m512d){ __w, __w, __w, __w, __w, __w, __w, __w };
291
283
  }
292
284
 
293
- static __inline __m512i __DEFAULT_FN_ATTRS512
285
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
294
286
  _mm512_set1_epi8(char __w)
295
287
  {
296
288
  return __extension__ (__m512i)(__v64qi){
@@ -304,7 +296,7 @@ _mm512_set1_epi8(char __w)
304
296
  __w, __w, __w, __w, __w, __w, __w, __w };
305
297
  }
306
298
 
307
- static __inline __m512i __DEFAULT_FN_ATTRS512
299
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
308
300
  _mm512_set1_epi16(short __w)
309
301
  {
310
302
  return __extension__ (__m512i)(__v32hi){
@@ -314,7 +306,7 @@ _mm512_set1_epi16(short __w)
314
306
  __w, __w, __w, __w, __w, __w, __w, __w };
315
307
  }
316
308
 
317
- static __inline __m512i __DEFAULT_FN_ATTRS512
309
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
318
310
  _mm512_set1_epi32(int __s)
319
311
  {
320
312
  return __extension__ (__m512i)(__v16si){
@@ -322,81 +314,80 @@ _mm512_set1_epi32(int __s)
322
314
  __s, __s, __s, __s, __s, __s, __s, __s };
323
315
  }
324
316
 
325
- static __inline __m512i __DEFAULT_FN_ATTRS512
326
- _mm512_maskz_set1_epi32(__mmask16 __M, int __A)
327
- {
317
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
318
+ _mm512_maskz_set1_epi32(__mmask16 __M, int __A) {
328
319
  return (__m512i)__builtin_ia32_selectd_512(__M,
329
320
  (__v16si)_mm512_set1_epi32(__A),
330
321
  (__v16si)_mm512_setzero_si512());
331
322
  }
332
323
 
333
- static __inline __m512i __DEFAULT_FN_ATTRS512
324
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
334
325
  _mm512_set1_epi64(long long __d)
335
326
  {
336
327
  return __extension__(__m512i)(__v8di){ __d, __d, __d, __d, __d, __d, __d, __d };
337
328
  }
338
329
 
339
- static __inline __m512i __DEFAULT_FN_ATTRS512
340
- _mm512_maskz_set1_epi64(__mmask8 __M, long long __A)
341
- {
330
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
331
+ _mm512_maskz_set1_epi64(__mmask8 __M, long long __A) {
342
332
  return (__m512i)__builtin_ia32_selectq_512(__M,
343
333
  (__v8di)_mm512_set1_epi64(__A),
344
334
  (__v8di)_mm512_setzero_si512());
345
335
  }
346
336
 
347
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
348
- _mm512_broadcastss_ps(__m128 __A)
349
- {
337
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
338
+ _mm512_broadcastss_ps(__m128 __A) {
350
339
  return (__m512)__builtin_shufflevector((__v4sf) __A, (__v4sf) __A,
351
340
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
352
341
  }
353
342
 
354
- static __inline __m512i __DEFAULT_FN_ATTRS512
355
- _mm512_set4_epi32 (int __A, int __B, int __C, int __D)
356
- {
343
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
344
+ _mm512_set4_epi32(int __A, int __B, int __C, int __D) {
357
345
  return __extension__ (__m512i)(__v16si)
358
346
  { __D, __C, __B, __A, __D, __C, __B, __A,
359
347
  __D, __C, __B, __A, __D, __C, __B, __A };
360
348
  }
361
349
 
362
- static __inline __m512i __DEFAULT_FN_ATTRS512
363
- _mm512_set4_epi64 (long long __A, long long __B, long long __C,
364
- long long __D)
365
- {
350
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
351
+ _mm512_set4_epi64(long long __A, long long __B, long long __C, long long __D) {
366
352
  return __extension__ (__m512i) (__v8di)
367
353
  { __D, __C, __B, __A, __D, __C, __B, __A };
368
354
  }
369
355
 
370
- static __inline __m512d __DEFAULT_FN_ATTRS512
371
- _mm512_set4_pd (double __A, double __B, double __C, double __D)
372
- {
356
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
357
+ _mm512_set4_pd(double __A, double __B, double __C, double __D) {
373
358
  return __extension__ (__m512d)
374
359
  { __D, __C, __B, __A, __D, __C, __B, __A };
375
360
  }
376
361
 
377
- static __inline __m512 __DEFAULT_FN_ATTRS512
378
- _mm512_set4_ps (float __A, float __B, float __C, float __D)
379
- {
362
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
363
+ _mm512_set4_ps(float __A, float __B, float __C, float __D) {
380
364
  return __extension__ (__m512)
381
365
  { __D, __C, __B, __A, __D, __C, __B, __A,
382
366
  __D, __C, __B, __A, __D, __C, __B, __A };
383
367
  }
384
368
 
385
- #define _mm512_setr4_epi32(e0,e1,e2,e3) \
386
- _mm512_set4_epi32((e3),(e2),(e1),(e0))
369
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
370
+ _mm512_setr4_epi32(int e0, int e1, int e2, int e3) {
371
+ return _mm512_set4_epi32(e3, e2, e1, e0);
372
+ }
387
373
 
388
- #define _mm512_setr4_epi64(e0,e1,e2,e3) \
389
- _mm512_set4_epi64((e3),(e2),(e1),(e0))
374
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
375
+ _mm512_setr4_epi64(long long e0, long long e1, long long e2, long long e3) {
376
+ return _mm512_set4_epi64(e3, e2, e1, e0);
377
+ }
390
378
 
391
- #define _mm512_setr4_pd(e0,e1,e2,e3) \
392
- _mm512_set4_pd((e3),(e2),(e1),(e0))
379
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
380
+ _mm512_setr4_pd(double e0, double e1, double e2, double e3) {
381
+ return _mm512_set4_pd(e3, e2, e1, e0);
382
+ }
393
383
 
394
- #define _mm512_setr4_ps(e0,e1,e2,e3) \
395
- _mm512_set4_ps((e3),(e2),(e1),(e0))
384
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
385
+ _mm512_setr4_ps(float e0, float e1, float e2, float e3) {
386
+ return _mm512_set4_ps(e3, e2, e1, e0);
387
+ }
396
388
 
397
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
398
- _mm512_broadcastsd_pd(__m128d __A)
399
- {
389
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
390
+ _mm512_broadcastsd_pd(__m128d __A) {
400
391
  return (__m512d)__builtin_shufflevector((__v2df) __A, (__v2df) __A,
401
392
  0, 0, 0, 0, 0, 0, 0, 0);
402
393
  }
@@ -417,37 +408,36 @@ _mm512_castps256_ps512(__m256 __a)
417
408
  1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
418
409
  }
419
410
 
420
- static __inline __m128d __DEFAULT_FN_ATTRS512
411
+ static __inline __m128d __DEFAULT_FN_ATTRS512_CONSTEXPR
421
412
  _mm512_castpd512_pd128(__m512d __a)
422
413
  {
423
414
  return __builtin_shufflevector(__a, __a, 0, 1);
424
415
  }
425
416
 
426
- static __inline __m256d __DEFAULT_FN_ATTRS512
417
+ static __inline __m256d __DEFAULT_FN_ATTRS512_CONSTEXPR
427
418
  _mm512_castpd512_pd256 (__m512d __A)
428
419
  {
429
420
  return __builtin_shufflevector(__A, __A, 0, 1, 2, 3);
430
421
  }
431
422
 
432
- static __inline __m128 __DEFAULT_FN_ATTRS512
423
+ static __inline __m128 __DEFAULT_FN_ATTRS512_CONSTEXPR
433
424
  _mm512_castps512_ps128(__m512 __a)
434
425
  {
435
426
  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3);
436
427
  }
437
428
 
438
- static __inline __m256 __DEFAULT_FN_ATTRS512
439
- _mm512_castps512_ps256 (__m512 __A)
440
- {
429
+ static __inline __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
430
+ _mm512_castps512_ps256(__m512 __A) {
441
431
  return __builtin_shufflevector(__A, __A, 0, 1, 2, 3, 4, 5, 6, 7);
442
432
  }
443
433
 
444
- static __inline __m512 __DEFAULT_FN_ATTRS512
434
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
445
435
  _mm512_castpd_ps (__m512d __A)
446
436
  {
447
437
  return (__m512) (__A);
448
438
  }
449
439
 
450
- static __inline __m512i __DEFAULT_FN_ATTRS512
440
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
451
441
  _mm512_castpd_si512 (__m512d __A)
452
442
  {
453
443
  return (__m512i) (__A);
@@ -462,13 +452,13 @@ _mm512_castpd128_pd512 (__m128d __A)
462
452
  __B, 0, 1, 2, 3, 4, 5, 6, 7);
463
453
  }
464
454
 
465
- static __inline __m512d __DEFAULT_FN_ATTRS512
455
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
466
456
  _mm512_castps_pd (__m512 __A)
467
457
  {
468
458
  return (__m512d) (__A);
469
459
  }
470
460
 
471
- static __inline __m512i __DEFAULT_FN_ATTRS512
461
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
472
462
  _mm512_castps_si512 (__m512 __A)
473
463
  {
474
464
  return (__m512i) (__A);
@@ -498,39 +488,36 @@ _mm512_castsi256_si512 (__m256i __A)
498
488
  return __builtin_shufflevector( __A, __builtin_nondeterministic_value(__A), 0, 1, 2, 3, 4, 5, 6, 7);
499
489
  }
500
490
 
501
- static __inline __m512 __DEFAULT_FN_ATTRS512
491
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
502
492
  _mm512_castsi512_ps (__m512i __A)
503
493
  {
504
494
  return (__m512) (__A);
505
495
  }
506
496
 
507
- static __inline __m512d __DEFAULT_FN_ATTRS512
497
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
508
498
  _mm512_castsi512_pd (__m512i __A)
509
499
  {
510
500
  return (__m512d) (__A);
511
501
  }
512
502
 
513
- static __inline __m128i __DEFAULT_FN_ATTRS512
503
+ static __inline __m128i __DEFAULT_FN_ATTRS512_CONSTEXPR
514
504
  _mm512_castsi512_si128 (__m512i __A)
515
505
  {
516
506
  return (__m128i)__builtin_shufflevector(__A, __A , 0, 1);
517
507
  }
518
508
 
519
- static __inline __m256i __DEFAULT_FN_ATTRS512
520
- _mm512_castsi512_si256 (__m512i __A)
521
- {
509
+ static __inline __m256i __DEFAULT_FN_ATTRS512_CONSTEXPR
510
+ _mm512_castsi512_si256(__m512i __A) {
522
511
  return (__m256i)__builtin_shufflevector(__A, __A , 0, 1, 2, 3);
523
512
  }
524
513
 
525
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
526
- _mm512_int2mask(int __a)
527
- {
514
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
515
+ _mm512_int2mask(int __a) {
528
516
  return (__mmask16)__a;
529
517
  }
530
518
 
531
- static __inline__ int __DEFAULT_FN_ATTRS
532
- _mm512_mask2int(__mmask16 __a)
533
- {
519
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
520
+ _mm512_mask2int(__mmask16 __a) {
534
521
  return (int)__a;
535
522
  }
536
523
 
@@ -547,9 +534,8 @@ _mm512_mask2int(__mmask16 __a)
547
534
  /// A 128-bit vector of [2 x double].
548
535
  /// \returns A 512-bit floating-point vector of [8 x double]. The lower 128 bits
549
536
  /// contain the value of the parameter. The upper 384 bits are set to zero.
550
- static __inline __m512d __DEFAULT_FN_ATTRS512
551
- _mm512_zextpd128_pd512(__m128d __a)
552
- {
537
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
538
+ _mm512_zextpd128_pd512(__m128d __a) {
553
539
  return __builtin_shufflevector((__v2df)__a, (__v2df)_mm_setzero_pd(), 0, 1, 2, 3, 2, 3, 2, 3);
554
540
  }
555
541
 
@@ -566,9 +552,8 @@ _mm512_zextpd128_pd512(__m128d __a)
566
552
  /// A 256-bit vector of [4 x double].
567
553
  /// \returns A 512-bit floating-point vector of [8 x double]. The lower 256 bits
568
554
  /// contain the value of the parameter. The upper 256 bits are set to zero.
569
- static __inline __m512d __DEFAULT_FN_ATTRS512
570
- _mm512_zextpd256_pd512(__m256d __a)
571
- {
555
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
556
+ _mm512_zextpd256_pd512(__m256d __a) {
572
557
  return __builtin_shufflevector((__v4df)__a, (__v4df)_mm256_setzero_pd(), 0, 1, 2, 3, 4, 5, 6, 7);
573
558
  }
574
559
 
@@ -584,9 +569,8 @@ _mm512_zextpd256_pd512(__m256d __a)
584
569
  /// A 128-bit vector of [4 x float].
585
570
  /// \returns A 512-bit floating-point vector of [16 x float]. The lower 128 bits
586
571
  /// contain the value of the parameter. The upper 384 bits are set to zero.
587
- static __inline __m512 __DEFAULT_FN_ATTRS512
588
- _mm512_zextps128_ps512(__m128 __a)
589
- {
572
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
573
+ _mm512_zextps128_ps512(__m128 __a) {
590
574
  return __builtin_shufflevector((__v4sf)__a, (__v4sf)_mm_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 4, 5, 6, 7, 4, 5, 6, 7);
591
575
  }
592
576
 
@@ -602,9 +586,8 @@ _mm512_zextps128_ps512(__m128 __a)
602
586
  /// A 256-bit vector of [8 x float].
603
587
  /// \returns A 512-bit floating-point vector of [16 x float]. The lower 256 bits
604
588
  /// contain the value of the parameter. The upper 256 bits are set to zero.
605
- static __inline __m512 __DEFAULT_FN_ATTRS512
606
- _mm512_zextps256_ps512(__m256 __a)
607
- {
589
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
590
+ _mm512_zextps256_ps512(__m256 __a) {
608
591
  return __builtin_shufflevector((__v8sf)__a, (__v8sf)_mm256_setzero_ps(), 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
609
592
  }
610
593
 
@@ -620,9 +603,8 @@ _mm512_zextps256_ps512(__m256 __a)
620
603
  /// A 128-bit integer vector.
621
604
  /// \returns A 512-bit integer vector. The lower 128 bits contain the value of
622
605
  /// the parameter. The upper 384 bits are set to zero.
623
- static __inline __m512i __DEFAULT_FN_ATTRS512
624
- _mm512_zextsi128_si512(__m128i __a)
625
- {
606
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
607
+ _mm512_zextsi128_si512(__m128i __a) {
626
608
  return __builtin_shufflevector((__v2di)__a, (__v2di)_mm_setzero_si128(), 0, 1, 2, 3, 2, 3, 2, 3);
627
609
  }
628
610
 
@@ -638,22 +620,20 @@ _mm512_zextsi128_si512(__m128i __a)
638
620
  /// A 256-bit integer vector.
639
621
  /// \returns A 512-bit integer vector. The lower 256 bits contain the value of
640
622
  /// the parameter. The upper 256 bits are set to zero.
641
- static __inline __m512i __DEFAULT_FN_ATTRS512
642
- _mm512_zextsi256_si512(__m256i __a)
643
- {
623
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
624
+ _mm512_zextsi256_si512(__m256i __a) {
644
625
  return __builtin_shufflevector((__v4di)__a, (__v4di)_mm256_setzero_si256(), 0, 1, 2, 3, 4, 5, 6, 7);
645
626
  }
646
627
 
647
628
  /* Bitwise operators */
648
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
629
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
649
630
  _mm512_and_epi32(__m512i __a, __m512i __b)
650
631
  {
651
632
  return (__m512i)((__v16su)__a & (__v16su)__b);
652
633
  }
653
634
 
654
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
655
- _mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b)
656
- {
635
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
636
+ _mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b) {
657
637
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k,
658
638
  (__v16si) _mm512_and_epi32(__a, __b),
659
639
  (__v16si) __src);
@@ -666,18 +646,16 @@ _mm512_maskz_and_epi32(__mmask16 __k, __m512i __a, __m512i __b)
666
646
  __k, __a, __b);
667
647
  }
668
648
 
669
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
649
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
670
650
  _mm512_and_epi64(__m512i __a, __m512i __b)
671
651
  {
672
652
  return (__m512i)((__v8du)__a & (__v8du)__b);
673
653
  }
674
654
 
675
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
676
- _mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b)
677
- {
678
- return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __k,
679
- (__v8di) _mm512_and_epi64(__a, __b),
680
- (__v8di) __src);
655
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
656
+ _mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b) {
657
+ return (__m512i)__builtin_ia32_selectq_512(
658
+ (__mmask8)__k, (__v8di)_mm512_and_epi64(__a, __b), (__v8di)__src);
681
659
  }
682
660
 
683
661
  static __inline__ __m512i __DEFAULT_FN_ATTRS512
@@ -687,13 +665,13 @@ _mm512_maskz_and_epi64(__mmask8 __k, __m512i __a, __m512i __b)
687
665
  __k, __a, __b);
688
666
  }
689
667
 
690
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
668
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
691
669
  _mm512_andnot_si512 (__m512i __A, __m512i __B)
692
670
  {
693
671
  return (__m512i)(~(__v8du)__A & (__v8du)__B);
694
672
  }
695
673
 
696
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
674
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
697
675
  _mm512_andnot_epi32 (__m512i __A, __m512i __B)
698
676
  {
699
677
  return (__m512i)(~(__v16su)__A & (__v16su)__B);
@@ -714,7 +692,7 @@ _mm512_maskz_andnot_epi32(__mmask16 __U, __m512i __A, __m512i __B)
714
692
  __U, __A, __B);
715
693
  }
716
694
 
717
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
695
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
718
696
  _mm512_andnot_epi64(__m512i __A, __m512i __B)
719
697
  {
720
698
  return (__m512i)(~(__v8du)__A & (__v8du)__B);
@@ -735,7 +713,7 @@ _mm512_maskz_andnot_epi64(__mmask8 __U, __m512i __A, __m512i __B)
735
713
  __U, __A, __B);
736
714
  }
737
715
 
738
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
716
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
739
717
  _mm512_or_epi32(__m512i __a, __m512i __b)
740
718
  {
741
719
  return (__m512i)((__v16su)__a | (__v16su)__b);
@@ -755,7 +733,7 @@ _mm512_maskz_or_epi32(__mmask16 __k, __m512i __a, __m512i __b)
755
733
  return (__m512i)_mm512_mask_or_epi32(_mm512_setzero_si512(), __k, __a, __b);
756
734
  }
757
735
 
758
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
736
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
759
737
  _mm512_or_epi64(__m512i __a, __m512i __b)
760
738
  {
761
739
  return (__m512i)((__v8du)__a | (__v8du)__b);
@@ -775,7 +753,7 @@ _mm512_maskz_or_epi64(__mmask8 __k, __m512i __a, __m512i __b)
775
753
  return (__m512i)_mm512_mask_or_epi64(_mm512_setzero_si512(), __k, __a, __b);
776
754
  }
777
755
 
778
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
756
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
779
757
  _mm512_xor_epi32(__m512i __a, __m512i __b)
780
758
  {
781
759
  return (__m512i)((__v16su)__a ^ (__v16su)__b);
@@ -795,7 +773,7 @@ _mm512_maskz_xor_epi32(__mmask16 __k, __m512i __a, __m512i __b)
795
773
  return (__m512i)_mm512_mask_xor_epi32(_mm512_setzero_si512(), __k, __a, __b);
796
774
  }
797
775
 
798
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
776
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
799
777
  _mm512_xor_epi64(__m512i __a, __m512i __b)
800
778
  {
801
779
  return (__m512i)((__v8du)__a ^ (__v8du)__b);
@@ -815,19 +793,19 @@ _mm512_maskz_xor_epi64(__mmask8 __k, __m512i __a, __m512i __b)
815
793
  return (__m512i)_mm512_mask_xor_epi64(_mm512_setzero_si512(), __k, __a, __b);
816
794
  }
817
795
 
818
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
796
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
819
797
  _mm512_and_si512(__m512i __a, __m512i __b)
820
798
  {
821
799
  return (__m512i)((__v8du)__a & (__v8du)__b);
822
800
  }
823
801
 
824
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
802
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
825
803
  _mm512_or_si512(__m512i __a, __m512i __b)
826
804
  {
827
805
  return (__m512i)((__v8du)__a | (__v8du)__b);
828
806
  }
829
807
 
830
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
808
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
831
809
  _mm512_xor_si512(__m512i __a, __m512i __b)
832
810
  {
833
811
  return (__m512i)((__v8du)__a ^ (__v8du)__b);
@@ -835,125 +813,107 @@ _mm512_xor_si512(__m512i __a, __m512i __b)
835
813
 
836
814
  /* Arithmetic */
837
815
 
838
- static __inline __m512d __DEFAULT_FN_ATTRS512
839
- _mm512_add_pd(__m512d __a, __m512d __b)
840
- {
816
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
817
+ _mm512_add_pd(__m512d __a, __m512d __b) {
841
818
  return (__m512d)((__v8df)__a + (__v8df)__b);
842
819
  }
843
820
 
844
- static __inline __m512 __DEFAULT_FN_ATTRS512
845
- _mm512_add_ps(__m512 __a, __m512 __b)
846
- {
821
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
822
+ _mm512_add_ps(__m512 __a, __m512 __b) {
847
823
  return (__m512)((__v16sf)__a + (__v16sf)__b);
848
824
  }
849
825
 
850
- static __inline __m512d __DEFAULT_FN_ATTRS512
851
- _mm512_mul_pd(__m512d __a, __m512d __b)
852
- {
826
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
827
+ _mm512_mul_pd(__m512d __a, __m512d __b) {
853
828
  return (__m512d)((__v8df)__a * (__v8df)__b);
854
829
  }
855
830
 
856
- static __inline __m512 __DEFAULT_FN_ATTRS512
857
- _mm512_mul_ps(__m512 __a, __m512 __b)
858
- {
831
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
832
+ _mm512_mul_ps(__m512 __a, __m512 __b) {
859
833
  return (__m512)((__v16sf)__a * (__v16sf)__b);
860
834
  }
861
835
 
862
- static __inline __m512d __DEFAULT_FN_ATTRS512
863
- _mm512_sub_pd(__m512d __a, __m512d __b)
864
- {
836
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
837
+ _mm512_sub_pd(__m512d __a, __m512d __b) {
865
838
  return (__m512d)((__v8df)__a - (__v8df)__b);
866
839
  }
867
840
 
868
- static __inline __m512 __DEFAULT_FN_ATTRS512
869
- _mm512_sub_ps(__m512 __a, __m512 __b)
870
- {
841
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
842
+ _mm512_sub_ps(__m512 __a, __m512 __b) {
871
843
  return (__m512)((__v16sf)__a - (__v16sf)__b);
872
844
  }
873
845
 
874
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
875
- _mm512_add_epi64 (__m512i __A, __m512i __B)
876
- {
846
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
847
+ _mm512_add_epi64(__m512i __A, __m512i __B) {
877
848
  return (__m512i) ((__v8du) __A + (__v8du) __B);
878
849
  }
879
850
 
880
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
881
- _mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
882
- {
851
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
852
+ _mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
883
853
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
884
854
  (__v8di)_mm512_add_epi64(__A, __B),
885
855
  (__v8di)__W);
886
856
  }
887
857
 
888
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
889
- _mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B)
890
- {
858
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
859
+ _mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B) {
891
860
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
892
861
  (__v8di)_mm512_add_epi64(__A, __B),
893
862
  (__v8di)_mm512_setzero_si512());
894
863
  }
895
864
 
896
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
897
- _mm512_sub_epi64 (__m512i __A, __m512i __B)
898
- {
865
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
866
+ _mm512_sub_epi64(__m512i __A, __m512i __B) {
899
867
  return (__m512i) ((__v8du) __A - (__v8du) __B);
900
868
  }
901
869
 
902
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
903
- _mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
904
- {
870
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
871
+ _mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
905
872
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
906
873
  (__v8di)_mm512_sub_epi64(__A, __B),
907
874
  (__v8di)__W);
908
875
  }
909
876
 
910
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
911
- _mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B)
912
- {
877
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
878
+ _mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B) {
913
879
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
914
880
  (__v8di)_mm512_sub_epi64(__A, __B),
915
881
  (__v8di)_mm512_setzero_si512());
916
882
  }
917
883
 
918
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
919
- _mm512_add_epi32 (__m512i __A, __m512i __B)
920
- {
884
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
885
+ _mm512_add_epi32(__m512i __A, __m512i __B) {
921
886
  return (__m512i) ((__v16su) __A + (__v16su) __B);
922
887
  }
923
888
 
924
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
925
- _mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
926
- {
889
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
890
+ _mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) {
927
891
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
928
892
  (__v16si)_mm512_add_epi32(__A, __B),
929
893
  (__v16si)__W);
930
894
  }
931
895
 
932
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
933
- _mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
934
- {
896
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
897
+ _mm512_maskz_add_epi32(__mmask16 __U, __m512i __A, __m512i __B) {
935
898
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
936
899
  (__v16si)_mm512_add_epi32(__A, __B),
937
900
  (__v16si)_mm512_setzero_si512());
938
901
  }
939
902
 
940
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
941
- _mm512_sub_epi32 (__m512i __A, __m512i __B)
942
- {
903
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
904
+ _mm512_sub_epi32(__m512i __A, __m512i __B) {
943
905
  return (__m512i) ((__v16su) __A - (__v16su) __B);
944
906
  }
945
907
 
946
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
947
- _mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
948
- {
908
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
909
+ _mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B) {
949
910
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
950
911
  (__v16si)_mm512_sub_epi32(__A, __B),
951
912
  (__v16si)__W);
952
913
  }
953
914
 
954
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
955
- _mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B)
956
- {
915
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
916
+ _mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B) {
957
917
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
958
918
  (__v16si)_mm512_sub_epi32(__A, __B),
959
919
  (__v16si)_mm512_setzero_si512());
@@ -973,24 +933,21 @@ _mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B)
973
933
  (__v8df)_mm512_max_round_pd((A), (B), (R)), \
974
934
  (__v8df)_mm512_setzero_pd()))
975
935
 
976
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
977
- _mm512_max_pd(__m512d __A, __m512d __B)
978
- {
936
+ static __inline__ __m512d
937
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_pd(__m512d __A, __m512d __B) {
979
938
  return (__m512d) __builtin_ia32_maxpd512((__v8df) __A, (__v8df) __B,
980
939
  _MM_FROUND_CUR_DIRECTION);
981
940
  }
982
941
 
983
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
984
- _mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
985
- {
942
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
943
+ _mm512_mask_max_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
986
944
  return (__m512d)__builtin_ia32_selectpd_512(__U,
987
945
  (__v8df)_mm512_max_pd(__A, __B),
988
946
  (__v8df)__W);
989
947
  }
990
948
 
991
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
992
- _mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
993
- {
949
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
950
+ _mm512_maskz_max_pd(__mmask8 __U, __m512d __A, __m512d __B) {
994
951
  return (__m512d)__builtin_ia32_selectpd_512(__U,
995
952
  (__v8df)_mm512_max_pd(__A, __B),
996
953
  (__v8df)_mm512_setzero_pd());
@@ -1010,31 +967,28 @@ _mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
1010
967
  (__v16sf)_mm512_max_round_ps((A), (B), (R)), \
1011
968
  (__v16sf)_mm512_setzero_ps()))
1012
969
 
1013
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1014
- _mm512_max_ps(__m512 __A, __m512 __B)
1015
- {
970
+ static __inline__ __m512
971
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_ps(__m512 __A, __m512 __B) {
1016
972
  return (__m512) __builtin_ia32_maxps512((__v16sf) __A, (__v16sf) __B,
1017
973
  _MM_FROUND_CUR_DIRECTION);
1018
974
  }
1019
975
 
1020
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1021
- _mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
1022
- {
976
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
977
+ _mm512_mask_max_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
1023
978
  return (__m512)__builtin_ia32_selectps_512(__U,
1024
979
  (__v16sf)_mm512_max_ps(__A, __B),
1025
980
  (__v16sf)__W);
1026
981
  }
1027
982
 
1028
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1029
- _mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B)
1030
- {
983
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
984
+ _mm512_maskz_max_ps(__mmask16 __U, __m512 __A, __m512 __B) {
1031
985
  return (__m512)__builtin_ia32_selectps_512(__U,
1032
986
  (__v16sf)_mm512_max_ps(__A, __B),
1033
987
  (__v16sf)_mm512_setzero_ps());
1034
988
  }
1035
989
 
1036
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1037
- _mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
990
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
991
+ _mm_mask_max_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
1038
992
  return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
1039
993
  (__v4sf) __B,
1040
994
  (__v4sf) __W,
@@ -1042,8 +996,8 @@ _mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
1042
996
  _MM_FROUND_CUR_DIRECTION);
1043
997
  }
1044
998
 
1045
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1046
- _mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) {
999
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1000
+ _mm_maskz_max_ss(__mmask8 __U, __m128 __A, __m128 __B) {
1047
1001
  return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
1048
1002
  (__v4sf) __B,
1049
1003
  (__v4sf) _mm_setzero_ps (),
@@ -1069,8 +1023,8 @@ _mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1069
1023
  (__v4sf)_mm_setzero_ps(), \
1070
1024
  (__mmask8)(U), (int)(R)))
1071
1025
 
1072
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1073
- _mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1026
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1027
+ _mm_mask_max_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
1074
1028
  return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
1075
1029
  (__v2df) __B,
1076
1030
  (__v2df) __W,
@@ -1078,8 +1032,8 @@ _mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1078
1032
  _MM_FROUND_CUR_DIRECTION);
1079
1033
  }
1080
1034
 
1081
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1082
- _mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1035
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1036
+ _mm_maskz_max_sd(__mmask8 __U, __m128d __A, __m128d __B) {
1083
1037
  return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
1084
1038
  (__v2df) __B,
1085
1039
  (__v2df) _mm_setzero_pd (),
@@ -1106,89 +1060,76 @@ _mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1106
1060
  (__mmask8)(U), (int)(R)))
1107
1061
 
1108
1062
  static __inline __m512i
1109
- __DEFAULT_FN_ATTRS512
1110
- _mm512_max_epi32(__m512i __A, __m512i __B)
1111
- {
1063
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_max_epi32(__m512i __A, __m512i __B) {
1112
1064
  return (__m512i)__builtin_elementwise_max((__v16si)__A, (__v16si)__B);
1113
1065
  }
1114
1066
 
1115
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1116
- _mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
1117
- {
1067
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1068
+ _mm512_mask_max_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
1118
1069
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1119
1070
  (__v16si)_mm512_max_epi32(__A, __B),
1120
1071
  (__v16si)__W);
1121
1072
  }
1122
1073
 
1123
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1124
- _mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
1125
- {
1074
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1075
+ _mm512_maskz_max_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
1126
1076
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1127
1077
  (__v16si)_mm512_max_epi32(__A, __B),
1128
1078
  (__v16si)_mm512_setzero_si512());
1129
1079
  }
1130
1080
 
1131
- static __inline __m512i __DEFAULT_FN_ATTRS512
1132
- _mm512_max_epu32(__m512i __A, __m512i __B)
1133
- {
1081
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1082
+ _mm512_max_epu32(__m512i __A, __m512i __B) {
1134
1083
  return (__m512i)__builtin_elementwise_max((__v16su)__A, (__v16su)__B);
1135
1084
  }
1136
1085
 
1137
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1138
- _mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
1139
- {
1086
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1087
+ _mm512_mask_max_epu32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
1140
1088
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1141
1089
  (__v16si)_mm512_max_epu32(__A, __B),
1142
1090
  (__v16si)__W);
1143
1091
  }
1144
1092
 
1145
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1146
- _mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
1147
- {
1093
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1094
+ _mm512_maskz_max_epu32(__mmask16 __M, __m512i __A, __m512i __B) {
1148
1095
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1149
1096
  (__v16si)_mm512_max_epu32(__A, __B),
1150
1097
  (__v16si)_mm512_setzero_si512());
1151
1098
  }
1152
1099
 
1153
- static __inline __m512i __DEFAULT_FN_ATTRS512
1154
- _mm512_max_epi64(__m512i __A, __m512i __B)
1155
- {
1100
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1101
+ _mm512_max_epi64(__m512i __A, __m512i __B) {
1156
1102
  return (__m512i)__builtin_elementwise_max((__v8di)__A, (__v8di)__B);
1157
1103
  }
1158
1104
 
1159
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1160
- _mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
1161
- {
1105
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1106
+ _mm512_mask_max_epi64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
1162
1107
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1163
1108
  (__v8di)_mm512_max_epi64(__A, __B),
1164
1109
  (__v8di)__W);
1165
1110
  }
1166
1111
 
1167
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1168
- _mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
1169
- {
1112
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1113
+ _mm512_maskz_max_epi64(__mmask8 __M, __m512i __A, __m512i __B) {
1170
1114
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1171
1115
  (__v8di)_mm512_max_epi64(__A, __B),
1172
1116
  (__v8di)_mm512_setzero_si512());
1173
1117
  }
1174
1118
 
1175
- static __inline __m512i __DEFAULT_FN_ATTRS512
1176
- _mm512_max_epu64(__m512i __A, __m512i __B)
1177
- {
1119
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1120
+ _mm512_max_epu64(__m512i __A, __m512i __B) {
1178
1121
  return (__m512i)__builtin_elementwise_max((__v8du)__A, (__v8du)__B);
1179
1122
  }
1180
1123
 
1181
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1182
- _mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
1183
- {
1124
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1125
+ _mm512_mask_max_epu64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
1184
1126
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1185
1127
  (__v8di)_mm512_max_epu64(__A, __B),
1186
1128
  (__v8di)__W);
1187
1129
  }
1188
1130
 
1189
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1190
- _mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
1191
- {
1131
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1132
+ _mm512_maskz_max_epu64(__mmask8 __M, __m512i __A, __m512i __B) {
1192
1133
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1193
1134
  (__v8di)_mm512_max_epu64(__A, __B),
1194
1135
  (__v8di)_mm512_setzero_si512());
@@ -1208,24 +1149,21 @@ _mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
1208
1149
  (__v8df)_mm512_min_round_pd((A), (B), (R)), \
1209
1150
  (__v8df)_mm512_setzero_pd()))
1210
1151
 
1211
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1212
- _mm512_min_pd(__m512d __A, __m512d __B)
1213
- {
1152
+ static __inline__ __m512d
1153
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_pd(__m512d __A, __m512d __B) {
1214
1154
  return (__m512d) __builtin_ia32_minpd512((__v8df) __A, (__v8df) __B,
1215
1155
  _MM_FROUND_CUR_DIRECTION);
1216
1156
  }
1217
1157
 
1218
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1219
- _mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
1220
- {
1158
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
1159
+ _mm512_mask_min_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
1221
1160
  return (__m512d)__builtin_ia32_selectpd_512(__U,
1222
1161
  (__v8df)_mm512_min_pd(__A, __B),
1223
1162
  (__v8df)__W);
1224
1163
  }
1225
1164
 
1226
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1227
- _mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
1228
- {
1165
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
1166
+ _mm512_maskz_min_pd(__mmask8 __U, __m512d __A, __m512d __B) {
1229
1167
  return (__m512d)__builtin_ia32_selectpd_512(__U,
1230
1168
  (__v8df)_mm512_min_pd(__A, __B),
1231
1169
  (__v8df)_mm512_setzero_pd());
@@ -1245,31 +1183,28 @@ _mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
1245
1183
  (__v16sf)_mm512_min_round_ps((A), (B), (R)), \
1246
1184
  (__v16sf)_mm512_setzero_ps()))
1247
1185
 
1248
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1249
- _mm512_min_ps(__m512 __A, __m512 __B)
1250
- {
1186
+ static __inline__ __m512
1187
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_ps(__m512 __A, __m512 __B) {
1251
1188
  return (__m512) __builtin_ia32_minps512((__v16sf) __A, (__v16sf) __B,
1252
1189
  _MM_FROUND_CUR_DIRECTION);
1253
1190
  }
1254
1191
 
1255
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1256
- _mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
1257
- {
1192
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
1193
+ _mm512_mask_min_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
1258
1194
  return (__m512)__builtin_ia32_selectps_512(__U,
1259
1195
  (__v16sf)_mm512_min_ps(__A, __B),
1260
1196
  (__v16sf)__W);
1261
1197
  }
1262
1198
 
1263
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1264
- _mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B)
1265
- {
1199
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
1200
+ _mm512_maskz_min_ps(__mmask16 __U, __m512 __A, __m512 __B) {
1266
1201
  return (__m512)__builtin_ia32_selectps_512(__U,
1267
1202
  (__v16sf)_mm512_min_ps(__A, __B),
1268
1203
  (__v16sf)_mm512_setzero_ps());
1269
1204
  }
1270
1205
 
1271
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1272
- _mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
1206
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1207
+ _mm_mask_min_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
1273
1208
  return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
1274
1209
  (__v4sf) __B,
1275
1210
  (__v4sf) __W,
@@ -1277,8 +1212,8 @@ _mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
1277
1212
  _MM_FROUND_CUR_DIRECTION);
1278
1213
  }
1279
1214
 
1280
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1281
- _mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1215
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1216
+ _mm_maskz_min_ss(__mmask8 __U, __m128 __A, __m128 __B) {
1282
1217
  return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
1283
1218
  (__v4sf) __B,
1284
1219
  (__v4sf) _mm_setzero_ps (),
@@ -1304,8 +1239,8 @@ _mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1304
1239
  (__v4sf)_mm_setzero_ps(), \
1305
1240
  (__mmask8)(U), (int)(R)))
1306
1241
 
1307
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1308
- _mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1242
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1243
+ _mm_mask_min_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
1309
1244
  return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
1310
1245
  (__v2df) __B,
1311
1246
  (__v2df) __W,
@@ -1313,8 +1248,8 @@ _mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1313
1248
  _MM_FROUND_CUR_DIRECTION);
1314
1249
  }
1315
1250
 
1316
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1317
- _mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1251
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1252
+ _mm_maskz_min_sd(__mmask8 __U, __m128d __A, __m128d __B) {
1318
1253
  return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
1319
1254
  (__v2df) __B,
1320
1255
  (__v2df) _mm_setzero_pd (),
@@ -1341,166 +1276,144 @@ _mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1341
1276
  (__mmask8)(U), (int)(R)))
1342
1277
 
1343
1278
  static __inline __m512i
1344
- __DEFAULT_FN_ATTRS512
1345
- _mm512_min_epi32(__m512i __A, __m512i __B)
1346
- {
1279
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_min_epi32(__m512i __A, __m512i __B) {
1347
1280
  return (__m512i)__builtin_elementwise_min((__v16si)__A, (__v16si)__B);
1348
1281
  }
1349
1282
 
1350
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1351
- _mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
1352
- {
1283
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1284
+ _mm512_mask_min_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
1353
1285
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1354
1286
  (__v16si)_mm512_min_epi32(__A, __B),
1355
1287
  (__v16si)__W);
1356
1288
  }
1357
1289
 
1358
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1359
- _mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
1360
- {
1290
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1291
+ _mm512_maskz_min_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
1361
1292
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1362
1293
  (__v16si)_mm512_min_epi32(__A, __B),
1363
1294
  (__v16si)_mm512_setzero_si512());
1364
1295
  }
1365
1296
 
1366
- static __inline __m512i __DEFAULT_FN_ATTRS512
1367
- _mm512_min_epu32(__m512i __A, __m512i __B)
1368
- {
1297
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1298
+ _mm512_min_epu32(__m512i __A, __m512i __B) {
1369
1299
  return (__m512i)__builtin_elementwise_min((__v16su)__A, (__v16su)__B);
1370
1300
  }
1371
1301
 
1372
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1373
- _mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
1374
- {
1302
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1303
+ _mm512_mask_min_epu32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
1375
1304
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1376
1305
  (__v16si)_mm512_min_epu32(__A, __B),
1377
1306
  (__v16si)__W);
1378
1307
  }
1379
1308
 
1380
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1381
- _mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
1382
- {
1309
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1310
+ _mm512_maskz_min_epu32(__mmask16 __M, __m512i __A, __m512i __B) {
1383
1311
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1384
1312
  (__v16si)_mm512_min_epu32(__A, __B),
1385
1313
  (__v16si)_mm512_setzero_si512());
1386
1314
  }
1387
1315
 
1388
- static __inline __m512i __DEFAULT_FN_ATTRS512
1389
- _mm512_min_epi64(__m512i __A, __m512i __B)
1390
- {
1316
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1317
+ _mm512_min_epi64(__m512i __A, __m512i __B) {
1391
1318
  return (__m512i)__builtin_elementwise_min((__v8di)__A, (__v8di)__B);
1392
1319
  }
1393
1320
 
1394
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1395
- _mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
1396
- {
1321
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1322
+ _mm512_mask_min_epi64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
1397
1323
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1398
1324
  (__v8di)_mm512_min_epi64(__A, __B),
1399
1325
  (__v8di)__W);
1400
1326
  }
1401
1327
 
1402
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1403
- _mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
1404
- {
1328
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1329
+ _mm512_maskz_min_epi64(__mmask8 __M, __m512i __A, __m512i __B) {
1405
1330
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1406
1331
  (__v8di)_mm512_min_epi64(__A, __B),
1407
1332
  (__v8di)_mm512_setzero_si512());
1408
1333
  }
1409
1334
 
1410
- static __inline __m512i __DEFAULT_FN_ATTRS512
1411
- _mm512_min_epu64(__m512i __A, __m512i __B)
1412
- {
1335
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1336
+ _mm512_min_epu64(__m512i __A, __m512i __B) {
1413
1337
  return (__m512i)__builtin_elementwise_min((__v8du)__A, (__v8du)__B);
1414
1338
  }
1415
1339
 
1416
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1417
- _mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
1418
- {
1340
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1341
+ _mm512_mask_min_epu64(__m512i __W, __mmask8 __M, __m512i __A, __m512i __B) {
1419
1342
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1420
1343
  (__v8di)_mm512_min_epu64(__A, __B),
1421
1344
  (__v8di)__W);
1422
1345
  }
1423
1346
 
1424
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1425
- _mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
1426
- {
1347
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1348
+ _mm512_maskz_min_epu64(__mmask8 __M, __m512i __A, __m512i __B) {
1427
1349
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1428
1350
  (__v8di)_mm512_min_epu64(__A, __B),
1429
1351
  (__v8di)_mm512_setzero_si512());
1430
1352
  }
1431
1353
 
1432
- static __inline __m512i __DEFAULT_FN_ATTRS512
1433
- _mm512_mul_epi32(__m512i __X, __m512i __Y)
1434
- {
1354
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1355
+ _mm512_mul_epi32(__m512i __X, __m512i __Y) {
1435
1356
  return (__m512i)__builtin_ia32_pmuldq512((__v16si)__X, (__v16si) __Y);
1436
1357
  }
1437
1358
 
1438
- static __inline __m512i __DEFAULT_FN_ATTRS512
1439
- _mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
1440
- {
1359
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1360
+ _mm512_mask_mul_epi32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
1441
1361
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1442
1362
  (__v8di)_mm512_mul_epi32(__X, __Y),
1443
1363
  (__v8di)__W);
1444
1364
  }
1445
1365
 
1446
- static __inline __m512i __DEFAULT_FN_ATTRS512
1447
- _mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y)
1448
- {
1366
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1367
+ _mm512_maskz_mul_epi32(__mmask8 __M, __m512i __X, __m512i __Y) {
1449
1368
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1450
1369
  (__v8di)_mm512_mul_epi32(__X, __Y),
1451
1370
  (__v8di)_mm512_setzero_si512 ());
1452
1371
  }
1453
1372
 
1454
- static __inline __m512i __DEFAULT_FN_ATTRS512
1455
- _mm512_mul_epu32(__m512i __X, __m512i __Y)
1456
- {
1373
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1374
+ _mm512_mul_epu32(__m512i __X, __m512i __Y) {
1457
1375
  return (__m512i)__builtin_ia32_pmuludq512((__v16si)__X, (__v16si)__Y);
1458
1376
  }
1459
1377
 
1460
- static __inline __m512i __DEFAULT_FN_ATTRS512
1461
- _mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
1462
- {
1378
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1379
+ _mm512_mask_mul_epu32(__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y) {
1463
1380
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1464
1381
  (__v8di)_mm512_mul_epu32(__X, __Y),
1465
1382
  (__v8di)__W);
1466
1383
  }
1467
1384
 
1468
- static __inline __m512i __DEFAULT_FN_ATTRS512
1469
- _mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y)
1470
- {
1385
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1386
+ _mm512_maskz_mul_epu32(__mmask8 __M, __m512i __X, __m512i __Y) {
1471
1387
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
1472
1388
  (__v8di)_mm512_mul_epu32(__X, __Y),
1473
1389
  (__v8di)_mm512_setzero_si512 ());
1474
1390
  }
1475
1391
 
1476
- static __inline __m512i __DEFAULT_FN_ATTRS512
1477
- _mm512_mullo_epi32 (__m512i __A, __m512i __B)
1478
- {
1392
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1393
+ _mm512_mullo_epi32(__m512i __A, __m512i __B) {
1479
1394
  return (__m512i) ((__v16su) __A * (__v16su) __B);
1480
1395
  }
1481
1396
 
1482
- static __inline __m512i __DEFAULT_FN_ATTRS512
1483
- _mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B)
1484
- {
1397
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1398
+ _mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B) {
1485
1399
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1486
1400
  (__v16si)_mm512_mullo_epi32(__A, __B),
1487
1401
  (__v16si)_mm512_setzero_si512());
1488
1402
  }
1489
1403
 
1490
- static __inline __m512i __DEFAULT_FN_ATTRS512
1491
- _mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
1492
- {
1404
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1405
+ _mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B) {
1493
1406
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
1494
1407
  (__v16si)_mm512_mullo_epi32(__A, __B),
1495
1408
  (__v16si)__W);
1496
1409
  }
1497
1410
 
1498
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1499
- _mm512_mullox_epi64 (__m512i __A, __m512i __B) {
1411
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1412
+ _mm512_mullox_epi64(__m512i __A, __m512i __B) {
1500
1413
  return (__m512i) ((__v8du) __A * (__v8du) __B);
1501
1414
  }
1502
1415
 
1503
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1416
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1504
1417
  _mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
1505
1418
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
1506
1419
  (__v8di)_mm512_mullox_epi64(__A, __B),
@@ -1520,26 +1433,19 @@ _mm512_mask_mullox_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B) {
1520
1433
  (__v8df)_mm512_sqrt_round_pd((A), (R)), \
1521
1434
  (__v8df)_mm512_setzero_pd()))
1522
1435
 
1523
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1524
- _mm512_sqrt_pd(__m512d __A)
1525
- {
1526
- return (__m512d)__builtin_ia32_sqrtpd512((__v8df)__A,
1527
- _MM_FROUND_CUR_DIRECTION);
1436
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512 _mm512_sqrt_pd(__m512d __A) {
1437
+ return (__m512d)__builtin_elementwise_sqrt((__v8df)__A);
1528
1438
  }
1529
1439
 
1530
1440
  static __inline__ __m512d __DEFAULT_FN_ATTRS512
1531
- _mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A)
1532
- {
1533
- return (__m512d)__builtin_ia32_selectpd_512(__U,
1534
- (__v8df)_mm512_sqrt_pd(__A),
1441
+ _mm512_mask_sqrt_pd(__m512d __W, __mmask8 __U, __m512d __A) {
1442
+ return (__m512d)__builtin_ia32_selectpd_512(__U, (__v8df)_mm512_sqrt_pd(__A),
1535
1443
  (__v8df)__W);
1536
1444
  }
1537
1445
 
1538
1446
  static __inline__ __m512d __DEFAULT_FN_ATTRS512
1539
- _mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
1540
- {
1541
- return (__m512d)__builtin_ia32_selectpd_512(__U,
1542
- (__v8df)_mm512_sqrt_pd(__A),
1447
+ _mm512_maskz_sqrt_pd(__mmask8 __U, __m512d __A) {
1448
+ return (__m512d)__builtin_ia32_selectpd_512(__U, (__v8df)_mm512_sqrt_pd(__A),
1543
1449
  (__v8df)_mm512_setzero_pd());
1544
1450
  }
1545
1451
 
@@ -1556,26 +1462,19 @@ _mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
1556
1462
  (__v16sf)_mm512_sqrt_round_ps((A), (R)), \
1557
1463
  (__v16sf)_mm512_setzero_ps()))
1558
1464
 
1559
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1560
- _mm512_sqrt_ps(__m512 __A)
1561
- {
1562
- return (__m512)__builtin_ia32_sqrtps512((__v16sf)__A,
1563
- _MM_FROUND_CUR_DIRECTION);
1465
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512 _mm512_sqrt_ps(__m512 __A) {
1466
+ return (__m512)__builtin_elementwise_sqrt((__v16sf)__A);
1564
1467
  }
1565
1468
 
1566
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1567
- _mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A)
1568
- {
1569
- return (__m512)__builtin_ia32_selectps_512(__U,
1570
- (__v16sf)_mm512_sqrt_ps(__A),
1469
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512
1470
+ _mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A) {
1471
+ return (__m512)__builtin_ia32_selectps_512(__U, (__v16sf)_mm512_sqrt_ps(__A),
1571
1472
  (__v16sf)__W);
1572
1473
  }
1573
1474
 
1574
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1575
- _mm512_maskz_sqrt_ps( __mmask16 __U, __m512 __A)
1576
- {
1577
- return (__m512)__builtin_ia32_selectps_512(__U,
1578
- (__v16sf)_mm512_sqrt_ps(__A),
1475
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512
1476
+ _mm512_maskz_sqrt_ps(__mmask16 __U, __m512 __A) {
1477
+ return (__m512)__builtin_ia32_selectps_512(__U, (__v16sf)_mm512_sqrt_ps(__A),
1579
1478
  (__v16sf)_mm512_setzero_ps());
1580
1479
  }
1581
1480
 
@@ -1866,58 +1765,52 @@ _mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A)
1866
1765
  _MM_FROUND_CUR_DIRECTION);
1867
1766
  }
1868
1767
 
1869
- static __inline __m512i __DEFAULT_FN_ATTRS512
1870
- _mm512_abs_epi64(__m512i __A)
1871
- {
1768
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1769
+ _mm512_abs_epi64(__m512i __A) {
1872
1770
  return (__m512i)__builtin_elementwise_abs((__v8di)__A);
1873
1771
  }
1874
1772
 
1875
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1876
- _mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
1877
- {
1773
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1774
+ _mm512_mask_abs_epi64(__m512i __W, __mmask8 __U, __m512i __A) {
1878
1775
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
1879
1776
  (__v8di)_mm512_abs_epi64(__A),
1880
1777
  (__v8di)__W);
1881
1778
  }
1882
1779
 
1883
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1884
- _mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A)
1885
- {
1780
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1781
+ _mm512_maskz_abs_epi64(__mmask8 __U, __m512i __A) {
1886
1782
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
1887
1783
  (__v8di)_mm512_abs_epi64(__A),
1888
1784
  (__v8di)_mm512_setzero_si512());
1889
1785
  }
1890
1786
 
1891
- static __inline __m512i __DEFAULT_FN_ATTRS512
1892
- _mm512_abs_epi32(__m512i __A)
1893
- {
1787
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1788
+ _mm512_abs_epi32(__m512i __A) {
1894
1789
  return (__m512i)__builtin_elementwise_abs((__v16si) __A);
1895
1790
  }
1896
1791
 
1897
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1898
- _mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
1899
- {
1792
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1793
+ _mm512_mask_abs_epi32(__m512i __W, __mmask16 __U, __m512i __A) {
1900
1794
  return (__m512i)__builtin_ia32_selectd_512(__U,
1901
1795
  (__v16si)_mm512_abs_epi32(__A),
1902
1796
  (__v16si)__W);
1903
1797
  }
1904
1798
 
1905
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
1906
- _mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A)
1907
- {
1799
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
1800
+ _mm512_maskz_abs_epi32(__mmask16 __U, __m512i __A) {
1908
1801
  return (__m512i)__builtin_ia32_selectd_512(__U,
1909
1802
  (__v16si)_mm512_abs_epi32(__A),
1910
1803
  (__v16si)_mm512_setzero_si512());
1911
1804
  }
1912
1805
 
1913
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1914
- _mm_mask_add_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
1806
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1807
+ _mm_mask_add_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
1915
1808
  __A = _mm_add_ss(__A, __B);
1916
1809
  return __builtin_ia32_selectss_128(__U, __A, __W);
1917
1810
  }
1918
1811
 
1919
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
1920
- _mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1812
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1813
+ _mm_maskz_add_ss(__mmask8 __U, __m128 __A, __m128 __B) {
1921
1814
  __A = _mm_add_ss(__A, __B);
1922
1815
  return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
1923
1816
  }
@@ -1940,14 +1833,14 @@ _mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1940
1833
  (__v4sf)_mm_setzero_ps(), \
1941
1834
  (__mmask8)(U), (int)(R)))
1942
1835
 
1943
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1944
- _mm_mask_add_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1836
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1837
+ _mm_mask_add_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
1945
1838
  __A = _mm_add_sd(__A, __B);
1946
1839
  return __builtin_ia32_selectsd_128(__U, __A, __W);
1947
1840
  }
1948
1841
 
1949
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
1950
- _mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1842
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1843
+ _mm_maskz_add_sd(__mmask8 __U, __m128d __A, __m128d __B) {
1951
1844
  __A = _mm_add_sd(__A, __B);
1952
1845
  return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
1953
1846
  }
@@ -1969,28 +1862,28 @@ _mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1969
1862
  (__v2df)_mm_setzero_pd(), \
1970
1863
  (__mmask8)(U), (int)(R)))
1971
1864
 
1972
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1865
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
1973
1866
  _mm512_mask_add_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
1974
1867
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
1975
1868
  (__v8df)_mm512_add_pd(__A, __B),
1976
1869
  (__v8df)__W);
1977
1870
  }
1978
1871
 
1979
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1872
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
1980
1873
  _mm512_maskz_add_pd(__mmask8 __U, __m512d __A, __m512d __B) {
1981
1874
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
1982
1875
  (__v8df)_mm512_add_pd(__A, __B),
1983
1876
  (__v8df)_mm512_setzero_pd());
1984
1877
  }
1985
1878
 
1986
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1879
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
1987
1880
  _mm512_mask_add_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
1988
1881
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
1989
1882
  (__v16sf)_mm512_add_ps(__A, __B),
1990
1883
  (__v16sf)__W);
1991
1884
  }
1992
1885
 
1993
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1886
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
1994
1887
  _mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) {
1995
1888
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
1996
1889
  (__v16sf)_mm512_add_ps(__A, __B),
@@ -2025,14 +1918,14 @@ _mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2025
1918
  (__v16sf)_mm512_add_round_ps((A), (B), (R)), \
2026
1919
  (__v16sf)_mm512_setzero_ps()))
2027
1920
 
2028
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2029
- _mm_mask_sub_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
1921
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1922
+ _mm_mask_sub_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
2030
1923
  __A = _mm_sub_ss(__A, __B);
2031
1924
  return __builtin_ia32_selectss_128(__U, __A, __W);
2032
1925
  }
2033
1926
 
2034
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2035
- _mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) {
1927
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
1928
+ _mm_maskz_sub_ss(__mmask8 __U, __m128 __A, __m128 __B) {
2036
1929
  __A = _mm_sub_ss(__A, __B);
2037
1930
  return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
2038
1931
  }
@@ -2054,14 +1947,14 @@ _mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) {
2054
1947
  (__v4sf)_mm_setzero_ps(), \
2055
1948
  (__mmask8)(U), (int)(R)))
2056
1949
 
2057
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2058
- _mm_mask_sub_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
1950
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1951
+ _mm_mask_sub_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
2059
1952
  __A = _mm_sub_sd(__A, __B);
2060
1953
  return __builtin_ia32_selectsd_128(__U, __A, __W);
2061
1954
  }
2062
1955
 
2063
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2064
- _mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) {
1956
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
1957
+ _mm_maskz_sub_sd(__mmask8 __U, __m128d __A, __m128d __B) {
2065
1958
  __A = _mm_sub_sd(__A, __B);
2066
1959
  return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
2067
1960
  }
@@ -2084,28 +1977,28 @@ _mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) {
2084
1977
  (__v2df)_mm_setzero_pd(), \
2085
1978
  (__mmask8)(U), (int)(R)))
2086
1979
 
2087
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1980
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2088
1981
  _mm512_mask_sub_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
2089
1982
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2090
1983
  (__v8df)_mm512_sub_pd(__A, __B),
2091
1984
  (__v8df)__W);
2092
1985
  }
2093
1986
 
2094
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
1987
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2095
1988
  _mm512_maskz_sub_pd(__mmask8 __U, __m512d __A, __m512d __B) {
2096
1989
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2097
1990
  (__v8df)_mm512_sub_pd(__A, __B),
2098
1991
  (__v8df)_mm512_setzero_pd());
2099
1992
  }
2100
1993
 
2101
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
1994
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2102
1995
  _mm512_mask_sub_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
2103
1996
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2104
1997
  (__v16sf)_mm512_sub_ps(__A, __B),
2105
1998
  (__v16sf)__W);
2106
1999
  }
2107
2000
 
2108
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2001
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2109
2002
  _mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2110
2003
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2111
2004
  (__v16sf)_mm512_sub_ps(__A, __B),
@@ -2140,14 +2033,14 @@ _mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2140
2033
  (__v16sf)_mm512_sub_round_ps((A), (B), (R)), \
2141
2034
  (__v16sf)_mm512_setzero_ps()))
2142
2035
 
2143
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2144
- _mm_mask_mul_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
2036
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
2037
+ _mm_mask_mul_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
2145
2038
  __A = _mm_mul_ss(__A, __B);
2146
2039
  return __builtin_ia32_selectss_128(__U, __A, __W);
2147
2040
  }
2148
2041
 
2149
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2150
- _mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) {
2042
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
2043
+ _mm_maskz_mul_ss(__mmask8 __U, __m128 __A, __m128 __B) {
2151
2044
  __A = _mm_mul_ss(__A, __B);
2152
2045
  return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
2153
2046
  }
@@ -2169,14 +2062,14 @@ _mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) {
2169
2062
  (__v4sf)_mm_setzero_ps(), \
2170
2063
  (__mmask8)(U), (int)(R)))
2171
2064
 
2172
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2173
- _mm_mask_mul_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
2065
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
2066
+ _mm_mask_mul_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
2174
2067
  __A = _mm_mul_sd(__A, __B);
2175
2068
  return __builtin_ia32_selectsd_128(__U, __A, __W);
2176
2069
  }
2177
2070
 
2178
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2179
- _mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) {
2071
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
2072
+ _mm_maskz_mul_sd(__mmask8 __U, __m128d __A, __m128d __B) {
2180
2073
  __A = _mm_mul_sd(__A, __B);
2181
2074
  return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
2182
2075
  }
@@ -2199,28 +2092,28 @@ _mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) {
2199
2092
  (__v2df)_mm_setzero_pd(), \
2200
2093
  (__mmask8)(U), (int)(R)))
2201
2094
 
2202
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2095
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2203
2096
  _mm512_mask_mul_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
2204
2097
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2205
2098
  (__v8df)_mm512_mul_pd(__A, __B),
2206
2099
  (__v8df)__W);
2207
2100
  }
2208
2101
 
2209
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2102
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2210
2103
  _mm512_maskz_mul_pd(__mmask8 __U, __m512d __A, __m512d __B) {
2211
2104
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2212
2105
  (__v8df)_mm512_mul_pd(__A, __B),
2213
2106
  (__v8df)_mm512_setzero_pd());
2214
2107
  }
2215
2108
 
2216
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2109
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2217
2110
  _mm512_mask_mul_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
2218
2111
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2219
2112
  (__v16sf)_mm512_mul_ps(__A, __B),
2220
2113
  (__v16sf)__W);
2221
2114
  }
2222
2115
 
2223
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2116
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2224
2117
  _mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2225
2118
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2226
2119
  (__v16sf)_mm512_mul_ps(__A, __B),
@@ -2255,14 +2148,14 @@ _mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2255
2148
  (__v16sf)_mm512_mul_round_ps((A), (B), (R)), \
2256
2149
  (__v16sf)_mm512_setzero_ps()))
2257
2150
 
2258
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2259
- _mm_mask_div_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
2151
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
2152
+ _mm_mask_div_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
2260
2153
  __A = _mm_div_ss(__A, __B);
2261
2154
  return __builtin_ia32_selectss_128(__U, __A, __W);
2262
2155
  }
2263
2156
 
2264
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
2265
- _mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) {
2157
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
2158
+ _mm_maskz_div_ss(__mmask8 __U, __m128 __A, __m128 __B) {
2266
2159
  __A = _mm_div_ss(__A, __B);
2267
2160
  return __builtin_ia32_selectss_128(__U, __A, _mm_setzero_ps());
2268
2161
  }
@@ -2285,14 +2178,14 @@ _mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) {
2285
2178
  (__v4sf)_mm_setzero_ps(), \
2286
2179
  (__mmask8)(U), (int)(R)))
2287
2180
 
2288
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2289
- _mm_mask_div_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
2181
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
2182
+ _mm_mask_div_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
2290
2183
  __A = _mm_div_sd(__A, __B);
2291
2184
  return __builtin_ia32_selectsd_128(__U, __A, __W);
2292
2185
  }
2293
2186
 
2294
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
2295
- _mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) {
2187
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
2188
+ _mm_maskz_div_sd(__mmask8 __U, __m128d __A, __m128d __B) {
2296
2189
  __A = _mm_div_sd(__A, __B);
2297
2190
  return __builtin_ia32_selectsd_128(__U, __A, _mm_setzero_pd());
2298
2191
  }
@@ -2315,40 +2208,38 @@ _mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) {
2315
2208
  (__v2df)_mm_setzero_pd(), \
2316
2209
  (__mmask8)(U), (int)(R)))
2317
2210
 
2318
- static __inline __m512d __DEFAULT_FN_ATTRS512
2319
- _mm512_div_pd(__m512d __a, __m512d __b)
2320
- {
2211
+ static __inline __m512d
2212
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_div_pd(__m512d __a, __m512d __b) {
2321
2213
  return (__m512d)((__v8df)__a/(__v8df)__b);
2322
2214
  }
2323
2215
 
2324
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2216
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2325
2217
  _mm512_mask_div_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
2326
2218
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2327
2219
  (__v8df)_mm512_div_pd(__A, __B),
2328
2220
  (__v8df)__W);
2329
2221
  }
2330
2222
 
2331
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2223
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2332
2224
  _mm512_maskz_div_pd(__mmask8 __U, __m512d __A, __m512d __B) {
2333
2225
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
2334
2226
  (__v8df)_mm512_div_pd(__A, __B),
2335
2227
  (__v8df)_mm512_setzero_pd());
2336
2228
  }
2337
2229
 
2338
- static __inline __m512 __DEFAULT_FN_ATTRS512
2339
- _mm512_div_ps(__m512 __a, __m512 __b)
2340
- {
2230
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2231
+ _mm512_div_ps(__m512 __a, __m512 __b) {
2341
2232
  return (__m512)((__v16sf)__a/(__v16sf)__b);
2342
2233
  }
2343
2234
 
2344
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2235
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2345
2236
  _mm512_mask_div_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
2346
2237
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2347
2238
  (__v16sf)_mm512_div_ps(__A, __B),
2348
2239
  (__v16sf)__W);
2349
2240
  }
2350
2241
 
2351
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2242
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2352
2243
  _mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2353
2244
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
2354
2245
  (__v16sf)_mm512_div_ps(__A, __B),
@@ -2530,125 +2421,104 @@ _mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) {
2530
2421
  -(__v8df)(__m512d)(C), \
2531
2422
  (__mmask8)(U), (int)(R)))
2532
2423
 
2424
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2425
+ _mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C) {
2426
+ return (__m512d)__builtin_elementwise_fma((__v8df)__A, (__v8df)__B,
2427
+ (__v8df)__C);
2428
+ }
2533
2429
 
2534
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2535
- _mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C)
2536
- {
2537
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2538
- (__v8df) __B,
2539
- (__v8df) __C,
2540
- (__mmask8) -1,
2541
- _MM_FROUND_CUR_DIRECTION);
2430
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2431
+ _mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
2432
+ return (__m512d)__builtin_ia32_selectpd_512(
2433
+ (__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C), (__v8df)__A);
2542
2434
  }
2543
2435
 
2544
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2545
- _mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
2546
- {
2547
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2548
- (__v8df) __B,
2549
- (__v8df) __C,
2550
- (__mmask8) __U,
2551
- _MM_FROUND_CUR_DIRECTION);
2436
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2437
+ _mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
2438
+ return (__m512d)__builtin_ia32_selectpd_512(
2439
+ (__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C), (__v8df)__C);
2552
2440
  }
2553
2441
 
2554
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2555
- _mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
2556
- {
2557
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A,
2558
- (__v8df) __B,
2559
- (__v8df) __C,
2560
- (__mmask8) __U,
2561
- _MM_FROUND_CUR_DIRECTION);
2442
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2443
+ _mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
2444
+ return (__m512d)__builtin_ia32_selectpd_512(
2445
+ (__mmask8)__U, (__v8df)_mm512_fmadd_pd(__A, __B, __C),
2446
+ (__v8df)_mm512_setzero_pd());
2562
2447
  }
2563
2448
 
2564
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2565
- _mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
2566
- {
2567
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
2568
- (__v8df) __B,
2569
- (__v8df) __C,
2570
- (__mmask8) __U,
2571
- _MM_FROUND_CUR_DIRECTION);
2449
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2450
+ _mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C) {
2451
+ return (__m512d)__builtin_elementwise_fma((__v8df)__A, (__v8df)__B,
2452
+ -(__v8df)__C);
2572
2453
  }
2573
2454
 
2574
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2575
- _mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C)
2576
- {
2577
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2578
- (__v8df) __B,
2579
- -(__v8df) __C,
2580
- (__mmask8) -1,
2581
- _MM_FROUND_CUR_DIRECTION);
2455
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2456
+ _mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
2457
+ return (__m512d)__builtin_ia32_selectpd_512(
2458
+ (__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C), (__v8df)__A);
2582
2459
  }
2583
2460
 
2584
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2585
- _mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
2586
- {
2587
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2588
- (__v8df) __B,
2589
- -(__v8df) __C,
2590
- (__mmask8) __U,
2591
- _MM_FROUND_CUR_DIRECTION);
2461
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2462
+ _mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
2463
+ return (__m512d)__builtin_ia32_selectpd_512(
2464
+ (__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C), (__v8df)__C);
2592
2465
  }
2593
2466
 
2594
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2595
- _mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
2596
- {
2597
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
2598
- (__v8df) __B,
2599
- -(__v8df) __C,
2600
- (__mmask8) __U,
2601
- _MM_FROUND_CUR_DIRECTION);
2467
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2468
+ _mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
2469
+ return (__m512d)__builtin_ia32_selectpd_512(
2470
+ (__mmask8)__U, (__v8df)_mm512_fmsub_pd(__A, __B, __C),
2471
+ (__v8df)_mm512_setzero_pd());
2602
2472
  }
2603
2473
 
2604
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2605
- _mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C)
2606
- {
2607
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2608
- -(__v8df) __B,
2609
- (__v8df) __C,
2610
- (__mmask8) -1,
2611
- _MM_FROUND_CUR_DIRECTION);
2474
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2475
+ _mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C) {
2476
+ return (__m512d)__builtin_elementwise_fma(-(__v8df)__A, (__v8df)__B,
2477
+ (__v8df)__C);
2612
2478
  }
2613
2479
 
2614
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2615
- _mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
2616
- {
2617
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A,
2618
- (__v8df) __B,
2619
- (__v8df) __C,
2620
- (__mmask8) __U,
2621
- _MM_FROUND_CUR_DIRECTION);
2480
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2481
+ _mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
2482
+ return (__m512d)__builtin_ia32_selectpd_512(
2483
+ (__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C), (__v8df)__A);
2622
2484
  }
2623
2485
 
2624
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2625
- _mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
2626
- {
2627
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
2628
- (__v8df) __B,
2629
- (__v8df) __C,
2630
- (__mmask8) __U,
2631
- _MM_FROUND_CUR_DIRECTION);
2486
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2487
+ _mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
2488
+ return (__m512d)__builtin_ia32_selectpd_512(
2489
+ (__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C), (__v8df)__C);
2632
2490
  }
2633
2491
 
2634
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2635
- _mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C)
2636
- {
2637
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
2638
- -(__v8df) __B,
2639
- -(__v8df) __C,
2640
- (__mmask8) -1,
2641
- _MM_FROUND_CUR_DIRECTION);
2492
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2493
+ _mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
2494
+ return (__m512d)__builtin_ia32_selectpd_512(
2495
+ (__mmask8)__U, (__v8df)_mm512_fnmadd_pd(__A, __B, __C),
2496
+ (__v8df)_mm512_setzero_pd());
2642
2497
  }
2643
2498
 
2644
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
2645
- _mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
2646
- {
2647
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
2648
- (__v8df) __B,
2649
- -(__v8df) __C,
2650
- (__mmask8) __U,
2651
- _MM_FROUND_CUR_DIRECTION);
2499
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2500
+ _mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C) {
2501
+ return (__m512d)__builtin_elementwise_fma(-(__v8df)__A, (__v8df)__B,
2502
+ -(__v8df)__C);
2503
+ }
2504
+
2505
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2506
+ _mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C) {
2507
+ return (__m512d)__builtin_ia32_selectpd_512(
2508
+ (__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C), (__v8df)__A);
2509
+ }
2510
+
2511
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2512
+ _mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U) {
2513
+ return (__m512d)__builtin_ia32_selectpd_512(
2514
+ (__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C), (__v8df)__C);
2515
+ }
2516
+
2517
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
2518
+ _mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C) {
2519
+ return (__m512d)__builtin_ia32_selectpd_512(
2520
+ (__mmask8)__U, (__v8df)_mm512_fnmsub_pd(__A, __B, __C),
2521
+ (__v8df)_mm512_setzero_pd());
2652
2522
  }
2653
2523
 
2654
2524
  #define _mm512_fmadd_round_ps(A, B, C, R) \
@@ -2734,125 +2604,104 @@ _mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
2734
2604
  -(__v16sf)(__m512)(C), \
2735
2605
  (__mmask16)(U), (int)(R)))
2736
2606
 
2607
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2608
+ _mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C) {
2609
+ return (__m512)__builtin_elementwise_fma((__v16sf)__A, (__v16sf)__B,
2610
+ (__v16sf)__C);
2611
+ }
2737
2612
 
2738
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2739
- _mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C)
2740
- {
2741
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2742
- (__v16sf) __B,
2743
- (__v16sf) __C,
2744
- (__mmask16) -1,
2745
- _MM_FROUND_CUR_DIRECTION);
2613
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2614
+ _mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
2615
+ return (__m512)__builtin_ia32_selectps_512(
2616
+ (__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C), (__v16sf)__A);
2746
2617
  }
2747
2618
 
2748
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2749
- _mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
2750
- {
2751
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2752
- (__v16sf) __B,
2753
- (__v16sf) __C,
2754
- (__mmask16) __U,
2755
- _MM_FROUND_CUR_DIRECTION);
2619
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2620
+ _mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
2621
+ return (__m512)__builtin_ia32_selectps_512(
2622
+ (__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C), (__v16sf)__C);
2756
2623
  }
2757
2624
 
2758
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2759
- _mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
2760
- {
2761
- return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A,
2762
- (__v16sf) __B,
2763
- (__v16sf) __C,
2764
- (__mmask16) __U,
2765
- _MM_FROUND_CUR_DIRECTION);
2625
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2626
+ _mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
2627
+ return (__m512)__builtin_ia32_selectps_512(
2628
+ (__mmask16)__U, (__v16sf)_mm512_fmadd_ps(__A, __B, __C),
2629
+ (__v16sf)_mm512_setzero_ps());
2766
2630
  }
2767
2631
 
2768
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2769
- _mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
2770
- {
2771
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
2772
- (__v16sf) __B,
2773
- (__v16sf) __C,
2774
- (__mmask16) __U,
2775
- _MM_FROUND_CUR_DIRECTION);
2632
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2633
+ _mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C) {
2634
+ return (__m512)__builtin_elementwise_fma((__v16sf)__A, (__v16sf)__B,
2635
+ -(__v16sf)__C);
2776
2636
  }
2777
2637
 
2778
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2779
- _mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C)
2780
- {
2781
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2782
- (__v16sf) __B,
2783
- -(__v16sf) __C,
2784
- (__mmask16) -1,
2785
- _MM_FROUND_CUR_DIRECTION);
2638
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2639
+ _mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
2640
+ return (__m512)__builtin_ia32_selectps_512(
2641
+ (__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C), (__v16sf)__A);
2786
2642
  }
2787
2643
 
2788
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2789
- _mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
2790
- {
2791
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2792
- (__v16sf) __B,
2793
- -(__v16sf) __C,
2794
- (__mmask16) __U,
2795
- _MM_FROUND_CUR_DIRECTION);
2644
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2645
+ _mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
2646
+ return (__m512)__builtin_ia32_selectps_512(
2647
+ (__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C), (__v16sf)__C);
2796
2648
  }
2797
2649
 
2798
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2799
- _mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
2800
- {
2801
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
2802
- (__v16sf) __B,
2803
- -(__v16sf) __C,
2804
- (__mmask16) __U,
2805
- _MM_FROUND_CUR_DIRECTION);
2650
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2651
+ _mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
2652
+ return (__m512)__builtin_ia32_selectps_512(
2653
+ (__mmask16)__U, (__v16sf)_mm512_fmsub_ps(__A, __B, __C),
2654
+ (__v16sf)_mm512_setzero_ps());
2806
2655
  }
2807
2656
 
2808
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2809
- _mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C)
2810
- {
2811
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2812
- -(__v16sf) __B,
2813
- (__v16sf) __C,
2814
- (__mmask16) -1,
2815
- _MM_FROUND_CUR_DIRECTION);
2657
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2658
+ _mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C) {
2659
+ return (__m512)__builtin_elementwise_fma(-(__v16sf)__A, (__v16sf)__B,
2660
+ (__v16sf)__C);
2816
2661
  }
2817
2662
 
2818
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2819
- _mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
2820
- {
2821
- return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A,
2822
- (__v16sf) __B,
2823
- (__v16sf) __C,
2824
- (__mmask16) __U,
2825
- _MM_FROUND_CUR_DIRECTION);
2663
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2664
+ _mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
2665
+ return (__m512)__builtin_ia32_selectps_512(
2666
+ (__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C), (__v16sf)__A);
2826
2667
  }
2827
2668
 
2828
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2829
- _mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
2830
- {
2831
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
2832
- (__v16sf) __B,
2833
- (__v16sf) __C,
2834
- (__mmask16) __U,
2835
- _MM_FROUND_CUR_DIRECTION);
2669
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2670
+ _mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
2671
+ return (__m512)__builtin_ia32_selectps_512(
2672
+ (__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C), (__v16sf)__C);
2836
2673
  }
2837
2674
 
2838
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2839
- _mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C)
2840
- {
2841
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
2842
- -(__v16sf) __B,
2843
- -(__v16sf) __C,
2844
- (__mmask16) -1,
2845
- _MM_FROUND_CUR_DIRECTION);
2675
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2676
+ _mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
2677
+ return (__m512)__builtin_ia32_selectps_512(
2678
+ (__mmask16)__U, (__v16sf)_mm512_fnmadd_ps(__A, __B, __C),
2679
+ (__v16sf)_mm512_setzero_ps());
2846
2680
  }
2847
2681
 
2848
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
2849
- _mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
2850
- {
2851
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
2852
- (__v16sf) __B,
2853
- -(__v16sf) __C,
2854
- (__mmask16) __U,
2855
- _MM_FROUND_CUR_DIRECTION);
2682
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2683
+ _mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C) {
2684
+ return (__m512)__builtin_elementwise_fma(-(__v16sf)__A, (__v16sf)__B,
2685
+ -(__v16sf)__C);
2686
+ }
2687
+
2688
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2689
+ _mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C) {
2690
+ return (__m512)__builtin_ia32_selectps_512(
2691
+ (__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C), (__v16sf)__A);
2692
+ }
2693
+
2694
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2695
+ _mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U) {
2696
+ return (__m512)__builtin_ia32_selectps_512(
2697
+ (__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C), (__v16sf)__C);
2698
+ }
2699
+
2700
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
2701
+ _mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C) {
2702
+ return (__m512)__builtin_ia32_selectps_512(
2703
+ (__mmask16)__U, (__v16sf)_mm512_fnmsub_ps(__A, __B, __C),
2704
+ (__v16sf)_mm512_setzero_ps());
2856
2705
  }
2857
2706
 
2858
2707
  #define _mm512_fmaddsub_round_pd(A, B, C, R) \
@@ -3099,32 +2948,11 @@ _mm512_maskz_fmsubadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
3099
2948
  (__v8df)(__m512d)(C), \
3100
2949
  (__mmask8)(U), (int)(R)))
3101
2950
 
3102
-
3103
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3104
- _mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
3105
- {
3106
- return (__m512d)__builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
3107
- (__v8df) __B,
3108
- (__v8df) __C,
3109
- (__mmask8) __U,
3110
- _MM_FROUND_CUR_DIRECTION);
3111
- }
3112
-
3113
2951
  #define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) \
3114
2952
  ((__m512)__builtin_ia32_vfmsubps512_mask3((__v16sf)(__m512)(A), \
3115
2953
  (__v16sf)(__m512)(B), \
3116
2954
  (__v16sf)(__m512)(C), \
3117
- (__mmask16)(U), (int)(R)))
3118
-
3119
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3120
- _mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
3121
- {
3122
- return (__m512)__builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
3123
- (__v16sf) __B,
3124
- (__v16sf) __C,
3125
- (__mmask16) __U,
3126
- _MM_FROUND_CUR_DIRECTION);
3127
- }
2955
+ (__mmask16)(U), (int)(R)))
3128
2956
 
3129
2957
  #define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) \
3130
2958
  ((__m512d)__builtin_ia32_vfmsubaddpd512_mask3((__v8df)(__m512d)(A), \
@@ -3166,34 +2994,12 @@ _mm512_mask3_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
3166
2994
  (__v8df)(__m512d)(C), \
3167
2995
  (__mmask8)(U), (int)(R)))
3168
2996
 
3169
-
3170
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3171
- _mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
3172
- {
3173
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
3174
- -(__v8df) __B,
3175
- (__v8df) __C,
3176
- (__mmask8) __U,
3177
- _MM_FROUND_CUR_DIRECTION);
3178
- }
3179
-
3180
2997
  #define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) \
3181
2998
  ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
3182
2999
  -(__v16sf)(__m512)(B), \
3183
3000
  (__v16sf)(__m512)(C), \
3184
3001
  (__mmask16)(U), (int)(R)))
3185
3002
 
3186
-
3187
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3188
- _mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
3189
- {
3190
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
3191
- -(__v16sf) __B,
3192
- (__v16sf) __C,
3193
- (__mmask16) __U,
3194
- _MM_FROUND_CUR_DIRECTION);
3195
- }
3196
-
3197
3003
  #define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) \
3198
3004
  ((__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
3199
3005
  -(__v8df)(__m512d)(B), \
@@ -3207,27 +3013,6 @@ _mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
3207
3013
  (__v8df)(__m512d)(C), \
3208
3014
  (__mmask8)(U), (int)(R)))
3209
3015
 
3210
-
3211
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3212
- _mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
3213
- {
3214
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
3215
- -(__v8df) __B,
3216
- -(__v8df) __C,
3217
- (__mmask8) __U,
3218
- _MM_FROUND_CUR_DIRECTION);
3219
- }
3220
-
3221
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3222
- _mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
3223
- {
3224
- return (__m512d) __builtin_ia32_vfmsubpd512_mask3 (-(__v8df) __A,
3225
- (__v8df) __B,
3226
- (__v8df) __C,
3227
- (__mmask8) __U,
3228
- _MM_FROUND_CUR_DIRECTION);
3229
- }
3230
-
3231
3016
  #define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) \
3232
3017
  ((__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
3233
3018
  -(__v16sf)(__m512)(B), \
@@ -3241,94 +3026,63 @@ _mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
3241
3026
  (__v16sf)(__m512)(C), \
3242
3027
  (__mmask16)(U), (int)(R)))
3243
3028
 
3244
-
3245
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3246
- _mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
3247
- {
3248
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
3249
- -(__v16sf) __B,
3250
- -(__v16sf) __C,
3251
- (__mmask16) __U,
3252
- _MM_FROUND_CUR_DIRECTION);
3253
- }
3254
-
3255
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3256
- _mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
3257
- {
3258
- return (__m512) __builtin_ia32_vfmsubps512_mask3 (-(__v16sf) __A,
3259
- (__v16sf) __B,
3260
- (__v16sf) __C,
3261
- (__mmask16) __U,
3262
- _MM_FROUND_CUR_DIRECTION);
3263
- }
3264
-
3265
-
3266
-
3267
3029
  /* Vector permutations */
3268
3030
 
3269
- static __inline __m512i __DEFAULT_FN_ATTRS512
3270
- _mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B)
3271
- {
3031
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3032
+ _mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B) {
3272
3033
  return (__m512i)__builtin_ia32_vpermi2vard512((__v16si)__A, (__v16si) __I,
3273
3034
  (__v16si) __B);
3274
3035
  }
3275
3036
 
3276
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3037
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3277
3038
  _mm512_mask_permutex2var_epi32(__m512i __A, __mmask16 __U, __m512i __I,
3278
- __m512i __B)
3279
- {
3039
+ __m512i __B) {
3280
3040
  return (__m512i)__builtin_ia32_selectd_512(__U,
3281
3041
  (__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
3282
3042
  (__v16si)__A);
3283
3043
  }
3284
3044
 
3285
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3045
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3286
3046
  _mm512_mask2_permutex2var_epi32(__m512i __A, __m512i __I, __mmask16 __U,
3287
- __m512i __B)
3288
- {
3047
+ __m512i __B) {
3289
3048
  return (__m512i)__builtin_ia32_selectd_512(__U,
3290
3049
  (__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
3291
3050
  (__v16si)__I);
3292
3051
  }
3293
3052
 
3294
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3053
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3295
3054
  _mm512_maskz_permutex2var_epi32(__mmask16 __U, __m512i __A, __m512i __I,
3296
- __m512i __B)
3297
- {
3055
+ __m512i __B) {
3298
3056
  return (__m512i)__builtin_ia32_selectd_512(__U,
3299
3057
  (__v16si)_mm512_permutex2var_epi32(__A, __I, __B),
3300
3058
  (__v16si)_mm512_setzero_si512());
3301
3059
  }
3302
3060
 
3303
- static __inline __m512i __DEFAULT_FN_ATTRS512
3304
- _mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B)
3305
- {
3061
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3062
+ _mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B) {
3306
3063
  return (__m512i)__builtin_ia32_vpermi2varq512((__v8di)__A, (__v8di) __I,
3307
3064
  (__v8di) __B);
3308
3065
  }
3309
3066
 
3310
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3067
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3311
3068
  _mm512_mask_permutex2var_epi64(__m512i __A, __mmask8 __U, __m512i __I,
3312
- __m512i __B)
3313
- {
3069
+ __m512i __B) {
3314
3070
  return (__m512i)__builtin_ia32_selectq_512(__U,
3315
3071
  (__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
3316
3072
  (__v8di)__A);
3317
3073
  }
3318
3074
 
3319
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3075
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3320
3076
  _mm512_mask2_permutex2var_epi64(__m512i __A, __m512i __I, __mmask8 __U,
3321
- __m512i __B)
3322
- {
3077
+ __m512i __B) {
3323
3078
  return (__m512i)__builtin_ia32_selectq_512(__U,
3324
3079
  (__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
3325
3080
  (__v8di)__I);
3326
3081
  }
3327
3082
 
3328
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
3083
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3329
3084
  _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
3330
- __m512i __B)
3331
- {
3085
+ __m512i __B) {
3332
3086
  return (__m512i)__builtin_ia32_selectq_512(__U,
3333
3087
  (__v8di)_mm512_permutex2var_epi64(__A, __I, __B),
3334
3088
  (__v8di)_mm512_setzero_si512());
@@ -3363,10 +3117,10 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
3363
3117
  (__v16si)_mm512_setzero_si512()))
3364
3118
  /* Vector Extract */
3365
3119
 
3366
- #define _mm512_extractf64x4_pd(A, I) \
3367
- ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I), \
3368
- (__v4df)_mm256_undefined_pd(), \
3369
- (__mmask8)-1))
3120
+ #define _mm512_extractf64x4_pd(A, I) \
3121
+ ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(I), \
3122
+ (__v4df)_mm256_setzero_pd(), \
3123
+ (__mmask8) - 1))
3370
3124
 
3371
3125
  #define _mm512_mask_extractf64x4_pd(W, U, A, imm) \
3372
3126
  ((__m256d)__builtin_ia32_extractf64x4_mask((__v8df)(__m512d)(A), (int)(imm), \
@@ -3378,10 +3132,10 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
3378
3132
  (__v4df)_mm256_setzero_pd(), \
3379
3133
  (__mmask8)(U)))
3380
3134
 
3381
- #define _mm512_extractf32x4_ps(A, I) \
3382
- ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I), \
3383
- (__v4sf)_mm_undefined_ps(), \
3384
- (__mmask8)-1))
3135
+ #define _mm512_extractf32x4_ps(A, I) \
3136
+ ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(I), \
3137
+ (__v4sf)_mm_setzero_ps(), \
3138
+ (__mmask8) - 1))
3385
3139
 
3386
3140
  #define _mm512_mask_extractf32x4_ps(W, U, A, imm) \
3387
3141
  ((__m128)__builtin_ia32_extractf32x4_mask((__v16sf)(__m512)(A), (int)(imm), \
@@ -3395,33 +3149,29 @@ _mm512_maskz_permutex2var_epi64(__mmask8 __U, __m512i __A, __m512i __I,
3395
3149
 
3396
3150
  /* Vector Blend */
3397
3151
 
3398
- static __inline __m512d __DEFAULT_FN_ATTRS512
3399
- _mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W)
3400
- {
3152
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3153
+ _mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W) {
3401
3154
  return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
3402
3155
  (__v8df) __W,
3403
3156
  (__v8df) __A);
3404
3157
  }
3405
3158
 
3406
- static __inline __m512 __DEFAULT_FN_ATTRS512
3407
- _mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W)
3408
- {
3159
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3160
+ _mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W) {
3409
3161
  return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
3410
3162
  (__v16sf) __W,
3411
3163
  (__v16sf) __A);
3412
3164
  }
3413
3165
 
3414
- static __inline __m512i __DEFAULT_FN_ATTRS512
3415
- _mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W)
3416
- {
3166
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3167
+ _mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W) {
3417
3168
  return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U,
3418
3169
  (__v8di) __W,
3419
3170
  (__v8di) __A);
3420
3171
  }
3421
3172
 
3422
- static __inline __m512i __DEFAULT_FN_ATTRS512
3423
- _mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W)
3424
- {
3173
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3174
+ _mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W) {
3425
3175
  return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U,
3426
3176
  (__v16si) __W,
3427
3177
  (__v16si) __A);
@@ -3615,115 +3365,99 @@ _mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A)
3615
3365
  (__v16sf)_mm512_setzero_ps(), \
3616
3366
  (__mmask16)(U), (int)(R)))
3617
3367
 
3618
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3619
- _mm512_cvtepu32_ps (__m512i __A)
3620
- {
3368
+ static __inline__ __m512
3369
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtepu32_ps(__m512i __A) {
3621
3370
  return (__m512)__builtin_convertvector((__v16su)__A, __v16sf);
3622
3371
  }
3623
3372
 
3624
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3625
- _mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A)
3626
- {
3373
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3374
+ _mm512_mask_cvtepu32_ps(__m512 __W, __mmask16 __U, __m512i __A) {
3627
3375
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
3628
3376
  (__v16sf)_mm512_cvtepu32_ps(__A),
3629
3377
  (__v16sf)__W);
3630
3378
  }
3631
3379
 
3632
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3633
- _mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A)
3634
- {
3380
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3381
+ _mm512_maskz_cvtepu32_ps(__mmask16 __U, __m512i __A) {
3635
3382
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
3636
3383
  (__v16sf)_mm512_cvtepu32_ps(__A),
3637
3384
  (__v16sf)_mm512_setzero_ps());
3638
3385
  }
3639
3386
 
3640
- static __inline __m512d __DEFAULT_FN_ATTRS512
3641
- _mm512_cvtepi32_pd(__m256i __A)
3642
- {
3387
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3388
+ _mm512_cvtepi32_pd(__m256i __A) {
3643
3389
  return (__m512d)__builtin_convertvector((__v8si)__A, __v8df);
3644
3390
  }
3645
3391
 
3646
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3647
- _mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A)
3648
- {
3392
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3393
+ _mm512_mask_cvtepi32_pd(__m512d __W, __mmask8 __U, __m256i __A) {
3649
3394
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
3650
3395
  (__v8df)_mm512_cvtepi32_pd(__A),
3651
3396
  (__v8df)__W);
3652
3397
  }
3653
3398
 
3654
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3655
- _mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A)
3656
- {
3399
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3400
+ _mm512_maskz_cvtepi32_pd(__mmask8 __U, __m256i __A) {
3657
3401
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
3658
3402
  (__v8df)_mm512_cvtepi32_pd(__A),
3659
3403
  (__v8df)_mm512_setzero_pd());
3660
3404
  }
3661
3405
 
3662
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3663
- _mm512_cvtepi32lo_pd(__m512i __A)
3664
- {
3406
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3407
+ _mm512_cvtepi32lo_pd(__m512i __A) {
3665
3408
  return (__m512d) _mm512_cvtepi32_pd(_mm512_castsi512_si256(__A));
3666
3409
  }
3667
3410
 
3668
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3669
- _mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
3670
- {
3411
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3412
+ _mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U, __m512i __A) {
3671
3413
  return (__m512d) _mm512_mask_cvtepi32_pd(__W, __U, _mm512_castsi512_si256(__A));
3672
3414
  }
3673
3415
 
3674
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3675
- _mm512_cvtepi32_ps (__m512i __A)
3676
- {
3416
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3417
+ _mm512_cvtepi32_ps(__m512i __A) {
3677
3418
  return (__m512)__builtin_convertvector((__v16si)__A, __v16sf);
3678
3419
  }
3679
3420
 
3680
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3681
- _mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A)
3682
- {
3421
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3422
+ _mm512_mask_cvtepi32_ps(__m512 __W, __mmask16 __U, __m512i __A) {
3683
3423
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
3684
3424
  (__v16sf)_mm512_cvtepi32_ps(__A),
3685
3425
  (__v16sf)__W);
3686
3426
  }
3687
3427
 
3688
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3689
- _mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A)
3690
- {
3428
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3429
+ _mm512_maskz_cvtepi32_ps(__mmask16 __U, __m512i __A) {
3691
3430
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
3692
3431
  (__v16sf)_mm512_cvtepi32_ps(__A),
3693
3432
  (__v16sf)_mm512_setzero_ps());
3694
3433
  }
3695
3434
 
3696
- static __inline __m512d __DEFAULT_FN_ATTRS512
3697
- _mm512_cvtepu32_pd(__m256i __A)
3698
- {
3435
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3436
+ _mm512_cvtepu32_pd(__m256i __A) {
3699
3437
  return (__m512d)__builtin_convertvector((__v8su)__A, __v8df);
3700
3438
  }
3701
3439
 
3702
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3703
- _mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A)
3704
- {
3440
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3441
+ _mm512_mask_cvtepu32_pd(__m512d __W, __mmask8 __U, __m256i __A) {
3705
3442
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
3706
3443
  (__v8df)_mm512_cvtepu32_pd(__A),
3707
3444
  (__v8df)__W);
3708
3445
  }
3709
3446
 
3710
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3711
- _mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A)
3712
- {
3447
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3448
+ _mm512_maskz_cvtepu32_pd(__mmask8 __U, __m256i __A) {
3713
3449
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
3714
3450
  (__v8df)_mm512_cvtepu32_pd(__A),
3715
3451
  (__v8df)_mm512_setzero_pd());
3716
3452
  }
3717
3453
 
3718
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3719
- _mm512_cvtepu32lo_pd(__m512i __A)
3720
- {
3454
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3455
+ _mm512_cvtepu32lo_pd(__m512i __A) {
3721
3456
  return (__m512d) _mm512_cvtepu32_pd(_mm512_castsi512_si256(__A));
3722
3457
  }
3723
3458
 
3724
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
3725
- _mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
3726
- {
3459
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3460
+ _mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U, __m512i __A) {
3727
3461
  return (__m512d) _mm512_mask_cvtepu32_pd(__W, __U, _mm512_castsi512_si256(__A));
3728
3462
  }
3729
3463
 
@@ -3742,44 +3476,38 @@ _mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
3742
3476
  (__v8sf)_mm256_setzero_ps(), \
3743
3477
  (__mmask8)(U), (int)(R)))
3744
3478
 
3745
- static __inline__ __m256 __DEFAULT_FN_ATTRS512
3746
- _mm512_cvtpd_ps (__m512d __A)
3747
- {
3748
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
3749
- (__v8sf) _mm256_undefined_ps (),
3750
- (__mmask8) -1,
3751
- _MM_FROUND_CUR_DIRECTION);
3479
+ static __inline__ __m256
3480
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtpd_ps(__m512d __A) {
3481
+ return (__m256)__builtin_ia32_cvtpd2ps512_mask(
3482
+ (__v8df)__A, (__v8sf)_mm256_setzero_ps(), (__mmask8)-1,
3483
+ _MM_FROUND_CUR_DIRECTION);
3752
3484
  }
3753
3485
 
3754
- static __inline__ __m256 __DEFAULT_FN_ATTRS512
3755
- _mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A)
3756
- {
3486
+ static __inline__ __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
3487
+ _mm512_mask_cvtpd_ps(__m256 __W, __mmask8 __U, __m512d __A) {
3757
3488
  return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
3758
3489
  (__v8sf) __W,
3759
3490
  (__mmask8) __U,
3760
3491
  _MM_FROUND_CUR_DIRECTION);
3761
3492
  }
3762
3493
 
3763
- static __inline__ __m256 __DEFAULT_FN_ATTRS512
3764
- _mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A)
3765
- {
3494
+ static __inline__ __m256 __DEFAULT_FN_ATTRS512_CONSTEXPR
3495
+ _mm512_maskz_cvtpd_ps(__mmask8 __U, __m512d __A) {
3766
3496
  return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
3767
3497
  (__v8sf) _mm256_setzero_ps (),
3768
3498
  (__mmask8) __U,
3769
3499
  _MM_FROUND_CUR_DIRECTION);
3770
3500
  }
3771
3501
 
3772
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3773
- _mm512_cvtpd_pslo (__m512d __A)
3774
- {
3502
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3503
+ _mm512_cvtpd_pslo(__m512d __A) {
3775
3504
  return (__m512) __builtin_shufflevector((__v8sf) _mm512_cvtpd_ps(__A),
3776
3505
  (__v8sf) _mm256_setzero_ps (),
3777
3506
  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
3778
3507
  }
3779
3508
 
3780
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
3781
- _mm512_mask_cvtpd_pslo (__m512 __W, __mmask8 __U,__m512d __A)
3782
- {
3509
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3510
+ _mm512_mask_cvtpd_pslo(__m512 __W, __mmask8 __U, __m512d __A) {
3783
3511
  return (__m512) __builtin_shufflevector (
3784
3512
  (__v8sf) _mm512_mask_cvtpd_ps (_mm512_castps512_ps256(__W),
3785
3513
  __U, __A),
@@ -4123,9 +3851,8 @@ _mm512_cvtss_f32(__m512 __a)
4123
3851
 
4124
3852
  /* Unpack and Interleave */
4125
3853
 
4126
- static __inline __m512d __DEFAULT_FN_ATTRS512
4127
- _mm512_unpackhi_pd(__m512d __a, __m512d __b)
4128
- {
3854
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3855
+ _mm512_unpackhi_pd(__m512d __a, __m512d __b) {
4129
3856
  return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
4130
3857
  1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
4131
3858
  }
@@ -4146,9 +3873,8 @@ _mm512_maskz_unpackhi_pd(__mmask8 __U, __m512d __A, __m512d __B)
4146
3873
  (__v8df)_mm512_setzero_pd());
4147
3874
  }
4148
3875
 
4149
- static __inline __m512d __DEFAULT_FN_ATTRS512
4150
- _mm512_unpacklo_pd(__m512d __a, __m512d __b)
4151
- {
3876
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
3877
+ _mm512_unpacklo_pd(__m512d __a, __m512d __b) {
4152
3878
  return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
4153
3879
  0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
4154
3880
  }
@@ -4169,9 +3895,8 @@ _mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B)
4169
3895
  (__v8df)_mm512_setzero_pd());
4170
3896
  }
4171
3897
 
4172
- static __inline __m512 __DEFAULT_FN_ATTRS512
4173
- _mm512_unpackhi_ps(__m512 __a, __m512 __b)
4174
- {
3898
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3899
+ _mm512_unpackhi_ps(__m512 __a, __m512 __b) {
4175
3900
  return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
4176
3901
  2, 18, 3, 19,
4177
3902
  2+4, 18+4, 3+4, 19+4,
@@ -4195,9 +3920,8 @@ _mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B)
4195
3920
  (__v16sf)_mm512_setzero_ps());
4196
3921
  }
4197
3922
 
4198
- static __inline __m512 __DEFAULT_FN_ATTRS512
4199
- _mm512_unpacklo_ps(__m512 __a, __m512 __b)
4200
- {
3923
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
3924
+ _mm512_unpacklo_ps(__m512 __a, __m512 __b) {
4201
3925
  return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
4202
3926
  0, 16, 1, 17,
4203
3927
  0+4, 16+4, 1+4, 17+4,
@@ -4221,9 +3945,8 @@ _mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B)
4221
3945
  (__v16sf)_mm512_setzero_ps());
4222
3946
  }
4223
3947
 
4224
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4225
- _mm512_unpackhi_epi32(__m512i __A, __m512i __B)
4226
- {
3948
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3949
+ _mm512_unpackhi_epi32(__m512i __A, __m512i __B) {
4227
3950
  return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
4228
3951
  2, 18, 3, 19,
4229
3952
  2+4, 18+4, 3+4, 19+4,
@@ -4247,9 +3970,8 @@ _mm512_maskz_unpackhi_epi32(__mmask16 __U, __m512i __A, __m512i __B)
4247
3970
  (__v16si)_mm512_setzero_si512());
4248
3971
  }
4249
3972
 
4250
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4251
- _mm512_unpacklo_epi32(__m512i __A, __m512i __B)
4252
- {
3973
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3974
+ _mm512_unpacklo_epi32(__m512i __A, __m512i __B) {
4253
3975
  return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
4254
3976
  0, 16, 1, 17,
4255
3977
  0+4, 16+4, 1+4, 17+4,
@@ -4273,9 +3995,8 @@ _mm512_maskz_unpacklo_epi32(__mmask16 __U, __m512i __A, __m512i __B)
4273
3995
  (__v16si)_mm512_setzero_si512());
4274
3996
  }
4275
3997
 
4276
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4277
- _mm512_unpackhi_epi64(__m512i __A, __m512i __B)
4278
- {
3998
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
3999
+ _mm512_unpackhi_epi64(__m512i __A, __m512i __B) {
4279
4000
  return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
4280
4001
  1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
4281
4002
  }
@@ -4296,9 +4017,8 @@ _mm512_maskz_unpackhi_epi64(__mmask8 __U, __m512i __A, __m512i __B)
4296
4017
  (__v8di)_mm512_setzero_si512());
4297
4018
  }
4298
4019
 
4299
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4300
- _mm512_unpacklo_epi64 (__m512i __A, __m512i __B)
4301
- {
4020
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4021
+ _mm512_unpacklo_epi64(__m512i __A, __m512i __B) {
4302
4022
  return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
4303
4023
  0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
4304
4024
  }
@@ -4619,9 +4339,8 @@ _mm512_store_epi64 (void *__P, __m512i __A)
4619
4339
 
4620
4340
  /* Mask ops */
4621
4341
 
4622
- static __inline __mmask16 __DEFAULT_FN_ATTRS
4623
- _mm512_knot(__mmask16 __M)
4624
- {
4342
+ static __inline __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
4343
+ _mm512_knot(__mmask16 __M) {
4625
4344
  return __builtin_ia32_knothi(__M);
4626
4345
  }
4627
4346
 
@@ -4727,237 +4446,207 @@ _mm512_knot(__mmask16 __M)
4727
4446
  #define _mm512_mask_cmpneq_epu64_mask(k, A, B) \
4728
4447
  _mm512_mask_cmp_epu64_mask((k), (A), (B), _MM_CMPINT_NE)
4729
4448
 
4730
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4731
- _mm512_cvtepi8_epi32(__m128i __A)
4732
- {
4449
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4450
+ _mm512_cvtepi8_epi32(__m128i __A) {
4733
4451
  /* This function always performs a signed extension, but __v16qi is a char
4734
4452
  which may be signed or unsigned, so use __v16qs. */
4735
4453
  return (__m512i)__builtin_convertvector((__v16qs)__A, __v16si);
4736
4454
  }
4737
4455
 
4738
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4739
- _mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
4740
- {
4456
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4457
+ _mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A) {
4741
4458
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4742
4459
  (__v16si)_mm512_cvtepi8_epi32(__A),
4743
4460
  (__v16si)__W);
4744
4461
  }
4745
4462
 
4746
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4747
- _mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A)
4748
- {
4463
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4464
+ _mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A) {
4749
4465
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4750
4466
  (__v16si)_mm512_cvtepi8_epi32(__A),
4751
4467
  (__v16si)_mm512_setzero_si512());
4752
4468
  }
4753
4469
 
4754
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4755
- _mm512_cvtepi8_epi64(__m128i __A)
4756
- {
4470
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4471
+ _mm512_cvtepi8_epi64(__m128i __A) {
4757
4472
  /* This function always performs a signed extension, but __v16qi is a char
4758
4473
  which may be signed or unsigned, so use __v16qs. */
4759
4474
  return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__A, (__v16qs)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
4760
4475
  }
4761
4476
 
4762
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4763
- _mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
4764
- {
4477
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4478
+ _mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
4765
4479
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4766
4480
  (__v8di)_mm512_cvtepi8_epi64(__A),
4767
4481
  (__v8di)__W);
4768
4482
  }
4769
4483
 
4770
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4771
- _mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A)
4772
- {
4484
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4485
+ _mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A) {
4773
4486
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4774
4487
  (__v8di)_mm512_cvtepi8_epi64(__A),
4775
4488
  (__v8di)_mm512_setzero_si512 ());
4776
4489
  }
4777
4490
 
4778
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4779
- _mm512_cvtepi32_epi64(__m256i __X)
4780
- {
4491
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4492
+ _mm512_cvtepi32_epi64(__m256i __X) {
4781
4493
  return (__m512i)__builtin_convertvector((__v8si)__X, __v8di);
4782
4494
  }
4783
4495
 
4784
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4785
- _mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
4786
- {
4496
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4497
+ _mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X) {
4787
4498
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4788
4499
  (__v8di)_mm512_cvtepi32_epi64(__X),
4789
4500
  (__v8di)__W);
4790
4501
  }
4791
4502
 
4792
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4793
- _mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X)
4794
- {
4503
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4504
+ _mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X) {
4795
4505
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4796
4506
  (__v8di)_mm512_cvtepi32_epi64(__X),
4797
4507
  (__v8di)_mm512_setzero_si512());
4798
4508
  }
4799
4509
 
4800
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4801
- _mm512_cvtepi16_epi32(__m256i __A)
4802
- {
4510
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4511
+ _mm512_cvtepi16_epi32(__m256i __A) {
4803
4512
  return (__m512i)__builtin_convertvector((__v16hi)__A, __v16si);
4804
4513
  }
4805
4514
 
4806
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4807
- _mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
4808
- {
4515
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4516
+ _mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A) {
4809
4517
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4810
4518
  (__v16si)_mm512_cvtepi16_epi32(__A),
4811
4519
  (__v16si)__W);
4812
4520
  }
4813
4521
 
4814
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4815
- _mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A)
4816
- {
4522
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4523
+ _mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A) {
4817
4524
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4818
4525
  (__v16si)_mm512_cvtepi16_epi32(__A),
4819
4526
  (__v16si)_mm512_setzero_si512 ());
4820
4527
  }
4821
4528
 
4822
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4823
- _mm512_cvtepi16_epi64(__m128i __A)
4824
- {
4529
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4530
+ _mm512_cvtepi16_epi64(__m128i __A) {
4825
4531
  return (__m512i)__builtin_convertvector((__v8hi)__A, __v8di);
4826
4532
  }
4827
4533
 
4828
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4829
- _mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
4830
- {
4534
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4535
+ _mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
4831
4536
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4832
4537
  (__v8di)_mm512_cvtepi16_epi64(__A),
4833
4538
  (__v8di)__W);
4834
4539
  }
4835
4540
 
4836
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4837
- _mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A)
4838
- {
4541
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4542
+ _mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A) {
4839
4543
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4840
4544
  (__v8di)_mm512_cvtepi16_epi64(__A),
4841
4545
  (__v8di)_mm512_setzero_si512());
4842
4546
  }
4843
4547
 
4844
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4845
- _mm512_cvtepu8_epi32(__m128i __A)
4846
- {
4548
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4549
+ _mm512_cvtepu8_epi32(__m128i __A) {
4847
4550
  return (__m512i)__builtin_convertvector((__v16qu)__A, __v16si);
4848
4551
  }
4849
4552
 
4850
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4851
- _mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
4852
- {
4553
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4554
+ _mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A) {
4853
4555
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4854
4556
  (__v16si)_mm512_cvtepu8_epi32(__A),
4855
4557
  (__v16si)__W);
4856
4558
  }
4857
4559
 
4858
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4859
- _mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A)
4860
- {
4560
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4561
+ _mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A) {
4861
4562
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4862
4563
  (__v16si)_mm512_cvtepu8_epi32(__A),
4863
4564
  (__v16si)_mm512_setzero_si512());
4864
4565
  }
4865
4566
 
4866
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4867
- _mm512_cvtepu8_epi64(__m128i __A)
4868
- {
4567
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4568
+ _mm512_cvtepu8_epi64(__m128i __A) {
4869
4569
  return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__A, (__v16qu)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
4870
4570
  }
4871
4571
 
4872
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4873
- _mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
4874
- {
4572
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4573
+ _mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
4875
4574
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4876
4575
  (__v8di)_mm512_cvtepu8_epi64(__A),
4877
4576
  (__v8di)__W);
4878
4577
  }
4879
4578
 
4880
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4881
- _mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A)
4882
- {
4579
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4580
+ _mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A) {
4883
4581
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4884
4582
  (__v8di)_mm512_cvtepu8_epi64(__A),
4885
4583
  (__v8di)_mm512_setzero_si512());
4886
4584
  }
4887
4585
 
4888
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4889
- _mm512_cvtepu32_epi64(__m256i __X)
4890
- {
4586
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4587
+ _mm512_cvtepu32_epi64(__m256i __X) {
4891
4588
  return (__m512i)__builtin_convertvector((__v8su)__X, __v8di);
4892
4589
  }
4893
4590
 
4894
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4895
- _mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
4896
- {
4591
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4592
+ _mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X) {
4897
4593
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4898
4594
  (__v8di)_mm512_cvtepu32_epi64(__X),
4899
4595
  (__v8di)__W);
4900
4596
  }
4901
4597
 
4902
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4903
- _mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X)
4904
- {
4598
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4599
+ _mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X) {
4905
4600
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4906
4601
  (__v8di)_mm512_cvtepu32_epi64(__X),
4907
4602
  (__v8di)_mm512_setzero_si512());
4908
4603
  }
4909
4604
 
4910
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4911
- _mm512_cvtepu16_epi32(__m256i __A)
4912
- {
4605
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4606
+ _mm512_cvtepu16_epi32(__m256i __A) {
4913
4607
  return (__m512i)__builtin_convertvector((__v16hu)__A, __v16si);
4914
4608
  }
4915
4609
 
4916
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4917
- _mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
4918
- {
4610
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4611
+ _mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A) {
4919
4612
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4920
4613
  (__v16si)_mm512_cvtepu16_epi32(__A),
4921
4614
  (__v16si)__W);
4922
4615
  }
4923
4616
 
4924
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4925
- _mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A)
4926
- {
4617
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4618
+ _mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A) {
4927
4619
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
4928
4620
  (__v16si)_mm512_cvtepu16_epi32(__A),
4929
4621
  (__v16si)_mm512_setzero_si512());
4930
4622
  }
4931
4623
 
4932
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4933
- _mm512_cvtepu16_epi64(__m128i __A)
4934
- {
4624
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4625
+ _mm512_cvtepu16_epi64(__m128i __A) {
4935
4626
  return (__m512i)__builtin_convertvector((__v8hu)__A, __v8di);
4936
4627
  }
4937
4628
 
4938
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4939
- _mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
4940
- {
4629
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4630
+ _mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A) {
4941
4631
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4942
4632
  (__v8di)_mm512_cvtepu16_epi64(__A),
4943
4633
  (__v8di)__W);
4944
4634
  }
4945
4635
 
4946
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4947
- _mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A)
4948
- {
4636
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4637
+ _mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A) {
4949
4638
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
4950
4639
  (__v8di)_mm512_cvtepu16_epi64(__A),
4951
4640
  (__v8di)_mm512_setzero_si512());
4952
4641
  }
4953
4642
 
4954
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4643
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4955
4644
  _mm512_rorv_epi32 (__m512i __A, __m512i __B)
4956
4645
  {
4957
- return (__m512i)__builtin_ia32_prorvd512((__v16si)__A, (__v16si)__B);
4646
+ return (__m512i)__builtin_elementwise_fshr((__v16su)__A,(__v16su)__A, (__v16su)__B);
4958
4647
  }
4959
4648
 
4960
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4649
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4961
4650
  _mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
4962
4651
  {
4963
4652
  return (__m512i)__builtin_ia32_selectd_512(__U,
@@ -4965,7 +4654,7 @@ _mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
4965
4654
  (__v16si)__W);
4966
4655
  }
4967
4656
 
4968
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4657
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4969
4658
  _mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
4970
4659
  {
4971
4660
  return (__m512i)__builtin_ia32_selectd_512(__U,
@@ -4973,13 +4662,13 @@ _mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
4973
4662
  (__v16si)_mm512_setzero_si512());
4974
4663
  }
4975
4664
 
4976
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4665
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4977
4666
  _mm512_rorv_epi64 (__m512i __A, __m512i __B)
4978
4667
  {
4979
- return (__m512i)__builtin_ia32_prorvq512((__v8di)__A, (__v8di)__B);
4668
+ return (__m512i)__builtin_elementwise_fshr((__v8du)__A, (__v8du)__A, (__v8du)__B);
4980
4669
  }
4981
4670
 
4982
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4671
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4983
4672
  _mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
4984
4673
  {
4985
4674
  return (__m512i)__builtin_ia32_selectq_512(__U,
@@ -4987,7 +4676,7 @@ _mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
4987
4676
  (__v8di)__W);
4988
4677
  }
4989
4678
 
4990
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4679
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4991
4680
  _mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
4992
4681
  {
4993
4682
  return (__m512i)__builtin_ia32_selectq_512(__U,
@@ -5063,13 +4752,13 @@ _mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
5063
4752
  (__v8di)_mm512_rol_epi64((a), (b)), \
5064
4753
  (__v8di)_mm512_setzero_si512()))
5065
4754
 
5066
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4755
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5067
4756
  _mm512_rolv_epi32 (__m512i __A, __m512i __B)
5068
4757
  {
5069
- return (__m512i)__builtin_ia32_prolvd512((__v16si)__A, (__v16si)__B);
4758
+ return (__m512i)__builtin_elementwise_fshl((__v16su)__A, (__v16su)__A, (__v16su)__B);
5070
4759
  }
5071
4760
 
5072
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4761
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5073
4762
  _mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
5074
4763
  {
5075
4764
  return (__m512i)__builtin_ia32_selectd_512(__U,
@@ -5077,7 +4766,7 @@ _mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
5077
4766
  (__v16si)__W);
5078
4767
  }
5079
4768
 
5080
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4769
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5081
4770
  _mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
5082
4771
  {
5083
4772
  return (__m512i)__builtin_ia32_selectd_512(__U,
@@ -5085,13 +4774,13 @@ _mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
5085
4774
  (__v16si)_mm512_setzero_si512());
5086
4775
  }
5087
4776
 
5088
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4777
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5089
4778
  _mm512_rolv_epi64 (__m512i __A, __m512i __B)
5090
4779
  {
5091
- return (__m512i)__builtin_ia32_prolvq512((__v8di)__A, (__v8di)__B);
4780
+ return (__m512i)__builtin_elementwise_fshl((__v8du)__A, (__v8du)__A, (__v8du)__B);
5092
4781
  }
5093
4782
 
5094
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4783
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5095
4784
  _mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
5096
4785
  {
5097
4786
  return (__m512i)__builtin_ia32_selectq_512(__U,
@@ -5099,7 +4788,7 @@ _mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
5099
4788
  (__v8di)__W);
5100
4789
  }
5101
4790
 
5102
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4791
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5103
4792
  _mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
5104
4793
  {
5105
4794
  return (__m512i)__builtin_ia32_selectq_512(__U,
@@ -5133,91 +4822,81 @@ _mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
5133
4822
  (__v8di)_mm512_ror_epi64((A), (B)), \
5134
4823
  (__v8di)_mm512_setzero_si512()))
5135
4824
 
5136
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5137
- _mm512_slli_epi32(__m512i __A, unsigned int __B)
5138
- {
4825
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4826
+ _mm512_slli_epi32(__m512i __A, unsigned int __B) {
5139
4827
  return (__m512i)__builtin_ia32_pslldi512((__v16si)__A, (int)__B);
5140
4828
  }
5141
4829
 
5142
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4830
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5143
4831
  _mm512_mask_slli_epi32(__m512i __W, __mmask16 __U, __m512i __A,
5144
- unsigned int __B)
5145
- {
4832
+ unsigned int __B) {
5146
4833
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5147
4834
  (__v16si)_mm512_slli_epi32(__A, __B),
5148
4835
  (__v16si)__W);
5149
4836
  }
5150
4837
 
5151
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4838
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5152
4839
  _mm512_maskz_slli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
5153
4840
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5154
4841
  (__v16si)_mm512_slli_epi32(__A, __B),
5155
4842
  (__v16si)_mm512_setzero_si512());
5156
4843
  }
5157
4844
 
5158
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5159
- _mm512_slli_epi64(__m512i __A, unsigned int __B)
5160
- {
4845
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4846
+ _mm512_slli_epi64(__m512i __A, unsigned int __B) {
5161
4847
  return (__m512i)__builtin_ia32_psllqi512((__v8di)__A, (int)__B);
5162
4848
  }
5163
4849
 
5164
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5165
- _mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B)
5166
- {
4850
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4851
+ _mm512_mask_slli_epi64(__m512i __W, __mmask8 __U, __m512i __A,
4852
+ unsigned int __B) {
5167
4853
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5168
4854
  (__v8di)_mm512_slli_epi64(__A, __B),
5169
4855
  (__v8di)__W);
5170
4856
  }
5171
4857
 
5172
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5173
- _mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B)
5174
- {
4858
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4859
+ _mm512_maskz_slli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
5175
4860
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5176
4861
  (__v8di)_mm512_slli_epi64(__A, __B),
5177
4862
  (__v8di)_mm512_setzero_si512());
5178
4863
  }
5179
4864
 
5180
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5181
- _mm512_srli_epi32(__m512i __A, unsigned int __B)
5182
- {
4865
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4866
+ _mm512_srli_epi32(__m512i __A, unsigned int __B) {
5183
4867
  return (__m512i)__builtin_ia32_psrldi512((__v16si)__A, (int)__B);
5184
4868
  }
5185
4869
 
5186
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4870
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5187
4871
  _mm512_mask_srli_epi32(__m512i __W, __mmask16 __U, __m512i __A,
5188
- unsigned int __B)
5189
- {
4872
+ unsigned int __B) {
5190
4873
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5191
4874
  (__v16si)_mm512_srli_epi32(__A, __B),
5192
4875
  (__v16si)__W);
5193
4876
  }
5194
4877
 
5195
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4878
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5196
4879
  _mm512_maskz_srli_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
5197
4880
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5198
4881
  (__v16si)_mm512_srli_epi32(__A, __B),
5199
4882
  (__v16si)_mm512_setzero_si512());
5200
4883
  }
5201
4884
 
5202
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5203
- _mm512_srli_epi64(__m512i __A, unsigned int __B)
5204
- {
4885
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4886
+ _mm512_srli_epi64(__m512i __A, unsigned int __B) {
5205
4887
  return (__m512i)__builtin_ia32_psrlqi512((__v8di)__A, (int)__B);
5206
4888
  }
5207
4889
 
5208
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
4890
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5209
4891
  _mm512_mask_srli_epi64(__m512i __W, __mmask8 __U, __m512i __A,
5210
- unsigned int __B)
5211
- {
4892
+ unsigned int __B) {
5212
4893
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5213
4894
  (__v8di)_mm512_srli_epi64(__A, __B),
5214
4895
  (__v8di)__W);
5215
4896
  }
5216
4897
 
5217
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5218
- _mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A,
5219
- unsigned int __B)
5220
- {
4898
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
4899
+ _mm512_maskz_srli_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
5221
4900
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5222
4901
  (__v8di)_mm512_srli_epi64(__A, __B),
5223
4902
  (__v8di)_mm512_setzero_si512());
@@ -5303,7 +4982,7 @@ _mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A)
5303
4982
  (__mmask8) __U);
5304
4983
  }
5305
4984
 
5306
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
4985
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5307
4986
  _mm512_movedup_pd (__m512d __A)
5308
4987
  {
5309
4988
  return (__m512d)__builtin_shufflevector((__v8df)__A, (__v8df)__A,
@@ -5665,9 +5344,8 @@ _mm_maskz_getexp_ss (__mmask8 __U, __m128 __A, __m128 __B)
5665
5344
  (__v4sf)_mm_setzero_ps(), \
5666
5345
  (__mmask8)(U), (int)(R)))
5667
5346
 
5668
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
5669
- _mm512_kmov (__mmask16 __A)
5670
- {
5347
+ static __inline__ __mmask16
5348
+ __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_kmov(__mmask16 __A) {
5671
5349
  return __A;
5672
5350
  }
5673
5351
 
@@ -5684,79 +5362,70 @@ _mm512_kmov (__mmask16 __A)
5684
5362
  ((long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R)))
5685
5363
  #endif
5686
5364
 
5687
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5688
- _mm512_sll_epi32(__m512i __A, __m128i __B)
5689
- {
5365
+ static __inline__ __m512i
5366
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_sll_epi32(__m512i __A, __m128i __B) {
5690
5367
  return (__m512i)__builtin_ia32_pslld512((__v16si) __A, (__v4si)__B);
5691
5368
  }
5692
5369
 
5693
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5694
- _mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
5695
- {
5370
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5371
+ _mm512_mask_sll_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
5696
5372
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5697
5373
  (__v16si)_mm512_sll_epi32(__A, __B),
5698
5374
  (__v16si)__W);
5699
5375
  }
5700
5376
 
5701
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5702
- _mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B)
5703
- {
5377
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5378
+ _mm512_maskz_sll_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
5704
5379
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5705
5380
  (__v16si)_mm512_sll_epi32(__A, __B),
5706
5381
  (__v16si)_mm512_setzero_si512());
5707
5382
  }
5708
5383
 
5709
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5710
- _mm512_sll_epi64(__m512i __A, __m128i __B)
5711
- {
5384
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5385
+ _mm512_sll_epi64(__m512i __A, __m128i __B) {
5712
5386
  return (__m512i)__builtin_ia32_psllq512((__v8di)__A, (__v2di)__B);
5713
5387
  }
5714
5388
 
5715
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5716
- _mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
5717
- {
5389
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5390
+ _mm512_mask_sll_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
5718
5391
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5719
5392
  (__v8di)_mm512_sll_epi64(__A, __B),
5720
5393
  (__v8di)__W);
5721
5394
  }
5722
5395
 
5723
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5724
- _mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B)
5725
- {
5396
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5397
+ _mm512_maskz_sll_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
5726
5398
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5727
5399
  (__v8di)_mm512_sll_epi64(__A, __B),
5728
5400
  (__v8di)_mm512_setzero_si512());
5729
5401
  }
5730
5402
 
5731
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5732
- _mm512_sllv_epi32(__m512i __X, __m512i __Y)
5733
- {
5403
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5404
+ _mm512_sllv_epi32(__m512i __X, __m512i __Y) {
5734
5405
  return (__m512i)__builtin_ia32_psllv16si((__v16si)__X, (__v16si)__Y);
5735
5406
  }
5736
5407
 
5737
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5738
- _mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
5739
- {
5408
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5409
+ _mm512_mask_sllv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
5740
5410
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5741
5411
  (__v16si)_mm512_sllv_epi32(__X, __Y),
5742
5412
  (__v16si)__W);
5743
5413
  }
5744
5414
 
5745
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5746
- _mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
5747
- {
5415
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5416
+ _mm512_maskz_sllv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
5748
5417
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5749
5418
  (__v16si)_mm512_sllv_epi32(__X, __Y),
5750
5419
  (__v16si)_mm512_setzero_si512());
5751
5420
  }
5752
5421
 
5753
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5422
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5754
5423
  _mm512_sllv_epi64(__m512i __X, __m512i __Y)
5755
5424
  {
5756
5425
  return (__m512i)__builtin_ia32_psllv8di((__v8di)__X, (__v8di)__Y);
5757
5426
  }
5758
5427
 
5759
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5428
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5760
5429
  _mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5761
5430
  {
5762
5431
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -5764,7 +5433,7 @@ _mm512_mask_sllv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5764
5433
  (__v8di)__W);
5765
5434
  }
5766
5435
 
5767
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5436
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5768
5437
  _mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
5769
5438
  {
5770
5439
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -5772,79 +5441,70 @@ _mm512_maskz_sllv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
5772
5441
  (__v8di)_mm512_setzero_si512());
5773
5442
  }
5774
5443
 
5775
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5776
- _mm512_sra_epi32(__m512i __A, __m128i __B)
5777
- {
5444
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5445
+ _mm512_sra_epi32(__m512i __A, __m128i __B) {
5778
5446
  return (__m512i)__builtin_ia32_psrad512((__v16si) __A, (__v4si)__B);
5779
5447
  }
5780
5448
 
5781
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5782
- _mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
5783
- {
5449
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5450
+ _mm512_mask_sra_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
5784
5451
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5785
5452
  (__v16si)_mm512_sra_epi32(__A, __B),
5786
5453
  (__v16si)__W);
5787
5454
  }
5788
5455
 
5789
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5790
- _mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B)
5791
- {
5456
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5457
+ _mm512_maskz_sra_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
5792
5458
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5793
5459
  (__v16si)_mm512_sra_epi32(__A, __B),
5794
5460
  (__v16si)_mm512_setzero_si512());
5795
5461
  }
5796
5462
 
5797
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5798
- _mm512_sra_epi64(__m512i __A, __m128i __B)
5799
- {
5463
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5464
+ _mm512_sra_epi64(__m512i __A, __m128i __B) {
5800
5465
  return (__m512i)__builtin_ia32_psraq512((__v8di)__A, (__v2di)__B);
5801
5466
  }
5802
5467
 
5803
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5804
- _mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
5805
- {
5468
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5469
+ _mm512_mask_sra_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
5806
5470
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5807
5471
  (__v8di)_mm512_sra_epi64(__A, __B),
5808
5472
  (__v8di)__W);
5809
5473
  }
5810
5474
 
5811
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5812
- _mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B)
5813
- {
5475
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5476
+ _mm512_maskz_sra_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
5814
5477
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5815
5478
  (__v8di)_mm512_sra_epi64(__A, __B),
5816
5479
  (__v8di)_mm512_setzero_si512());
5817
5480
  }
5818
5481
 
5819
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5820
- _mm512_srav_epi32(__m512i __X, __m512i __Y)
5821
- {
5482
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5483
+ _mm512_srav_epi32(__m512i __X, __m512i __Y) {
5822
5484
  return (__m512i)__builtin_ia32_psrav16si((__v16si)__X, (__v16si)__Y);
5823
5485
  }
5824
5486
 
5825
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5826
- _mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
5827
- {
5487
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5488
+ _mm512_mask_srav_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
5828
5489
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5829
5490
  (__v16si)_mm512_srav_epi32(__X, __Y),
5830
5491
  (__v16si)__W);
5831
5492
  }
5832
5493
 
5833
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5834
- _mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
5835
- {
5494
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5495
+ _mm512_maskz_srav_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
5836
5496
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5837
5497
  (__v16si)_mm512_srav_epi32(__X, __Y),
5838
5498
  (__v16si)_mm512_setzero_si512());
5839
5499
  }
5840
5500
 
5841
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5501
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5842
5502
  _mm512_srav_epi64(__m512i __X, __m512i __Y)
5843
5503
  {
5844
5504
  return (__m512i)__builtin_ia32_psrav8di((__v8di)__X, (__v8di)__Y);
5845
5505
  }
5846
5506
 
5847
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5507
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5848
5508
  _mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5849
5509
  {
5850
5510
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -5852,7 +5512,7 @@ _mm512_mask_srav_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5852
5512
  (__v8di)__W);
5853
5513
  }
5854
5514
 
5855
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5515
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5856
5516
  _mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
5857
5517
  {
5858
5518
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -5860,79 +5520,70 @@ _mm512_maskz_srav_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
5860
5520
  (__v8di)_mm512_setzero_si512());
5861
5521
  }
5862
5522
 
5863
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5864
- _mm512_srl_epi32(__m512i __A, __m128i __B)
5865
- {
5523
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5524
+ _mm512_srl_epi32(__m512i __A, __m128i __B) {
5866
5525
  return (__m512i)__builtin_ia32_psrld512((__v16si) __A, (__v4si)__B);
5867
5526
  }
5868
5527
 
5869
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5870
- _mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
5871
- {
5528
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5529
+ _mm512_mask_srl_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m128i __B) {
5872
5530
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5873
5531
  (__v16si)_mm512_srl_epi32(__A, __B),
5874
5532
  (__v16si)__W);
5875
5533
  }
5876
5534
 
5877
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5878
- _mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B)
5879
- {
5535
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5536
+ _mm512_maskz_srl_epi32(__mmask16 __U, __m512i __A, __m128i __B) {
5880
5537
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5881
5538
  (__v16si)_mm512_srl_epi32(__A, __B),
5882
5539
  (__v16si)_mm512_setzero_si512());
5883
5540
  }
5884
5541
 
5885
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5886
- _mm512_srl_epi64(__m512i __A, __m128i __B)
5887
- {
5542
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5543
+ _mm512_srl_epi64(__m512i __A, __m128i __B) {
5888
5544
  return (__m512i)__builtin_ia32_psrlq512((__v8di)__A, (__v2di)__B);
5889
5545
  }
5890
5546
 
5891
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5892
- _mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
5893
- {
5547
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5548
+ _mm512_mask_srl_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m128i __B) {
5894
5549
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5895
5550
  (__v8di)_mm512_srl_epi64(__A, __B),
5896
5551
  (__v8di)__W);
5897
5552
  }
5898
5553
 
5899
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5900
- _mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B)
5901
- {
5554
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5555
+ _mm512_maskz_srl_epi64(__mmask8 __U, __m512i __A, __m128i __B) {
5902
5556
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5903
5557
  (__v8di)_mm512_srl_epi64(__A, __B),
5904
5558
  (__v8di)_mm512_setzero_si512());
5905
5559
  }
5906
5560
 
5907
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5908
- _mm512_srlv_epi32(__m512i __X, __m512i __Y)
5909
- {
5561
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5562
+ _mm512_srlv_epi32(__m512i __X, __m512i __Y) {
5910
5563
  return (__m512i)__builtin_ia32_psrlv16si((__v16si)__X, (__v16si)__Y);
5911
5564
  }
5912
5565
 
5913
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5914
- _mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
5915
- {
5566
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5567
+ _mm512_mask_srlv_epi32(__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y) {
5916
5568
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5917
5569
  (__v16si)_mm512_srlv_epi32(__X, __Y),
5918
5570
  (__v16si)__W);
5919
5571
  }
5920
5572
 
5921
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5922
- _mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y)
5923
- {
5573
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5574
+ _mm512_maskz_srlv_epi32(__mmask16 __U, __m512i __X, __m512i __Y) {
5924
5575
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5925
5576
  (__v16si)_mm512_srlv_epi32(__X, __Y),
5926
5577
  (__v16si)_mm512_setzero_si512());
5927
5578
  }
5928
5579
 
5929
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5580
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5930
5581
  _mm512_srlv_epi64 (__m512i __X, __m512i __Y)
5931
5582
  {
5932
5583
  return (__m512i)__builtin_ia32_psrlv8di((__v8di)__X, (__v8di)__Y);
5933
5584
  }
5934
5585
 
5935
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5586
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5936
5587
  _mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5937
5588
  {
5938
5589
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -5940,7 +5591,7 @@ _mm512_mask_srlv_epi64(__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
5940
5591
  (__v8di)__W);
5941
5592
  }
5942
5593
 
5943
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
5594
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
5944
5595
  _mm512_maskz_srlv_epi64(__mmask8 __U, __m512i __X, __m512i __Y)
5945
5596
  {
5946
5597
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
@@ -6190,115 +5841,104 @@ _mm_cvttss_u64 (__m128 __A)
6190
5841
  (__v16sf)_mm512_permute_ps((X), (C)), \
6191
5842
  (__v16sf)_mm512_setzero_ps()))
6192
5843
 
6193
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6194
- _mm512_permutevar_pd(__m512d __A, __m512i __C)
6195
- {
5844
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5845
+ _mm512_permutevar_pd(__m512d __A, __m512i __C) {
6196
5846
  return (__m512d)__builtin_ia32_vpermilvarpd512((__v8df)__A, (__v8di)__C);
6197
5847
  }
6198
5848
 
6199
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6200
- _mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C)
6201
- {
5849
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5850
+ _mm512_mask_permutevar_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512i __C) {
6202
5851
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
6203
5852
  (__v8df)_mm512_permutevar_pd(__A, __C),
6204
5853
  (__v8df)__W);
6205
5854
  }
6206
5855
 
6207
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6208
- _mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C)
6209
- {
5856
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5857
+ _mm512_maskz_permutevar_pd(__mmask8 __U, __m512d __A, __m512i __C) {
6210
5858
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
6211
5859
  (__v8df)_mm512_permutevar_pd(__A, __C),
6212
5860
  (__v8df)_mm512_setzero_pd());
6213
5861
  }
6214
5862
 
6215
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6216
- _mm512_permutevar_ps(__m512 __A, __m512i __C)
6217
- {
5863
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5864
+ _mm512_permutevar_ps(__m512 __A, __m512i __C) {
6218
5865
  return (__m512)__builtin_ia32_vpermilvarps512((__v16sf)__A, (__v16si)__C);
6219
5866
  }
6220
5867
 
6221
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6222
- _mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C)
6223
- {
5868
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5869
+ _mm512_mask_permutevar_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512i __C) {
6224
5870
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
6225
5871
  (__v16sf)_mm512_permutevar_ps(__A, __C),
6226
5872
  (__v16sf)__W);
6227
5873
  }
6228
5874
 
6229
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6230
- _mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C)
6231
- {
5875
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5876
+ _mm512_maskz_permutevar_ps(__mmask16 __U, __m512 __A, __m512i __C) {
6232
5877
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
6233
5878
  (__v16sf)_mm512_permutevar_ps(__A, __C),
6234
5879
  (__v16sf)_mm512_setzero_ps());
6235
5880
  }
6236
5881
 
6237
- static __inline __m512d __DEFAULT_FN_ATTRS512
6238
- _mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B)
6239
- {
5882
+ static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5883
+ _mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B) {
6240
5884
  return (__m512d)__builtin_ia32_vpermi2varpd512((__v8df)__A, (__v8di)__I,
6241
5885
  (__v8df)__B);
6242
5886
  }
6243
5887
 
6244
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6245
- _mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I, __m512d __B)
6246
- {
5888
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
5889
+ _mm512_mask_permutex2var_pd(__m512d __A, __mmask8 __U, __m512i __I,
5890
+ __m512d __B) {
6247
5891
  return (__m512d)__builtin_ia32_selectpd_512(__U,
6248
5892
  (__v8df)_mm512_permutex2var_pd(__A, __I, __B),
6249
5893
  (__v8df)__A);
6250
5894
  }
6251
5895
 
6252
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
5896
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
6253
5897
  _mm512_mask2_permutex2var_pd(__m512d __A, __m512i __I, __mmask8 __U,
6254
- __m512d __B)
6255
- {
5898
+ __m512d __B) {
6256
5899
  return (__m512d)__builtin_ia32_selectpd_512(__U,
6257
5900
  (__v8df)_mm512_permutex2var_pd(__A, __I, __B),
6258
5901
  (__v8df)(__m512d)__I);
6259
5902
  }
6260
5903
 
6261
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
5904
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
6262
5905
  _mm512_maskz_permutex2var_pd(__mmask8 __U, __m512d __A, __m512i __I,
6263
- __m512d __B)
6264
- {
5906
+ __m512d __B) {
6265
5907
  return (__m512d)__builtin_ia32_selectpd_512(__U,
6266
5908
  (__v8df)_mm512_permutex2var_pd(__A, __I, __B),
6267
5909
  (__v8df)_mm512_setzero_pd());
6268
5910
  }
6269
5911
 
6270
- static __inline __m512 __DEFAULT_FN_ATTRS512
6271
- _mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B)
6272
- {
5912
+ static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5913
+ _mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B) {
6273
5914
  return (__m512)__builtin_ia32_vpermi2varps512((__v16sf)__A, (__v16si)__I,
6274
5915
  (__v16sf) __B);
6275
5916
  }
6276
5917
 
6277
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6278
- _mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I, __m512 __B)
6279
- {
5918
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5919
+ _mm512_mask_permutex2var_ps(__m512 __A, __mmask16 __U, __m512i __I,
5920
+ __m512 __B) {
6280
5921
  return (__m512)__builtin_ia32_selectps_512(__U,
6281
5922
  (__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
6282
5923
  (__v16sf)__A);
6283
5924
  }
6284
5925
 
6285
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6286
- _mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U, __m512 __B)
6287
- {
5926
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5927
+ _mm512_mask2_permutex2var_ps(__m512 __A, __m512i __I, __mmask16 __U,
5928
+ __m512 __B) {
6288
5929
  return (__m512)__builtin_ia32_selectps_512(__U,
6289
5930
  (__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
6290
5931
  (__v16sf)(__m512)__I);
6291
5932
  }
6292
5933
 
6293
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6294
- _mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I, __m512 __B)
6295
- {
5934
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
5935
+ _mm512_maskz_permutex2var_ps(__mmask16 __U, __m512 __A, __m512i __I,
5936
+ __m512 __B) {
6296
5937
  return (__m512)__builtin_ia32_selectps_512(__U,
6297
5938
  (__v16sf)_mm512_permutex2var_ps(__A, __I, __B),
6298
5939
  (__v16sf)_mm512_setzero_ps());
6299
5940
  }
6300
5941
 
6301
-
6302
5942
  #define _mm512_cvtt_roundpd_epu32(A, R) \
6303
5943
  ((__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \
6304
5944
  (__v8si)_mm256_undefined_si256(), \
@@ -6622,46 +6262,41 @@ _mm_maskz_scalef_ss (__mmask8 __U, __m128 __A, __m128 __B)
6622
6262
  (__mmask8)(U), \
6623
6263
  (int)(R)))
6624
6264
 
6625
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6626
- _mm512_srai_epi32(__m512i __A, unsigned int __B)
6627
- {
6265
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6266
+ _mm512_srai_epi32(__m512i __A, unsigned int __B) {
6628
6267
  return (__m512i)__builtin_ia32_psradi512((__v16si)__A, (int)__B);
6629
6268
  }
6630
6269
 
6631
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6270
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6632
6271
  _mm512_mask_srai_epi32(__m512i __W, __mmask16 __U, __m512i __A,
6633
- unsigned int __B)
6634
- {
6272
+ unsigned int __B) {
6635
6273
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
6636
6274
  (__v16si)_mm512_srai_epi32(__A, __B),
6637
6275
  (__v16si)__W);
6638
6276
  }
6639
6277
 
6640
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6641
- _mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A,
6642
- unsigned int __B) {
6278
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6279
+ _mm512_maskz_srai_epi32(__mmask16 __U, __m512i __A, unsigned int __B) {
6643
6280
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
6644
6281
  (__v16si)_mm512_srai_epi32(__A, __B),
6645
6282
  (__v16si)_mm512_setzero_si512());
6646
6283
  }
6647
6284
 
6648
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6649
- _mm512_srai_epi64(__m512i __A, unsigned int __B)
6650
- {
6285
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6286
+ _mm512_srai_epi64(__m512i __A, unsigned int __B) {
6651
6287
  return (__m512i)__builtin_ia32_psraqi512((__v8di)__A, (int)__B);
6652
6288
  }
6653
6289
 
6654
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6655
- _mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A, unsigned int __B)
6656
- {
6290
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6291
+ _mm512_mask_srai_epi64(__m512i __W, __mmask8 __U, __m512i __A,
6292
+ unsigned int __B) {
6657
6293
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
6658
6294
  (__v8di)_mm512_srai_epi64(__A, __B),
6659
6295
  (__v8di)__W);
6660
6296
  }
6661
6297
 
6662
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6663
- _mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B)
6664
- {
6298
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6299
+ _mm512_maskz_srai_epi64(__mmask8 __U, __m512i __A, unsigned int __B) {
6665
6300
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
6666
6301
  (__v8di)_mm512_srai_epi64(__A, __B),
6667
6302
  (__v8di)_mm512_setzero_si512());
@@ -6827,33 +6462,29 @@ _mm_maskz_sqrt_ss (__mmask8 __U, __m128 __A, __m128 __B)
6827
6462
  (__v4sf)_mm_setzero_ps(), \
6828
6463
  (__mmask8)(U), (int)(R)))
6829
6464
 
6830
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6831
- _mm512_broadcast_f32x4(__m128 __A)
6832
- {
6465
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
6466
+ _mm512_broadcast_f32x4(__m128 __A) {
6833
6467
  return (__m512)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A,
6834
6468
  0, 1, 2, 3, 0, 1, 2, 3,
6835
6469
  0, 1, 2, 3, 0, 1, 2, 3);
6836
6470
  }
6837
6471
 
6838
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6839
- _mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A)
6840
- {
6472
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
6473
+ _mm512_mask_broadcast_f32x4(__m512 __O, __mmask16 __M, __m128 __A) {
6841
6474
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__M,
6842
6475
  (__v16sf)_mm512_broadcast_f32x4(__A),
6843
6476
  (__v16sf)__O);
6844
6477
  }
6845
6478
 
6846
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6847
- _mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A)
6848
- {
6479
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
6480
+ _mm512_maskz_broadcast_f32x4(__mmask16 __M, __m128 __A) {
6849
6481
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__M,
6850
6482
  (__v16sf)_mm512_broadcast_f32x4(__A),
6851
6483
  (__v16sf)_mm512_setzero_ps());
6852
6484
  }
6853
6485
 
6854
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6855
- _mm512_broadcast_f64x4(__m256d __A)
6856
- {
6486
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
6487
+ _mm512_broadcast_f64x4(__m256d __A) {
6857
6488
  return (__m512d)__builtin_shufflevector((__v4df)__A, (__v4df)__A,
6858
6489
  0, 1, 2, 3, 0, 1, 2, 3);
6859
6490
  }
@@ -6874,33 +6505,29 @@ _mm512_maskz_broadcast_f64x4(__mmask8 __M, __m256d __A)
6874
6505
  (__v8df)_mm512_setzero_pd());
6875
6506
  }
6876
6507
 
6877
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6878
- _mm512_broadcast_i32x4(__m128i __A)
6879
- {
6508
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6509
+ _mm512_broadcast_i32x4(__m128i __A) {
6880
6510
  return (__m512i)__builtin_shufflevector((__v4si)__A, (__v4si)__A,
6881
6511
  0, 1, 2, 3, 0, 1, 2, 3,
6882
6512
  0, 1, 2, 3, 0, 1, 2, 3);
6883
6513
  }
6884
6514
 
6885
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6886
- _mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A)
6887
- {
6515
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6516
+ _mm512_mask_broadcast_i32x4(__m512i __O, __mmask16 __M, __m128i __A) {
6888
6517
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
6889
6518
  (__v16si)_mm512_broadcast_i32x4(__A),
6890
6519
  (__v16si)__O);
6891
6520
  }
6892
6521
 
6893
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6894
- _mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A)
6895
- {
6522
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6523
+ _mm512_maskz_broadcast_i32x4(__mmask16 __M, __m128i __A) {
6896
6524
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
6897
6525
  (__v16si)_mm512_broadcast_i32x4(__A),
6898
6526
  (__v16si)_mm512_setzero_si512());
6899
6527
  }
6900
6528
 
6901
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
6902
- _mm512_broadcast_i64x4(__m256i __A)
6903
- {
6529
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
6530
+ _mm512_broadcast_i64x4(__m256i __A) {
6904
6531
  return (__m512i)__builtin_shufflevector((__v4di)__A, (__v4di)__A,
6905
6532
  0, 1, 2, 3, 0, 1, 2, 3);
6906
6533
  }
@@ -6921,33 +6548,29 @@ _mm512_maskz_broadcast_i64x4(__mmask8 __M, __m256i __A)
6921
6548
  (__v8di)_mm512_setzero_si512());
6922
6549
  }
6923
6550
 
6924
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6925
- _mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A)
6926
- {
6551
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
6552
+ _mm512_mask_broadcastsd_pd(__m512d __O, __mmask8 __M, __m128d __A) {
6927
6553
  return (__m512d)__builtin_ia32_selectpd_512(__M,
6928
6554
  (__v8df) _mm512_broadcastsd_pd(__A),
6929
6555
  (__v8df) __O);
6930
6556
  }
6931
6557
 
6932
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
6933
- _mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
6934
- {
6558
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
6559
+ _mm512_maskz_broadcastsd_pd(__mmask8 __M, __m128d __A) {
6935
6560
  return (__m512d)__builtin_ia32_selectpd_512(__M,
6936
6561
  (__v8df) _mm512_broadcastsd_pd(__A),
6937
6562
  (__v8df) _mm512_setzero_pd());
6938
6563
  }
6939
6564
 
6940
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6941
- _mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A)
6942
- {
6565
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
6566
+ _mm512_mask_broadcastss_ps(__m512 __O, __mmask16 __M, __m128 __A) {
6943
6567
  return (__m512)__builtin_ia32_selectps_512(__M,
6944
6568
  (__v16sf) _mm512_broadcastss_ps(__A),
6945
6569
  (__v16sf) __O);
6946
6570
  }
6947
6571
 
6948
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
6949
- _mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A)
6950
- {
6572
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
6573
+ _mm512_maskz_broadcastss_ps(__mmask16 __M, __m128 __A) {
6951
6574
  return (__m512)__builtin_ia32_selectps_512(__M,
6952
6575
  (__v16sf) _mm512_broadcastss_ps(__A),
6953
6576
  (__v16sf) _mm512_setzero_ps());
@@ -7391,10 +7014,10 @@ _mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
7391
7014
  __builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
7392
7015
  }
7393
7016
 
7394
- #define _mm512_extracti32x4_epi32(A, imm) \
7395
- ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \
7396
- (__v4si)_mm_undefined_si128(), \
7397
- (__mmask8)-1))
7017
+ #define _mm512_extracti32x4_epi32(A, imm) \
7018
+ ((__m128i)__builtin_ia32_extracti32x4_mask( \
7019
+ (__v16si)(__m512i)(A), (int)(imm), (__v4si)_mm_setzero_si128(), \
7020
+ (__mmask8) - 1))
7398
7021
 
7399
7022
  #define _mm512_mask_extracti32x4_epi32(W, U, A, imm) \
7400
7023
  ((__m128i)__builtin_ia32_extracti32x4_mask((__v16si)(__m512i)(A), (int)(imm), \
@@ -7406,10 +7029,10 @@ _mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
7406
7029
  (__v4si)_mm_setzero_si128(), \
7407
7030
  (__mmask8)(U)))
7408
7031
 
7409
- #define _mm512_extracti64x4_epi64(A, imm) \
7032
+ #define _mm512_extracti64x4_epi64(A, imm) \
7410
7033
  ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \
7411
- (__v4di)_mm256_undefined_si256(), \
7412
- (__mmask8)-1))
7034
+ (__v4di)_mm256_setzero_si256(), \
7035
+ (__mmask8) - 1))
7413
7036
 
7414
7037
  #define _mm512_mask_extracti64x4_epi64(W, U, A, imm) \
7415
7038
  ((__m256i)__builtin_ia32_extracti64x4_mask((__v8di)(__m512i)(A), (int)(imm), \
@@ -8274,93 +7897,82 @@ _mm_mask3_fnmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
8274
7897
  (__v8di)_mm512_permutex_epi64((X), (C)), \
8275
7898
  (__v8di)_mm512_setzero_si512()))
8276
7899
 
8277
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8278
- _mm512_permutexvar_pd (__m512i __X, __m512d __Y)
8279
- {
7900
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
7901
+ _mm512_permutexvar_pd(__m512i __X, __m512d __Y) {
8280
7902
  return (__m512d)__builtin_ia32_permvardf512((__v8df) __Y, (__v8di) __X);
8281
7903
  }
8282
7904
 
8283
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8284
- _mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y)
8285
- {
7905
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
7906
+ _mm512_mask_permutexvar_pd(__m512d __W, __mmask8 __U, __m512i __X,
7907
+ __m512d __Y) {
8286
7908
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
8287
7909
  (__v8df)_mm512_permutexvar_pd(__X, __Y),
8288
7910
  (__v8df)__W);
8289
7911
  }
8290
7912
 
8291
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8292
- _mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y)
8293
- {
7913
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
7914
+ _mm512_maskz_permutexvar_pd(__mmask8 __U, __m512i __X, __m512d __Y) {
8294
7915
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
8295
7916
  (__v8df)_mm512_permutexvar_pd(__X, __Y),
8296
7917
  (__v8df)_mm512_setzero_pd());
8297
7918
  }
8298
7919
 
8299
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8300
- _mm512_permutexvar_epi64 (__m512i __X, __m512i __Y)
8301
- {
7920
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7921
+ _mm512_permutexvar_epi64(__m512i __X, __m512i __Y) {
8302
7922
  return (__m512i)__builtin_ia32_permvardi512((__v8di)__Y, (__v8di)__X);
8303
7923
  }
8304
7924
 
8305
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8306
- _mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y)
8307
- {
7925
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7926
+ _mm512_maskz_permutexvar_epi64(__mmask8 __M, __m512i __X, __m512i __Y) {
8308
7927
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
8309
7928
  (__v8di)_mm512_permutexvar_epi64(__X, __Y),
8310
7929
  (__v8di)_mm512_setzero_si512());
8311
7930
  }
8312
7931
 
8313
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8314
- _mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X,
8315
- __m512i __Y)
8316
- {
7932
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7933
+ _mm512_mask_permutexvar_epi64(__m512i __W, __mmask8 __M, __m512i __X,
7934
+ __m512i __Y) {
8317
7935
  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__M,
8318
7936
  (__v8di)_mm512_permutexvar_epi64(__X, __Y),
8319
7937
  (__v8di)__W);
8320
7938
  }
8321
7939
 
8322
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8323
- _mm512_permutexvar_ps (__m512i __X, __m512 __Y)
8324
- {
7940
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
7941
+ _mm512_permutexvar_ps(__m512i __X, __m512 __Y) {
8325
7942
  return (__m512)__builtin_ia32_permvarsf512((__v16sf)__Y, (__v16si)__X);
8326
7943
  }
8327
7944
 
8328
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8329
- _mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y)
8330
- {
7945
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
7946
+ _mm512_mask_permutexvar_ps(__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y) {
8331
7947
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8332
7948
  (__v16sf)_mm512_permutexvar_ps(__X, __Y),
8333
7949
  (__v16sf)__W);
8334
7950
  }
8335
7951
 
8336
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8337
- _mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y)
8338
- {
7952
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
7953
+ _mm512_maskz_permutexvar_ps(__mmask16 __U, __m512i __X, __m512 __Y) {
8339
7954
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8340
7955
  (__v16sf)_mm512_permutexvar_ps(__X, __Y),
8341
7956
  (__v16sf)_mm512_setzero_ps());
8342
7957
  }
8343
7958
 
8344
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8345
- _mm512_permutexvar_epi32 (__m512i __X, __m512i __Y)
8346
- {
7959
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7960
+ _mm512_permutexvar_epi32(__m512i __X, __m512i __Y) {
8347
7961
  return (__m512i)__builtin_ia32_permvarsi512((__v16si)__Y, (__v16si)__X);
8348
7962
  }
8349
7963
 
8350
7964
  #define _mm512_permutevar_epi32 _mm512_permutexvar_epi32
8351
7965
 
8352
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8353
- _mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y)
8354
- {
7966
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7967
+ _mm512_maskz_permutexvar_epi32(__mmask16 __M, __m512i __X, __m512i __Y) {
8355
7968
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
8356
7969
  (__v16si)_mm512_permutexvar_epi32(__X, __Y),
8357
7970
  (__v16si)_mm512_setzero_si512());
8358
7971
  }
8359
7972
 
8360
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8361
- _mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
8362
- __m512i __Y)
8363
- {
7973
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
7974
+ _mm512_mask_permutexvar_epi32(__m512i __W, __mmask16 __M, __m512i __X,
7975
+ __m512i __Y) {
8364
7976
  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
8365
7977
  (__v16si)_mm512_permutexvar_epi32(__X, __Y),
8366
7978
  (__v16si)__W);
@@ -8368,69 +7980,59 @@ _mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
8368
7980
 
8369
7981
  #define _mm512_mask_permutevar_epi32 _mm512_mask_permutexvar_epi32
8370
7982
 
8371
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8372
- _mm512_kand (__mmask16 __A, __mmask16 __B)
8373
- {
7983
+ static __inline__ __mmask16
7984
+ __DEFAULT_FN_ATTRS_CONSTEXPR _mm512_kand(__mmask16 __A, __mmask16 __B) {
8374
7985
  return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B);
8375
7986
  }
8376
7987
 
8377
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8378
- _mm512_kandn (__mmask16 __A, __mmask16 __B)
8379
- {
7988
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
7989
+ _mm512_kandn(__mmask16 __A, __mmask16 __B) {
8380
7990
  return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A, (__mmask16) __B);
8381
7991
  }
8382
7992
 
8383
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8384
- _mm512_kor (__mmask16 __A, __mmask16 __B)
8385
- {
7993
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
7994
+ _mm512_kor(__mmask16 __A, __mmask16 __B) {
8386
7995
  return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B);
8387
7996
  }
8388
7997
 
8389
- static __inline__ int __DEFAULT_FN_ATTRS
8390
- _mm512_kortestc (__mmask16 __A, __mmask16 __B)
8391
- {
7998
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
7999
+ _mm512_kortestc(__mmask16 __A, __mmask16 __B) {
8392
8000
  return __builtin_ia32_kortestchi ((__mmask16) __A, (__mmask16) __B);
8393
8001
  }
8394
8002
 
8395
- static __inline__ int __DEFAULT_FN_ATTRS
8396
- _mm512_kortestz (__mmask16 __A, __mmask16 __B)
8397
- {
8003
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
8004
+ _mm512_kortestz(__mmask16 __A, __mmask16 __B) {
8398
8005
  return __builtin_ia32_kortestzhi ((__mmask16) __A, (__mmask16) __B);
8399
8006
  }
8400
8007
 
8401
- static __inline__ unsigned char __DEFAULT_FN_ATTRS
8402
- _kortestc_mask16_u8(__mmask16 __A, __mmask16 __B)
8403
- {
8008
+ static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
8009
+ _kortestc_mask16_u8(__mmask16 __A, __mmask16 __B) {
8404
8010
  return (unsigned char)__builtin_ia32_kortestchi(__A, __B);
8405
8011
  }
8406
8012
 
8407
- static __inline__ unsigned char __DEFAULT_FN_ATTRS
8408
- _kortestz_mask16_u8(__mmask16 __A, __mmask16 __B)
8409
- {
8013
+ static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
8014
+ _kortestz_mask16_u8(__mmask16 __A, __mmask16 __B) {
8410
8015
  return (unsigned char)__builtin_ia32_kortestzhi(__A, __B);
8411
8016
  }
8412
8017
 
8413
- static __inline__ unsigned char __DEFAULT_FN_ATTRS
8018
+ static __inline__ unsigned char __DEFAULT_FN_ATTRS_CONSTEXPR
8414
8019
  _kortest_mask16_u8(__mmask16 __A, __mmask16 __B, unsigned char *__C) {
8415
8020
  *__C = (unsigned char)__builtin_ia32_kortestchi(__A, __B);
8416
8021
  return (unsigned char)__builtin_ia32_kortestzhi(__A, __B);
8417
8022
  }
8418
8023
 
8419
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8420
- _mm512_kunpackb (__mmask16 __A, __mmask16 __B)
8421
- {
8024
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
8025
+ _mm512_kunpackb(__mmask16 __A, __mmask16 __B) {
8422
8026
  return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
8423
8027
  }
8424
8028
 
8425
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8426
- _mm512_kxnor (__mmask16 __A, __mmask16 __B)
8427
- {
8029
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
8030
+ _mm512_kxnor(__mmask16 __A, __mmask16 __B) {
8428
8031
  return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B);
8429
8032
  }
8430
8033
 
8431
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8432
- _mm512_kxor (__mmask16 __A, __mmask16 __B)
8433
- {
8034
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
8035
+ _mm512_kxor(__mmask16 __A, __mmask16 __B) {
8434
8036
  return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B);
8435
8037
  }
8436
8038
 
@@ -8447,12 +8049,12 @@ _mm512_kxor (__mmask16 __A, __mmask16 __B)
8447
8049
  #define _kshiftri_mask16(A, I) \
8448
8050
  ((__mmask16)__builtin_ia32_kshiftrihi((__mmask16)(A), (unsigned int)(I)))
8449
8051
 
8450
- static __inline__ unsigned int __DEFAULT_FN_ATTRS
8451
- _cvtmask16_u32(__mmask16 __A) {
8052
+ static __inline__ unsigned int
8053
+ __DEFAULT_FN_ATTRS_CONSTEXPR _cvtmask16_u32(__mmask16 __A) {
8452
8054
  return (unsigned int)__builtin_ia32_kmovw((__mmask16)__A);
8453
8055
  }
8454
8056
 
8455
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS
8057
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS_CONSTEXPR
8456
8058
  _cvtu32_mask16(unsigned int __A) {
8457
8059
  return (__mmask16)__builtin_ia32_kmovw((__mmask16)__A);
8458
8060
  }
@@ -8495,68 +8097,60 @@ _mm512_stream_ps (void *__P, __m512 __A)
8495
8097
  __builtin_nontemporal_store((__v16sf_aligned)__A, (__v16sf_aligned*)__P);
8496
8098
  }
8497
8099
 
8498
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8499
- _mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A)
8500
- {
8100
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8101
+ _mm512_mask_compress_pd(__m512d __W, __mmask8 __U, __m512d __A) {
8501
8102
  return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
8502
8103
  (__v8df) __W,
8503
8104
  (__mmask8) __U);
8504
8105
  }
8505
8106
 
8506
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8507
- _mm512_maskz_compress_pd (__mmask8 __U, __m512d __A)
8508
- {
8107
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8108
+ _mm512_maskz_compress_pd(__mmask8 __U, __m512d __A) {
8509
8109
  return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
8510
8110
  (__v8df)
8511
8111
  _mm512_setzero_pd (),
8512
8112
  (__mmask8) __U);
8513
8113
  }
8514
8114
 
8515
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8516
- _mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
8517
- {
8115
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8116
+ _mm512_mask_compress_epi64(__m512i __W, __mmask8 __U, __m512i __A) {
8518
8117
  return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
8519
8118
  (__v8di) __W,
8520
8119
  (__mmask8) __U);
8521
8120
  }
8522
8121
 
8523
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8524
- _mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A)
8525
- {
8122
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8123
+ _mm512_maskz_compress_epi64(__mmask8 __U, __m512i __A) {
8526
8124
  return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
8527
8125
  (__v8di)
8528
8126
  _mm512_setzero_si512 (),
8529
8127
  (__mmask8) __U);
8530
8128
  }
8531
8129
 
8532
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8533
- _mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A)
8534
- {
8130
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8131
+ _mm512_mask_compress_ps(__m512 __W, __mmask16 __U, __m512 __A) {
8535
8132
  return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
8536
8133
  (__v16sf) __W,
8537
8134
  (__mmask16) __U);
8538
8135
  }
8539
8136
 
8540
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8541
- _mm512_maskz_compress_ps (__mmask16 __U, __m512 __A)
8542
- {
8137
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8138
+ _mm512_maskz_compress_ps(__mmask16 __U, __m512 __A) {
8543
8139
  return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
8544
8140
  (__v16sf)
8545
8141
  _mm512_setzero_ps (),
8546
8142
  (__mmask16) __U);
8547
8143
  }
8548
8144
 
8549
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8550
- _mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
8551
- {
8145
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8146
+ _mm512_mask_compress_epi32(__m512i __W, __mmask16 __U, __m512i __A) {
8552
8147
  return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
8553
8148
  (__v16si) __W,
8554
8149
  (__mmask16) __U);
8555
8150
  }
8556
8151
 
8557
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8558
- _mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A)
8559
- {
8152
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8153
+ _mm512_maskz_compress_epi32(__mmask16 __U, __m512i __A) {
8560
8154
  return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
8561
8155
  (__v16si)
8562
8156
  _mm512_setzero_si512 (),
@@ -8609,130 +8203,114 @@ _mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A)
8609
8203
 
8610
8204
  /* Bit Test */
8611
8205
 
8612
- static __inline __mmask16 __DEFAULT_FN_ATTRS512
8613
- _mm512_test_epi32_mask (__m512i __A, __m512i __B)
8614
- {
8206
+ static __inline __mmask16 __DEFAULT_FN_ATTRS512_CONSTEXPR
8207
+ _mm512_test_epi32_mask(__m512i __A, __m512i __B) {
8615
8208
  return _mm512_cmpneq_epi32_mask (_mm512_and_epi32(__A, __B),
8616
8209
  _mm512_setzero_si512());
8617
8210
  }
8618
8211
 
8619
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS512
8620
- _mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
8621
- {
8212
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS512_CONSTEXPR
8213
+ _mm512_mask_test_epi32_mask(__mmask16 __U, __m512i __A, __m512i __B) {
8622
8214
  return _mm512_mask_cmpneq_epi32_mask (__U, _mm512_and_epi32 (__A, __B),
8623
8215
  _mm512_setzero_si512());
8624
8216
  }
8625
8217
 
8626
- static __inline __mmask8 __DEFAULT_FN_ATTRS512
8627
- _mm512_test_epi64_mask (__m512i __A, __m512i __B)
8628
- {
8218
+ static __inline __mmask8 __DEFAULT_FN_ATTRS512_CONSTEXPR
8219
+ _mm512_test_epi64_mask(__m512i __A, __m512i __B) {
8629
8220
  return _mm512_cmpneq_epi64_mask (_mm512_and_epi32 (__A, __B),
8630
8221
  _mm512_setzero_si512());
8631
8222
  }
8632
8223
 
8633
- static __inline__ __mmask8 __DEFAULT_FN_ATTRS512
8634
- _mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
8635
- {
8224
+ static __inline__ __mmask8 __DEFAULT_FN_ATTRS512_CONSTEXPR
8225
+ _mm512_mask_test_epi64_mask(__mmask8 __U, __m512i __A, __m512i __B) {
8636
8226
  return _mm512_mask_cmpneq_epi64_mask (__U, _mm512_and_epi32 (__A, __B),
8637
8227
  _mm512_setzero_si512());
8638
8228
  }
8639
8229
 
8640
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS512
8641
- _mm512_testn_epi32_mask (__m512i __A, __m512i __B)
8642
- {
8230
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS512_CONSTEXPR
8231
+ _mm512_testn_epi32_mask(__m512i __A, __m512i __B) {
8643
8232
  return _mm512_cmpeq_epi32_mask (_mm512_and_epi32 (__A, __B),
8644
8233
  _mm512_setzero_si512());
8645
8234
  }
8646
8235
 
8647
- static __inline__ __mmask16 __DEFAULT_FN_ATTRS512
8648
- _mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
8649
- {
8236
+ static __inline__ __mmask16 __DEFAULT_FN_ATTRS512_CONSTEXPR
8237
+ _mm512_mask_testn_epi32_mask(__mmask16 __U, __m512i __A, __m512i __B) {
8650
8238
  return _mm512_mask_cmpeq_epi32_mask (__U, _mm512_and_epi32 (__A, __B),
8651
8239
  _mm512_setzero_si512());
8652
8240
  }
8653
8241
 
8654
- static __inline__ __mmask8 __DEFAULT_FN_ATTRS512
8655
- _mm512_testn_epi64_mask (__m512i __A, __m512i __B)
8656
- {
8242
+ static __inline__ __mmask8 __DEFAULT_FN_ATTRS512_CONSTEXPR
8243
+ _mm512_testn_epi64_mask(__m512i __A, __m512i __B) {
8657
8244
  return _mm512_cmpeq_epi64_mask (_mm512_and_epi32 (__A, __B),
8658
8245
  _mm512_setzero_si512());
8659
8246
  }
8660
8247
 
8661
- static __inline__ __mmask8 __DEFAULT_FN_ATTRS512
8662
- _mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
8663
- {
8248
+ static __inline__ __mmask8 __DEFAULT_FN_ATTRS512_CONSTEXPR
8249
+ _mm512_mask_testn_epi64_mask(__mmask8 __U, __m512i __A, __m512i __B) {
8664
8250
  return _mm512_mask_cmpeq_epi64_mask (__U, _mm512_and_epi32 (__A, __B),
8665
8251
  _mm512_setzero_si512());
8666
8252
  }
8667
8253
 
8668
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8254
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8669
8255
  _mm512_movehdup_ps (__m512 __A)
8670
8256
  {
8671
8257
  return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
8672
8258
  1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 13, 13, 15, 15);
8673
8259
  }
8674
8260
 
8675
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8676
- _mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A)
8677
- {
8261
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8262
+ _mm512_mask_movehdup_ps(__m512 __W, __mmask16 __U, __m512 __A) {
8678
8263
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8679
8264
  (__v16sf)_mm512_movehdup_ps(__A),
8680
8265
  (__v16sf)__W);
8681
8266
  }
8682
8267
 
8683
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8684
- _mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A)
8685
- {
8268
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8269
+ _mm512_maskz_movehdup_ps(__mmask16 __U, __m512 __A) {
8686
8270
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8687
8271
  (__v16sf)_mm512_movehdup_ps(__A),
8688
8272
  (__v16sf)_mm512_setzero_ps());
8689
8273
  }
8690
8274
 
8691
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8275
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8692
8276
  _mm512_moveldup_ps (__m512 __A)
8693
8277
  {
8694
8278
  return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
8695
8279
  0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14);
8696
8280
  }
8697
8281
 
8698
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8699
- _mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A)
8700
- {
8282
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8283
+ _mm512_mask_moveldup_ps(__m512 __W, __mmask16 __U, __m512 __A) {
8701
8284
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8702
8285
  (__v16sf)_mm512_moveldup_ps(__A),
8703
8286
  (__v16sf)__W);
8704
8287
  }
8705
8288
 
8706
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8707
- _mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A)
8708
- {
8289
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8290
+ _mm512_maskz_moveldup_ps(__mmask16 __U, __m512 __A) {
8709
8291
  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
8710
8292
  (__v16sf)_mm512_moveldup_ps(__A),
8711
8293
  (__v16sf)_mm512_setzero_ps());
8712
8294
  }
8713
8295
 
8714
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
8715
- _mm_mask_move_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
8716
- {
8296
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
8297
+ _mm_mask_move_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
8717
8298
  return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B), __W);
8718
8299
  }
8719
8300
 
8720
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
8721
- _mm_maskz_move_ss (__mmask8 __U, __m128 __A, __m128 __B)
8722
- {
8301
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
8302
+ _mm_maskz_move_ss(__mmask8 __U, __m128 __A, __m128 __B) {
8723
8303
  return __builtin_ia32_selectss_128(__U, _mm_move_ss(__A, __B),
8724
8304
  _mm_setzero_ps());
8725
8305
  }
8726
8306
 
8727
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
8728
- _mm_mask_move_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
8729
- {
8307
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
8308
+ _mm_mask_move_sd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
8730
8309
  return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B), __W);
8731
8310
  }
8732
8311
 
8733
- static __inline__ __m128d __DEFAULT_FN_ATTRS128
8734
- _mm_maskz_move_sd (__mmask8 __U, __m128d __A, __m128d __B)
8735
- {
8312
+ static __inline__ __m128d __DEFAULT_FN_ATTRS128_CONSTEXPR
8313
+ _mm_maskz_move_sd(__mmask8 __U, __m128d __A, __m128d __B) {
8736
8314
  return __builtin_ia32_selectsd_128(__U, _mm_move_sd(__A, __B),
8737
8315
  _mm_setzero_pd());
8738
8316
  }
@@ -8798,7 +8376,7 @@ _mm_maskz_load_sd (__mmask8 __U, const double* __A)
8798
8376
  (__v16si)_mm512_shuffle_epi32((A), (I)), \
8799
8377
  (__v16si)_mm512_setzero_si512()))
8800
8378
 
8801
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8379
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8802
8380
  _mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A)
8803
8381
  {
8804
8382
  return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
@@ -8806,7 +8384,7 @@ _mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A)
8806
8384
  (__mmask8) __U);
8807
8385
  }
8808
8386
 
8809
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8387
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8810
8388
  _mm512_maskz_expand_pd (__mmask8 __U, __m512d __A)
8811
8389
  {
8812
8390
  return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
@@ -8814,7 +8392,7 @@ _mm512_maskz_expand_pd (__mmask8 __U, __m512d __A)
8814
8392
  (__mmask8) __U);
8815
8393
  }
8816
8394
 
8817
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8395
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8818
8396
  _mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
8819
8397
  {
8820
8398
  return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
@@ -8822,7 +8400,7 @@ _mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
8822
8400
  (__mmask8) __U);
8823
8401
  }
8824
8402
 
8825
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8403
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8826
8404
  _mm512_maskz_expand_epi64 ( __mmask8 __U, __m512i __A)
8827
8405
  {
8828
8406
  return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
@@ -8894,7 +8472,7 @@ _mm512_maskz_expandloadu_epi32(__mmask16 __U, void const *__P)
8894
8472
  (__mmask16) __U);
8895
8473
  }
8896
8474
 
8897
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8475
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8898
8476
  _mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A)
8899
8477
  {
8900
8478
  return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
@@ -8902,7 +8480,7 @@ _mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A)
8902
8480
  (__mmask16) __U);
8903
8481
  }
8904
8482
 
8905
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8483
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8906
8484
  _mm512_maskz_expand_ps (__mmask16 __U, __m512 __A)
8907
8485
  {
8908
8486
  return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
@@ -8910,7 +8488,7 @@ _mm512_maskz_expand_ps (__mmask16 __U, __m512 __A)
8910
8488
  (__mmask16) __U);
8911
8489
  }
8912
8490
 
8913
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8491
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8914
8492
  _mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
8915
8493
  {
8916
8494
  return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
@@ -8918,7 +8496,7 @@ _mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
8918
8496
  (__mmask16) __U);
8919
8497
  }
8920
8498
 
8921
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
8499
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8922
8500
  _mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
8923
8501
  {
8924
8502
  return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
@@ -8941,70 +8519,57 @@ _mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
8941
8519
  (__v8df)_mm512_setzero_pd(), \
8942
8520
  (__mmask8)(U), (int)(R)))
8943
8521
 
8944
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8945
- _mm512_cvtps_pd (__m256 __A)
8946
- {
8522
+ static __inline__ __m512d
8523
+ __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_cvtps_pd(__m256 __A) {
8947
8524
  return (__m512d) __builtin_convertvector((__v8sf)__A, __v8df);
8948
8525
  }
8949
8526
 
8950
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8951
- _mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A)
8952
- {
8527
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8528
+ _mm512_mask_cvtps_pd(__m512d __W, __mmask8 __U, __m256 __A) {
8953
8529
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
8954
8530
  (__v8df)_mm512_cvtps_pd(__A),
8955
8531
  (__v8df)__W);
8956
8532
  }
8957
8533
 
8958
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8959
- _mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A)
8960
- {
8534
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8535
+ _mm512_maskz_cvtps_pd(__mmask8 __U, __m256 __A) {
8961
8536
  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
8962
8537
  (__v8df)_mm512_cvtps_pd(__A),
8963
8538
  (__v8df)_mm512_setzero_pd());
8964
8539
  }
8965
8540
 
8966
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8967
- _mm512_cvtpslo_pd (__m512 __A)
8968
- {
8541
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8542
+ _mm512_cvtpslo_pd(__m512 __A) {
8969
8543
  return (__m512d) _mm512_cvtps_pd(_mm512_castps512_ps256(__A));
8970
8544
  }
8971
8545
 
8972
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8973
- _mm512_mask_cvtpslo_pd (__m512d __W, __mmask8 __U, __m512 __A)
8974
- {
8546
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8547
+ _mm512_mask_cvtpslo_pd(__m512d __W, __mmask8 __U, __m512 __A) {
8975
8548
  return (__m512d) _mm512_mask_cvtps_pd(__W, __U, _mm512_castps512_ps256(__A));
8976
8549
  }
8977
8550
 
8978
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8979
- _mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A)
8980
- {
8981
- return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
8982
- (__v8df) __A,
8983
- (__v8df) __W);
8551
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8552
+ _mm512_mask_mov_pd(__m512d __W, __mmask8 __U, __m512d __A) {
8553
+ return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, (__v8df)__A,
8554
+ (__v8df)__W);
8984
8555
  }
8985
8556
 
8986
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
8987
- _mm512_maskz_mov_pd (__mmask8 __U, __m512d __A)
8988
- {
8989
- return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
8990
- (__v8df) __A,
8991
- (__v8df) _mm512_setzero_pd ());
8557
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8558
+ _mm512_maskz_mov_pd(__mmask8 __U, __m512d __A) {
8559
+ return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U, (__v8df)__A,
8560
+ (__v8df)_mm512_setzero_pd());
8992
8561
  }
8993
8562
 
8994
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
8995
- _mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A)
8996
- {
8997
- return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
8998
- (__v16sf) __A,
8999
- (__v16sf) __W);
8563
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8564
+ _mm512_mask_mov_ps(__m512 __W, __mmask16 __U, __m512 __A) {
8565
+ return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, (__v16sf)__A,
8566
+ (__v16sf)__W);
9000
8567
  }
9001
8568
 
9002
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
9003
- _mm512_maskz_mov_ps (__mmask16 __U, __m512 __A)
9004
- {
9005
- return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
9006
- (__v16sf) __A,
9007
- (__v16sf) _mm512_setzero_ps ());
8569
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8570
+ _mm512_maskz_mov_ps(__mmask16 __U, __m512 __A) {
8571
+ return (__m512)__builtin_ia32_selectps_512((__mmask16)__U, (__v16sf)__A,
8572
+ (__v16sf)_mm512_setzero_ps());
9008
8573
  }
9009
8574
 
9010
8575
  static __inline__ void __DEFAULT_FN_ATTRS512
@@ -9053,18 +8618,16 @@ _mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A)
9053
8618
  (__v4sf)_mm_setzero_ps(), \
9054
8619
  (__mmask8)(U), (int)(R)))
9055
8620
 
9056
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
9057
- _mm_mask_cvtsd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128d __B)
9058
- {
8621
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
8622
+ _mm_mask_cvtsd_ss(__m128 __W, __mmask8 __U, __m128 __A, __m128d __B) {
9059
8623
  return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A,
9060
8624
  (__v2df)__B,
9061
8625
  (__v4sf)__W,
9062
8626
  (__mmask8)__U, _MM_FROUND_CUR_DIRECTION);
9063
8627
  }
9064
8628
 
9065
- static __inline__ __m128 __DEFAULT_FN_ATTRS128
9066
- _mm_maskz_cvtsd_ss (__mmask8 __U, __m128 __A, __m128d __B)
9067
- {
8629
+ static __inline__ __m128 __DEFAULT_FN_ATTRS128_CONSTEXPR
8630
+ _mm_maskz_cvtsd_ss(__mmask8 __U, __m128 __A, __m128d __B) {
9068
8631
  return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)__A,
9069
8632
  (__v2df)__B,
9070
8633
  (__v4sf)_mm_setzero_ps(),
@@ -9188,34 +8751,32 @@ _mm_cvtu64_ss (__m128 __A, unsigned long long __B)
9188
8751
  }
9189
8752
  #endif
9190
8753
 
9191
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
9192
- _mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A)
9193
- {
8754
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8755
+ _mm512_mask_set1_epi32(__m512i __O, __mmask16 __M, int __A) {
9194
8756
  return (__m512i) __builtin_ia32_selectd_512(__M,
9195
8757
  (__v16si) _mm512_set1_epi32(__A),
9196
8758
  (__v16si) __O);
9197
8759
  }
9198
8760
 
9199
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
9200
- _mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A)
9201
- {
8761
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8762
+ _mm512_mask_set1_epi64(__m512i __O, __mmask8 __M, long long __A) {
9202
8763
  return (__m512i) __builtin_ia32_selectq_512(__M,
9203
8764
  (__v8di) _mm512_set1_epi64(__A),
9204
8765
  (__v8di) __O);
9205
8766
  }
9206
8767
 
9207
- static __inline __m512i __DEFAULT_FN_ATTRS512
9208
- _mm512_set_epi8 (char __e63, char __e62, char __e61, char __e60, char __e59,
9209
- char __e58, char __e57, char __e56, char __e55, char __e54, char __e53,
9210
- char __e52, char __e51, char __e50, char __e49, char __e48, char __e47,
9211
- char __e46, char __e45, char __e44, char __e43, char __e42, char __e41,
9212
- char __e40, char __e39, char __e38, char __e37, char __e36, char __e35,
9213
- char __e34, char __e33, char __e32, char __e31, char __e30, char __e29,
9214
- char __e28, char __e27, char __e26, char __e25, char __e24, char __e23,
9215
- char __e22, char __e21, char __e20, char __e19, char __e18, char __e17,
9216
- char __e16, char __e15, char __e14, char __e13, char __e12, char __e11,
9217
- char __e10, char __e9, char __e8, char __e7, char __e6, char __e5,
9218
- char __e4, char __e3, char __e2, char __e1, char __e0) {
8768
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi8(
8769
+ char __e63, char __e62, char __e61, char __e60, char __e59, char __e58,
8770
+ char __e57, char __e56, char __e55, char __e54, char __e53, char __e52,
8771
+ char __e51, char __e50, char __e49, char __e48, char __e47, char __e46,
8772
+ char __e45, char __e44, char __e43, char __e42, char __e41, char __e40,
8773
+ char __e39, char __e38, char __e37, char __e36, char __e35, char __e34,
8774
+ char __e33, char __e32, char __e31, char __e30, char __e29, char __e28,
8775
+ char __e27, char __e26, char __e25, char __e24, char __e23, char __e22,
8776
+ char __e21, char __e20, char __e19, char __e18, char __e17, char __e16,
8777
+ char __e15, char __e14, char __e13, char __e12, char __e11, char __e10,
8778
+ char __e9, char __e8, char __e7, char __e6, char __e5, char __e4, char __e3,
8779
+ char __e2, char __e1, char __e0) {
9219
8780
 
9220
8781
  return __extension__ (__m512i)(__v64qi)
9221
8782
  {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7,
@@ -9228,14 +8789,13 @@ _mm512_set_epi8 (char __e63, char __e62, char __e61, char __e60, char __e59,
9228
8789
  __e56, __e57, __e58, __e59, __e60, __e61, __e62, __e63};
9229
8790
  }
9230
8791
 
9231
- static __inline __m512i __DEFAULT_FN_ATTRS512
9232
- _mm512_set_epi16(short __e31, short __e30, short __e29, short __e28,
9233
- short __e27, short __e26, short __e25, short __e24, short __e23,
9234
- short __e22, short __e21, short __e20, short __e19, short __e18,
9235
- short __e17, short __e16, short __e15, short __e14, short __e13,
9236
- short __e12, short __e11, short __e10, short __e9, short __e8,
9237
- short __e7, short __e6, short __e5, short __e4, short __e3,
9238
- short __e2, short __e1, short __e0) {
8792
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi16(
8793
+ short __e31, short __e30, short __e29, short __e28, short __e27,
8794
+ short __e26, short __e25, short __e24, short __e23, short __e22,
8795
+ short __e21, short __e20, short __e19, short __e18, short __e17,
8796
+ short __e16, short __e15, short __e14, short __e13, short __e12,
8797
+ short __e11, short __e10, short __e9, short __e8, short __e7, short __e6,
8798
+ short __e5, short __e4, short __e3, short __e2, short __e1, short __e0) {
9239
8799
  return __extension__ (__m512i)(__v32hi)
9240
8800
  {__e0, __e1, __e2, __e3, __e4, __e5, __e6, __e7,
9241
8801
  __e8, __e9, __e10, __e11, __e12, __e13, __e14, __e15,
@@ -9243,81 +8803,81 @@ _mm512_set_epi16(short __e31, short __e30, short __e29, short __e28,
9243
8803
  __e24, __e25, __e26, __e27, __e28, __e29, __e30, __e31 };
9244
8804
  }
9245
8805
 
9246
- static __inline __m512i __DEFAULT_FN_ATTRS512
9247
- _mm512_set_epi32 (int __A, int __B, int __C, int __D,
9248
- int __E, int __F, int __G, int __H,
9249
- int __I, int __J, int __K, int __L,
9250
- int __M, int __N, int __O, int __P)
9251
- {
8806
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_set_epi32(
8807
+ int __A, int __B, int __C, int __D, int __E, int __F, int __G, int __H,
8808
+ int __I, int __J, int __K, int __L, int __M, int __N, int __O, int __P) {
9252
8809
  return __extension__ (__m512i)(__v16si)
9253
8810
  { __P, __O, __N, __M, __L, __K, __J, __I,
9254
8811
  __H, __G, __F, __E, __D, __C, __B, __A };
9255
8812
  }
9256
8813
 
9257
- #define _mm512_setr_epi32(e0,e1,e2,e3,e4,e5,e6,e7, \
9258
- e8,e9,e10,e11,e12,e13,e14,e15) \
9259
- _mm512_set_epi32((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6), \
9260
- (e5),(e4),(e3),(e2),(e1),(e0))
8814
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_setr_epi32(
8815
+ int e0, int e1, int e2, int e3, int e4, int e5, int e6, int e7, int e8,
8816
+ int e9, int e10, int e11, int e12, int e13, int e14, int e15) {
8817
+ return _mm512_set_epi32(e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4,
8818
+ e3, e2, e1, e0);
8819
+ }
9261
8820
 
9262
- static __inline__ __m512i __DEFAULT_FN_ATTRS512
9263
- _mm512_set_epi64 (long long __A, long long __B, long long __C,
9264
- long long __D, long long __E, long long __F,
9265
- long long __G, long long __H)
9266
- {
8821
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8822
+ _mm512_set_epi64(long long __A, long long __B, long long __C, long long __D,
8823
+ long long __E, long long __F, long long __G, long long __H) {
9267
8824
  return __extension__ (__m512i) (__v8di)
9268
8825
  { __H, __G, __F, __E, __D, __C, __B, __A };
9269
8826
  }
9270
8827
 
9271
- #define _mm512_setr_epi64(e0,e1,e2,e3,e4,e5,e6,e7) \
9272
- _mm512_set_epi64((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0))
8828
+ static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
8829
+ _mm512_setr_epi64(long long e0, long long e1, long long e2, long long e3,
8830
+ long long e4, long long e5, long long e6, long long e7) {
8831
+ return _mm512_set_epi64(e7, e6, e5, e4, e3, e2, e1, e0);
8832
+ }
9273
8833
 
9274
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
9275
- _mm512_set_pd (double __A, double __B, double __C, double __D,
9276
- double __E, double __F, double __G, double __H)
9277
- {
8834
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8835
+ _mm512_set_pd(double __A, double __B, double __C, double __D, double __E,
8836
+ double __F, double __G, double __H) {
9278
8837
  return __extension__ (__m512d)
9279
8838
  { __H, __G, __F, __E, __D, __C, __B, __A };
9280
8839
  }
9281
8840
 
9282
- #define _mm512_setr_pd(e0,e1,e2,e3,e4,e5,e6,e7) \
9283
- _mm512_set_pd((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0))
8841
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8842
+ _mm512_setr_pd(double e0, double e1, double e2, double e3, double e4, double e5,
8843
+ double e6, double e7) {
8844
+ return _mm512_set_pd(e7, e6, e5, e4, e3, e2, e1, e0);
8845
+ }
9284
8846
 
9285
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
9286
- _mm512_set_ps (float __A, float __B, float __C, float __D,
9287
- float __E, float __F, float __G, float __H,
9288
- float __I, float __J, float __K, float __L,
9289
- float __M, float __N, float __O, float __P)
9290
- {
8847
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8848
+ _mm512_set_ps(float __A, float __B, float __C, float __D, float __E, float __F,
8849
+ float __G, float __H, float __I, float __J, float __K, float __L,
8850
+ float __M, float __N, float __O, float __P) {
9291
8851
  return __extension__ (__m512)
9292
8852
  { __P, __O, __N, __M, __L, __K, __J, __I,
9293
8853
  __H, __G, __F, __E, __D, __C, __B, __A };
9294
8854
  }
9295
8855
 
9296
- #define _mm512_setr_ps(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15) \
9297
- _mm512_set_ps((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6),(e5), \
9298
- (e4),(e3),(e2),(e1),(e0))
8856
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8857
+ _mm512_setr_ps(float e0, float e1, float e2, float e3, float e4, float e5,
8858
+ float e6, float e7, float e8, float e9, float e10, float e11,
8859
+ float e12, float e13, float e14, float e15) {
8860
+ return _mm512_set_ps(e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3,
8861
+ e2, e1, e0);
8862
+ }
9299
8863
 
9300
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
9301
- _mm512_abs_ps(__m512 __A)
9302
- {
8864
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8865
+ _mm512_abs_ps(__m512 __A) {
9303
8866
  return (__m512)_mm512_and_epi32(_mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
9304
8867
  }
9305
8868
 
9306
- static __inline__ __m512 __DEFAULT_FN_ATTRS512
9307
- _mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A)
9308
- {
8869
+ static __inline__ __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR
8870
+ _mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A) {
9309
8871
  return (__m512)_mm512_mask_and_epi32((__m512i)__W, __K, _mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
9310
8872
  }
9311
8873
 
9312
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
9313
- _mm512_abs_pd(__m512d __A)
9314
- {
8874
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8875
+ _mm512_abs_pd(__m512d __A) {
9315
8876
  return (__m512d)_mm512_and_epi64(_mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A) ;
9316
8877
  }
9317
8878
 
9318
- static __inline__ __m512d __DEFAULT_FN_ATTRS512
9319
- _mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A)
9320
- {
8879
+ static __inline__ __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
8880
+ _mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A) {
9321
8881
  return (__m512d)_mm512_mask_and_epi64((__v8di)__W, __K, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A);
9322
8882
  }
9323
8883
 
@@ -9337,19 +8897,23 @@ _mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A)
9337
8897
  * This takes log2(n) steps where n is the number of elements in the vector.
9338
8898
  */
9339
8899
 
9340
- static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
8900
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
8901
+ _mm512_reduce_add_epi64(__m512i __W) {
9341
8902
  return __builtin_reduce_add((__v8di)__W);
9342
8903
  }
9343
8904
 
9344
- static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_mul_epi64(__m512i __W) {
8905
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
8906
+ _mm512_reduce_mul_epi64(__m512i __W) {
9345
8907
  return __builtin_reduce_mul((__v8di)__W);
9346
8908
  }
9347
8909
 
9348
- static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_and_epi64(__m512i __W) {
8910
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
8911
+ _mm512_reduce_and_epi64(__m512i __W) {
9349
8912
  return __builtin_reduce_and((__v8di)__W);
9350
8913
  }
9351
8914
 
9352
- static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_or_epi64(__m512i __W) {
8915
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
8916
+ _mm512_reduce_or_epi64(__m512i __W) {
9353
8917
  return __builtin_reduce_or((__v8di)__W);
9354
8918
  }
9355
8919
 
@@ -9400,22 +8964,22 @@ _mm512_mask_reduce_mul_pd(__mmask8 __M, __m512d __W) {
9400
8964
  return __builtin_ia32_reduce_fmul_pd512(1.0, __W);
9401
8965
  }
9402
8966
 
9403
- static __inline__ int __DEFAULT_FN_ATTRS512
8967
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9404
8968
  _mm512_reduce_add_epi32(__m512i __W) {
9405
8969
  return __builtin_reduce_add((__v16si)__W);
9406
8970
  }
9407
8971
 
9408
- static __inline__ int __DEFAULT_FN_ATTRS512
8972
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9409
8973
  _mm512_reduce_mul_epi32(__m512i __W) {
9410
8974
  return __builtin_reduce_mul((__v16si)__W);
9411
8975
  }
9412
8976
 
9413
- static __inline__ int __DEFAULT_FN_ATTRS512
8977
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9414
8978
  _mm512_reduce_and_epi32(__m512i __W) {
9415
8979
  return __builtin_reduce_and((__v16si)__W);
9416
8980
  }
9417
8981
 
9418
- static __inline__ int __DEFAULT_FN_ATTRS512
8982
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9419
8983
  _mm512_reduce_or_epi32(__m512i __W) {
9420
8984
  return __builtin_reduce_or((__v16si)__W);
9421
8985
  }
@@ -9466,22 +9030,22 @@ _mm512_mask_reduce_mul_ps(__mmask16 __M, __m512 __W) {
9466
9030
  return __builtin_ia32_reduce_fmul_ps512(1.0f, __W);
9467
9031
  }
9468
9032
 
9469
- static __inline__ long long __DEFAULT_FN_ATTRS512
9033
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
9470
9034
  _mm512_reduce_max_epi64(__m512i __V) {
9471
9035
  return __builtin_reduce_max((__v8di)__V);
9472
9036
  }
9473
9037
 
9474
- static __inline__ unsigned long long __DEFAULT_FN_ATTRS512
9038
+ static __inline__ unsigned long long __DEFAULT_FN_ATTRS512_CONSTEXPR
9475
9039
  _mm512_reduce_max_epu64(__m512i __V) {
9476
9040
  return __builtin_reduce_max((__v8du)__V);
9477
9041
  }
9478
9042
 
9479
- static __inline__ long long __DEFAULT_FN_ATTRS512
9043
+ static __inline__ long long __DEFAULT_FN_ATTRS512_CONSTEXPR
9480
9044
  _mm512_reduce_min_epi64(__m512i __V) {
9481
9045
  return __builtin_reduce_min((__v8di)__V);
9482
9046
  }
9483
9047
 
9484
- static __inline__ unsigned long long __DEFAULT_FN_ATTRS512
9048
+ static __inline__ unsigned long long __DEFAULT_FN_ATTRS512_CONSTEXPR
9485
9049
  _mm512_reduce_min_epu64(__m512i __V) {
9486
9050
  return __builtin_reduce_min((__v8du)__V);
9487
9051
  }
@@ -9509,22 +9073,22 @@ _mm512_mask_reduce_min_epu64(__mmask8 __M, __m512i __V) {
9509
9073
  __V = _mm512_mask_mov_epi64(_mm512_set1_epi64(-1LL), __M, __V);
9510
9074
  return __builtin_reduce_min((__v8du)__V);
9511
9075
  }
9512
- static __inline__ int __DEFAULT_FN_ATTRS512
9076
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9513
9077
  _mm512_reduce_max_epi32(__m512i __V) {
9514
9078
  return __builtin_reduce_max((__v16si)__V);
9515
9079
  }
9516
9080
 
9517
- static __inline__ unsigned int __DEFAULT_FN_ATTRS512
9081
+ static __inline__ unsigned int __DEFAULT_FN_ATTRS512_CONSTEXPR
9518
9082
  _mm512_reduce_max_epu32(__m512i __V) {
9519
9083
  return __builtin_reduce_max((__v16su)__V);
9520
9084
  }
9521
9085
 
9522
- static __inline__ int __DEFAULT_FN_ATTRS512
9086
+ static __inline__ int __DEFAULT_FN_ATTRS512_CONSTEXPR
9523
9087
  _mm512_reduce_min_epi32(__m512i __V) {
9524
9088
  return __builtin_reduce_min((__v16si)__V);
9525
9089
  }
9526
9090
 
9527
- static __inline__ unsigned int __DEFAULT_FN_ATTRS512
9091
+ static __inline__ unsigned int __DEFAULT_FN_ATTRS512_CONSTEXPR
9528
9092
  _mm512_reduce_min_epu32(__m512i __V) {
9529
9093
  return __builtin_reduce_min((__v16su)__V);
9530
9094
  }