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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/23/include/__clang_cuda_complex_builtins.h +236 -0
  4. package/lib/clang/{19 → 23}/include/__clang_cuda_device_functions.h +15 -1
  5. package/lib/clang/{19 → 23}/include/__clang_cuda_intrinsics.h +288 -20
  6. package/lib/clang/{19 → 23}/include/__clang_cuda_math.h +5 -0
  7. package/lib/clang/{19 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
  8. package/lib/clang/{19 → 23}/include/__clang_cuda_runtime_wrapper.h +28 -5
  9. package/lib/clang/{19 → 23}/include/__clang_cuda_texture_intrinsics.h +437 -2
  10. package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
  11. package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
  12. package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
  13. package/lib/clang/{19 → 23}/include/__clang_hip_cmath.h +15 -9
  14. package/lib/clang/{19 → 23}/include/__clang_hip_libdevice_declares.h +24 -139
  15. package/lib/clang/{19 → 23}/include/__clang_hip_math.h +115 -34
  16. package/lib/clang/{19 → 23}/include/__clang_hip_runtime_wrapper.h +12 -1
  17. package/lib/clang/23/include/__clang_spirv_builtins.h +217 -0
  18. package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
  19. package/lib/clang/23/include/__clang_spirv_math.h +719 -0
  20. package/lib/clang/{19/include/float.h → 23/include/__float_float.h} +14 -34
  21. package/lib/clang/23/include/__float_header_macro.h +12 -0
  22. package/lib/clang/23/include/__float_infinity_nan.h +20 -0
  23. package/lib/clang/{19 → 23}/include/__stdarg_va_arg.h +2 -2
  24. package/lib/clang/{19 → 23}/include/adcintrin.h +5 -0
  25. package/lib/clang/{19 → 23}/include/adxintrin.h +5 -0
  26. package/lib/clang/{19 → 23}/include/altivec.h +169 -96
  27. package/lib/clang/23/include/amdgpuintrin.h +164 -0
  28. package/lib/clang/23/include/amdhsa_abi.h +83 -0
  29. package/lib/clang/23/include/amo.h +220 -0
  30. package/lib/clang/23/include/amxavx512intrin.h +596 -0
  31. package/lib/clang/{19 → 23}/include/amxcomplexintrin.h +4 -6
  32. package/lib/clang/{19 → 23}/include/amxfp16intrin.h +35 -0
  33. package/lib/clang/23/include/amxfp8intrin.h +230 -0
  34. package/lib/clang/{19 → 23}/include/amxintrin.h +3 -35
  35. package/lib/clang/23/include/amxmovrsintrin.h +48 -0
  36. package/lib/clang/23/include/andes_vector.h +21 -0
  37. package/lib/clang/23/include/arm64_neon.h +21 -0
  38. package/lib/clang/{19 → 23}/include/arm64intr.h +10 -0
  39. package/lib/clang/{19 → 23}/include/arm_acle.h +67 -89
  40. package/lib/clang/{19 → 23}/include/arm_fp16.h +89 -89
  41. package/lib/clang/{19 → 23}/include/arm_neon.h +43614 -38901
  42. package/lib/clang/{19 → 23}/include/arm_sme.h +1028 -94
  43. package/lib/clang/{19 → 23}/include/arm_sve.h +7331 -5170
  44. package/lib/clang/{19 → 23}/include/arm_vector_types.h +87 -0
  45. package/lib/clang/23/include/avx10_2_512bf16intrin.h +568 -0
  46. package/lib/clang/23/include/avx10_2_512convertintrin.h +322 -0
  47. package/lib/clang/23/include/avx10_2_512minmaxintrin.h +127 -0
  48. package/lib/clang/23/include/avx10_2_512niintrin.h +314 -0
  49. package/lib/clang/23/include/avx10_2_512satcvtdsintrin.h +307 -0
  50. package/lib/clang/23/include/avx10_2_512satcvtintrin.h +301 -0
  51. package/lib/clang/23/include/avx10_2bf16intrin.h +1094 -0
  52. package/lib/clang/23/include/avx10_2convertintrin.h +3257 -0
  53. package/lib/clang/23/include/avx10_2copyintrin.h +66 -0
  54. package/lib/clang/23/include/avx10_2minmaxintrin.h +232 -0
  55. package/lib/clang/23/include/avx10_2niintrin.h +409 -0
  56. package/lib/clang/23/include/avx10_2satcvtdsintrin.h +376 -0
  57. package/lib/clang/23/include/avx10_2satcvtintrin.h +312 -0
  58. package/lib/clang/{19 → 23}/include/avx2intrin.h +284 -378
  59. package/lib/clang/{19 → 23}/include/avx512bf16intrin.h +25 -16
  60. package/lib/clang/{19 → 23}/include/avx512bitalgintrin.h +21 -32
  61. package/lib/clang/23/include/avx512bmmintrin.h +174 -0
  62. package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
  63. package/lib/clang/{19 → 23}/include/avx512bwintrin.h +405 -534
  64. package/lib/clang/23/include/avx512cdintrin.h +112 -0
  65. package/lib/clang/{19 → 23}/include/avx512dqintrin.h +132 -161
  66. package/lib/clang/{19 → 23}/include/avx512fintrin.h +1068 -1496
  67. package/lib/clang/{19 → 23}/include/avx512fp16intrin.h +126 -129
  68. package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
  69. package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
  70. package/lib/clang/{19 → 23}/include/avx512vbmi2intrin.h +55 -48
  71. package/lib/clang/{19 → 23}/include/avx512vbmiintrin.h +19 -27
  72. package/lib/clang/{19 → 23}/include/avx512vbmivlintrin.h +35 -49
  73. package/lib/clang/{19 → 23}/include/avx512vlbf16intrin.h +32 -22
  74. package/lib/clang/{19 → 23}/include/avx512vlbitalgintrin.h +41 -57
  75. package/lib/clang/{19 → 23}/include/avx512vlbwintrin.h +494 -609
  76. package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
  77. package/lib/clang/{19 → 23}/include/avx512vldqintrin.h +110 -127
  78. package/lib/clang/{19 → 23}/include/avx512vlfp16intrin.h +130 -111
  79. package/lib/clang/{19 → 23}/include/avx512vlintrin.h +1025 -1395
  80. package/lib/clang/{19 → 23}/include/avx512vlvbmi2intrin.h +102 -95
  81. package/lib/clang/{19 → 23}/include/avx512vlvnniintrin.h +50 -52
  82. package/lib/clang/{19 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
  83. package/lib/clang/{19 → 23}/include/avx512vnniintrin.h +42 -45
  84. package/lib/clang/{19 → 23}/include/avx512vp2intersectintrin.h +2 -3
  85. package/lib/clang/{19 → 23}/include/avx512vpopcntdqintrin.h +10 -4
  86. package/lib/clang/{19 → 23}/include/avx512vpopcntdqvlintrin.h +20 -10
  87. package/lib/clang/{19 → 23}/include/avxifmaintrin.h +16 -0
  88. package/lib/clang/{19 → 23}/include/avxintrin.h +186 -248
  89. package/lib/clang/{19 → 23}/include/avxvnniint16intrin.h +130 -152
  90. package/lib/clang/{19 → 23}/include/avxvnniint8intrin.h +68 -85
  91. package/lib/clang/{19 → 23}/include/avxvnniintrin.h +39 -26
  92. package/lib/clang/{19 → 23}/include/bmi2intrin.h +15 -17
  93. package/lib/clang/{19 → 23}/include/bmiintrin.h +31 -41
  94. package/lib/clang/{19 → 23}/include/cmpccxaddintrin.h +1 -1
  95. package/lib/clang/{19 → 23}/include/cpuid.h +137 -37
  96. package/lib/clang/{19 → 23}/include/crc32intrin.h +10 -8
  97. package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
  98. package/lib/clang/23/include/cuda_wrappers/bits/c++config.h +61 -0
  99. package/lib/clang/23/include/cuda_wrappers/cmath +44 -0
  100. package/lib/clang/{19 → 23}/include/cuda_wrappers/new +2 -0
  101. package/lib/clang/{19 → 23}/include/emmintrin.h +306 -272
  102. package/lib/clang/23/include/endian.h +91 -0
  103. package/lib/clang/{19 → 23}/include/f16cintrin.h +23 -9
  104. package/lib/clang/23/include/float.h +48 -0
  105. package/lib/clang/23/include/fma4intrin.h +220 -0
  106. package/lib/clang/{19 → 23}/include/fmaintrin.h +96 -66
  107. package/lib/clang/{19 → 23}/include/gfniintrin.h +39 -12
  108. package/lib/clang/23/include/gpuintrin.h +348 -0
  109. package/lib/clang/{19 → 23}/include/hexagon_types.h +31 -24
  110. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
  111. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics_gen.inc +3869 -0
  112. package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
  113. package/lib/clang/23/include/hlsl/hlsl_compat_overloads.h +559 -0
  114. package/lib/clang/23/include/hlsl/hlsl_detail.h +56 -0
  115. package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
  116. package/lib/clang/23/include/hlsl/hlsl_intrinsic_helpers.h +170 -0
  117. package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
  118. package/lib/clang/23/include/hlsl/hlsl_spirv.h +28 -0
  119. package/lib/clang/23/include/hlsl.h +38 -0
  120. package/lib/clang/{19 → 23}/include/hvx_hexagon_protos.h +1041 -803
  121. package/lib/clang/{19 → 23}/include/immintrin.h +35 -185
  122. package/lib/clang/{19 → 23}/include/intrin.h +62 -21
  123. package/lib/clang/{19 → 23}/include/intrin0.h +10 -1
  124. package/lib/clang/{19 → 23}/include/keylockerintrin.h +0 -9
  125. package/lib/clang/{19 → 23}/include/larchintrin.h +24 -8
  126. package/lib/clang/{19 → 23}/include/lasxintrin.h +140 -25
  127. package/lib/clang/{19 → 23}/include/limits.h +7 -4
  128. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
  129. package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
  130. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
  131. package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
  132. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/stdlib.h +3 -16
  133. package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
  134. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/time.h +4 -10
  135. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  136. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  137. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  138. package/lib/clang/{19 → 23}/include/lsxintrin.h +27 -25
  139. package/lib/clang/{19 → 23}/include/lzcntintrin.h +13 -8
  140. package/lib/clang/{19 → 23}/include/mmintrin.h +241 -256
  141. package/lib/clang/{19 → 23}/include/module.modulemap +54 -9
  142. package/lib/clang/23/include/movrs_avx10_2_512intrin.h +98 -0
  143. package/lib/clang/23/include/movrs_avx10_2intrin.h +174 -0
  144. package/lib/clang/23/include/movrsintrin.h +59 -0
  145. package/lib/clang/23/include/nvptxintrin.h +208 -0
  146. package/lib/clang/{19 → 23}/include/opencl-c-base.h +28 -92
  147. package/lib/clang/{19 → 23}/include/opencl-c.h +506 -140
  148. package/lib/clang/{19 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +18 -5
  149. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex +7 -1
  150. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex.h +6 -0
  151. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex_cmath.h +7 -2
  152. package/lib/clang/{19 → 23}/include/openmp_wrappers/math.h +10 -0
  153. package/lib/clang/{19 → 23}/include/pmmintrin.h +24 -23
  154. package/lib/clang/{19 → 23}/include/popcntintrin.h +7 -7
  155. package/lib/clang/{19 → 23}/include/prfchwintrin.h +10 -13
  156. package/lib/clang/{19 → 23}/include/ptrauth.h +169 -14
  157. package/lib/clang/{19 → 23}/include/riscv_bitmanip.h +7 -0
  158. package/lib/clang/23/include/riscv_corev_alu.h +130 -0
  159. package/lib/clang/{19 → 23}/include/riscv_crypto.h +8 -0
  160. package/lib/clang/23/include/riscv_mips.h +36 -0
  161. package/lib/clang/23/include/riscv_nds.h +92 -0
  162. package/lib/clang/{19 → 23}/include/riscv_ntlh.h +2 -0
  163. package/lib/clang/23/include/riscv_packed_simd.h +644 -0
  164. package/lib/clang/{19 → 23}/include/riscv_vector.h +43 -5
  165. package/lib/clang/{19 → 23}/include/shaintrin.h +3 -2
  166. package/lib/clang/{19 → 23}/include/sifive_vector.h +76 -2
  167. package/lib/clang/23/include/sm4evexintrin.h +32 -0
  168. package/lib/clang/{19 → 23}/include/smmintrin.h +80 -56
  169. package/lib/clang/23/include/spirvintrin.h +167 -0
  170. package/lib/clang/{19 → 23}/include/stdalign.h +0 -5
  171. package/lib/clang/23/include/stdcountof.h +15 -0
  172. package/lib/clang/23/include/stddefer.h +19 -0
  173. package/lib/clang/{19 → 23}/include/stdint.h +23 -143
  174. package/lib/clang/{19 → 23}/include/tbmintrin.h +25 -37
  175. package/lib/clang/{19 → 23}/include/tmmintrin.h +125 -130
  176. package/lib/clang/{19 → 23}/include/vaesintrin.h +1 -2
  177. package/lib/clang/{19 → 23}/include/vecintrin.h +1783 -60
  178. package/lib/clang/{19 → 23}/include/wasm_simd128.h +184 -21
  179. package/lib/clang/{19 → 23}/include/x86gprintrin.h +0 -14
  180. package/lib/clang/{19 → 23}/include/x86intrin.h +0 -18
  181. package/lib/clang/{19 → 23}/include/xmmintrin.h +190 -221
  182. package/lib/clang/{19 → 23}/include/xopintrin.h +20 -10
  183. package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
  184. package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
  185. package/lib/clang/23/include/zos_wrappers/math.h +31 -0
  186. package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
  187. package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
  188. package/lib/clang/23/include/zos_wrappers/string.h +19 -0
  189. package/lib/clang/23/include/zos_wrappers/time.h +19 -0
  190. package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
  191. package/package.json +6 -6
  192. package/lib/clang/19/include/__clang_cuda_complex_builtins.h +0 -285
  193. package/lib/clang/19/include/avx512cdintrin.h +0 -125
  194. package/lib/clang/19/include/avx512ifmaintrin.h +0 -70
  195. package/lib/clang/19/include/avx512ifmavlintrin.h +0 -111
  196. package/lib/clang/19/include/avx512vlcdintrin.h +0 -230
  197. package/lib/clang/19/include/cuda_wrappers/cmath +0 -90
  198. package/lib/clang/19/include/fma4intrin.h +0 -218
  199. package/lib/clang/19/include/hlsl/hlsl_basic_types.h +0 -74
  200. package/lib/clang/19/include/hlsl/hlsl_intrinsics.h +0 -1697
  201. package/lib/clang/19/include/hlsl.h +0 -15
  202. package/lib/clang/19/include/llvm_libc_wrappers/ctype.h +0 -102
  203. package/lib/clang/19/include/llvm_libc_wrappers/stdio.h +0 -80
  204. package/lib/clang/19/include/llvm_libc_wrappers/string.h +0 -96
  205. /package/lib/clang/{19 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
  206. /package/lib/clang/{19 → 23}/include/__clang_cuda_cmath.h +0 -0
  207. /package/lib/clang/{19 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
  208. /package/lib/clang/{19 → 23}/include/__clang_hip_stdlib.h +0 -0
  209. /package/lib/clang/{19 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
  210. /package/lib/clang/{19 → 23}/include/__stdarg___va_copy.h +0 -0
  211. /package/lib/clang/{19 → 23}/include/__stdarg_header_macro.h +0 -0
  212. /package/lib/clang/{19 → 23}/include/__stdarg_va_copy.h +0 -0
  213. /package/lib/clang/{19 → 23}/include/__stdarg_va_list.h +0 -0
  214. /package/lib/clang/{19 → 23}/include/__stddef_header_macro.h +0 -0
  215. /package/lib/clang/{19 → 23}/include/__stddef_max_align_t.h +0 -0
  216. /package/lib/clang/{19 → 23}/include/__stddef_null.h +0 -0
  217. /package/lib/clang/{19 → 23}/include/__stddef_nullptr_t.h +0 -0
  218. /package/lib/clang/{19 → 23}/include/__stddef_offsetof.h +0 -0
  219. /package/lib/clang/{19 → 23}/include/__stddef_ptrdiff_t.h +0 -0
  220. /package/lib/clang/{19 → 23}/include/__stddef_rsize_t.h +0 -0
  221. /package/lib/clang/{19 → 23}/include/__stddef_size_t.h +0 -0
  222. /package/lib/clang/{19 → 23}/include/__stddef_unreachable.h +0 -0
  223. /package/lib/clang/{19 → 23}/include/__stddef_wchar_t.h +0 -0
  224. /package/lib/clang/{19 → 23}/include/__stddef_wint_t.h +0 -0
  225. /package/lib/clang/{19 → 23}/include/__wmmintrin_aes.h +0 -0
  226. /package/lib/clang/{19 → 23}/include/__wmmintrin_pclmul.h +0 -0
  227. /package/lib/clang/{19 → 23}/include/ammintrin.h +0 -0
  228. /package/lib/clang/{19 → 23}/include/arm_bf16.h +0 -0
  229. /package/lib/clang/{19 → 23}/include/arm_cde.h +0 -0
  230. /package/lib/clang/{19 → 23}/include/arm_cmse.h +0 -0
  231. /package/lib/clang/{19 → 23}/include/arm_mve.h +0 -0
  232. /package/lib/clang/{19 → 23}/include/arm_neon_sve_bridge.h +0 -0
  233. /package/lib/clang/{19 → 23}/include/armintr.h +0 -0
  234. /package/lib/clang/{19 → 23}/include/avxneconvertintrin.h +0 -0
  235. /package/lib/clang/{19 → 23}/include/builtins.h +0 -0
  236. /package/lib/clang/{19 → 23}/include/cet.h +0 -0
  237. /package/lib/clang/{19 → 23}/include/cetintrin.h +0 -0
  238. /package/lib/clang/{19 → 23}/include/cldemoteintrin.h +0 -0
  239. /package/lib/clang/{19 → 23}/include/clflushoptintrin.h +0 -0
  240. /package/lib/clang/{19 → 23}/include/clwbintrin.h +0 -0
  241. /package/lib/clang/{19 → 23}/include/clzerointrin.h +0 -0
  242. /package/lib/clang/{19 → 23}/include/cuda_wrappers/algorithm +0 -0
  243. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
  244. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  245. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  246. /package/lib/clang/{19 → 23}/include/cuda_wrappers/complex +0 -0
  247. /package/lib/clang/{19 → 23}/include/enqcmdintrin.h +0 -0
  248. /package/lib/clang/{19 → 23}/include/fxsrintrin.h +0 -0
  249. /package/lib/clang/{19 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
  250. /package/lib/clang/{19 → 23}/include/hexagon_protos.h +0 -0
  251. /package/lib/clang/{19 → 23}/include/hresetintrin.h +0 -0
  252. /package/lib/clang/{19 → 23}/include/htmintrin.h +0 -0
  253. /package/lib/clang/{19 → 23}/include/htmxlintrin.h +0 -0
  254. /package/lib/clang/{19 → 23}/include/ia32intrin.h +0 -0
  255. /package/lib/clang/{19 → 23}/include/inttypes.h +0 -0
  256. /package/lib/clang/{19 → 23}/include/invpcidintrin.h +0 -0
  257. /package/lib/clang/{19 → 23}/include/iso646.h +0 -0
  258. /package/lib/clang/{19 → 23}/include/lwpintrin.h +0 -0
  259. /package/lib/clang/{19 → 23}/include/mm3dnow.h +0 -0
  260. /package/lib/clang/{19 → 23}/include/mm_malloc.h +0 -0
  261. /package/lib/clang/{19 → 23}/include/movdirintrin.h +0 -0
  262. /package/lib/clang/{19 → 23}/include/msa.h +0 -0
  263. /package/lib/clang/{19 → 23}/include/mwaitxintrin.h +0 -0
  264. /package/lib/clang/{19 → 23}/include/nmmintrin.h +0 -0
  265. /package/lib/clang/{19 → 23}/include/openmp_wrappers/cmath +0 -0
  266. /package/lib/clang/{19 → 23}/include/openmp_wrappers/new +0 -0
  267. /package/lib/clang/{19 → 23}/include/pconfigintrin.h +0 -0
  268. /package/lib/clang/{19 → 23}/include/pkuintrin.h +0 -0
  269. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
  270. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
  271. /package/lib/clang/{19 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
  272. /package/lib/clang/{19 → 23}/include/ppc_wrappers/immintrin.h +0 -0
  273. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
  274. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
  275. /package/lib/clang/{19 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
  276. /package/lib/clang/{19 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
  277. /package/lib/clang/{19 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
  278. /package/lib/clang/{19 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
  279. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
  280. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
  281. /package/lib/clang/{19 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
  282. /package/lib/clang/{19 → 23}/include/prfchiintrin.h +0 -0
  283. /package/lib/clang/{19 → 23}/include/ptwriteintrin.h +0 -0
  284. /package/lib/clang/{19 → 23}/include/raointintrin.h +0 -0
  285. /package/lib/clang/{19 → 23}/include/rdpruintrin.h +0 -0
  286. /package/lib/clang/{19 → 23}/include/rdseedintrin.h +0 -0
  287. /package/lib/clang/{19 → 23}/include/rtmintrin.h +0 -0
  288. /package/lib/clang/{19 → 23}/include/s390intrin.h +0 -0
  289. /package/lib/clang/{19 → 23}/include/serializeintrin.h +0 -0
  290. /package/lib/clang/{19 → 23}/include/sgxintrin.h +0 -0
  291. /package/lib/clang/{19 → 23}/include/sha512intrin.h +0 -0
  292. /package/lib/clang/{19 → 23}/include/sm3intrin.h +0 -0
  293. /package/lib/clang/{19 → 23}/include/sm4intrin.h +0 -0
  294. /package/lib/clang/{19 → 23}/include/stdarg.h +0 -0
  295. /package/lib/clang/{19 → 23}/include/stdatomic.h +0 -0
  296. /package/lib/clang/{19 → 23}/include/stdbool.h +0 -0
  297. /package/lib/clang/{19 → 23}/include/stdckdint.h +0 -0
  298. /package/lib/clang/{19 → 23}/include/stddef.h +0 -0
  299. /package/lib/clang/{19 → 23}/include/stdnoreturn.h +0 -0
  300. /package/lib/clang/{19 → 23}/include/tgmath.h +0 -0
  301. /package/lib/clang/{19 → 23}/include/tsxldtrkintrin.h +0 -0
  302. /package/lib/clang/{19 → 23}/include/uintrintrin.h +0 -0
  303. /package/lib/clang/{19 → 23}/include/unwind.h +0 -0
  304. /package/lib/clang/{19 → 23}/include/usermsrintrin.h +0 -0
  305. /package/lib/clang/{19 → 23}/include/vadefs.h +0 -0
  306. /package/lib/clang/{19 → 23}/include/varargs.h +0 -0
  307. /package/lib/clang/{19 → 23}/include/velintrin.h +0 -0
  308. /package/lib/clang/{19 → 23}/include/velintrin_approx.h +0 -0
  309. /package/lib/clang/{19 → 23}/include/velintrin_gen.h +0 -0
  310. /package/lib/clang/{19 → 23}/include/vpclmulqdqintrin.h +0 -0
  311. /package/lib/clang/{19 → 23}/include/waitpkgintrin.h +0 -0
  312. /package/lib/clang/{19 → 23}/include/wbnoinvdintrin.h +0 -0
  313. /package/lib/clang/{19 → 23}/include/wmmintrin.h +0 -0
  314. /package/lib/clang/{19 → 23}/include/xsavecintrin.h +0 -0
  315. /package/lib/clang/{19 → 23}/include/xsaveintrin.h +0 -0
  316. /package/lib/clang/{19 → 23}/include/xsaveoptintrin.h +0 -0
  317. /package/lib/clang/{19 → 23}/include/xsavesintrin.h +0 -0
  318. /package/lib/clang/{19 → 23}/include/xtestintrin.h +0 -0
  319. /package/lib/clang/{19 → 23}/include/yvals_core.h +0 -0
  320. /package/lib/clang/{19 → 23}/include/zos_wrappers/builtins.h +0 -0
@@ -20,6 +20,35 @@ extern "C" {
20
20
 
21
21
  #pragma clang riscv intrinsic vector
22
22
 
23
+ #define __riscv_intrinsic_v 1
24
+ #define __riscv_intrinsic_zvabd 1
25
+ #define __riscv_intrinsic_zvbb 1
26
+ #define __riscv_intrinsic_zvbc 1
27
+ #define __riscv_intrinsic_zvdot4a8i 1
28
+ #define __riscv_intrinsic_zve32f 1
29
+ #define __riscv_intrinsic_zve32x 1
30
+ #define __riscv_intrinsic_zve64d 1
31
+ #define __riscv_intrinsic_zve64f 1
32
+ #define __riscv_intrinsic_zve64x 1
33
+ #define __riscv_intrinsic_zvfbfa 1
34
+ #define __riscv_intrinsic_zvfbfmin 1
35
+ #define __riscv_intrinsic_zvfbfwma 1
36
+ #define __riscv_intrinsic_zvfh 1
37
+ #define __riscv_intrinsic_zvfhmin 1
38
+ #define __riscv_intrinsic_zvfofp8min 1
39
+ #define __riscv_intrinsic_zvkb 1
40
+ #define __riscv_intrinsic_zvkg 1
41
+ #define __riscv_intrinsic_zvkn 1
42
+ #define __riscv_intrinsic_zvknc 1
43
+ #define __riscv_intrinsic_zvkned 1
44
+ #define __riscv_intrinsic_zvkng 1
45
+ #define __riscv_intrinsic_zvknha 1
46
+ #define __riscv_intrinsic_zvknhb 1
47
+ #define __riscv_intrinsic_zvks 1
48
+ #define __riscv_intrinsic_zvksc 1
49
+ #define __riscv_intrinsic_zvksed 1
50
+ #define __riscv_intrinsic_zvksg 1
51
+ #define __riscv_intrinsic_zvksh 1
23
52
 
24
53
  enum __RISCV_FRM {
25
54
  __RISCV_FRM_RNE = 0,
@@ -49,7 +78,6 @@ enum __RISCV_FRM {
49
78
  #define __riscv_vsetvl_e32m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 2)
50
79
  #define __riscv_vsetvl_e32m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 3)
51
80
 
52
- #if __riscv_v_elen >= 64
53
81
  #define __riscv_vsetvl_e8mf8(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 5)
54
82
  #define __riscv_vsetvl_e16mf4(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 6)
55
83
  #define __riscv_vsetvl_e32mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 7)
@@ -58,7 +86,6 @@ enum __RISCV_FRM {
58
86
  #define __riscv_vsetvl_e64m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 1)
59
87
  #define __riscv_vsetvl_e64m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 2)
60
88
  #define __riscv_vsetvl_e64m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 3)
61
- #endif
62
89
 
63
90
  #define __riscv_vsetvlmax_e8mf4() __builtin_rvv_vsetvlimax(0, 6)
64
91
  #define __riscv_vsetvlmax_e8mf2() __builtin_rvv_vsetvlimax(0, 7)
@@ -78,7 +105,6 @@ enum __RISCV_FRM {
78
105
  #define __riscv_vsetvlmax_e32m4() __builtin_rvv_vsetvlimax(2, 2)
79
106
  #define __riscv_vsetvlmax_e32m8() __builtin_rvv_vsetvlimax(2, 3)
80
107
 
81
- #if __riscv_v_elen >= 64
82
108
  #define __riscv_vsetvlmax_e8mf8() __builtin_rvv_vsetvlimax(0, 5)
83
109
  #define __riscv_vsetvlmax_e16mf4() __builtin_rvv_vsetvlimax(1, 6)
84
110
  #define __riscv_vsetvlmax_e32mf2() __builtin_rvv_vsetvlimax(2, 7)
@@ -87,7 +113,6 @@ enum __RISCV_FRM {
87
113
  #define __riscv_vsetvlmax_e64m2() __builtin_rvv_vsetvlimax(3, 1)
88
114
  #define __riscv_vsetvlmax_e64m4() __builtin_rvv_vsetvlimax(3, 2)
89
115
  #define __riscv_vsetvlmax_e64m8() __builtin_rvv_vsetvlimax(3, 3)
90
- #endif
91
116
 
92
117
 
93
118
  enum __RISCV_VXRM {
@@ -419,7 +444,20 @@ typedef __rvv_bfloat16m2x4_t vbfloat16m2x4_t;
419
444
  typedef __rvv_bfloat16m4_t vbfloat16m4_t;
420
445
  typedef __rvv_bfloat16m4x2_t vbfloat16m4x2_t;
421
446
  typedef __rvv_bfloat16m8_t vbfloat16m8_t;
422
- #define __riscv_v_intrinsic_overloading 1
447
+ typedef __rvv_float8e4m3mf8_t vfloat8e4m3mf8_t;
448
+ typedef __rvv_float8e4m3mf4_t vfloat8e4m3mf4_t;
449
+ typedef __rvv_float8e4m3mf2_t vfloat8e4m3mf2_t;
450
+ typedef __rvv_float8e4m3m1_t vfloat8e4m3m1_t;
451
+ typedef __rvv_float8e4m3m2_t vfloat8e4m3m2_t;
452
+ typedef __rvv_float8e4m3m4_t vfloat8e4m3m4_t;
453
+ typedef __rvv_float8e4m3m8_t vfloat8e4m3m8_t;
454
+ typedef __rvv_float8e5m2mf8_t vfloat8e5m2mf8_t;
455
+ typedef __rvv_float8e5m2mf4_t vfloat8e5m2mf4_t;
456
+ typedef __rvv_float8e5m2mf2_t vfloat8e5m2mf2_t;
457
+ typedef __rvv_float8e5m2m1_t vfloat8e5m2m1_t;
458
+ typedef __rvv_float8e5m2m2_t vfloat8e5m2m2_t;
459
+ typedef __rvv_float8e5m2m4_t vfloat8e5m2m4_t;
460
+ typedef __rvv_float8e5m2m8_t vfloat8e5m2m8_t;
423
461
 
424
462
  #ifdef __cplusplus
425
463
  }
@@ -47,8 +47,9 @@
47
47
  /// An immediate value where bits [1:0] select among four possible
48
48
  /// combining functions and rounding constants (not specified here).
49
49
  /// \returns A 128-bit vector of [4 x i32] containing the updated SHA-1 state.
50
- #define _mm_sha1rnds4_epu32(V1, V2, M) \
51
- __builtin_ia32_sha1rnds4((__v4si)(__m128i)(V1), (__v4si)(__m128i)(V2), (M))
50
+ #define _mm_sha1rnds4_epu32(V1, V2, M) \
51
+ ((__m128i)__builtin_ia32_sha1rnds4((__v4si)(__m128i)(V1), \
52
+ (__v4si)(__m128i)(V2), (M)))
52
53
 
53
54
  /// Calculates the SHA-1 state variable E from the SHA-1 state variables in
54
55
  /// the 128-bit vector of [4 x i32] in \a __X, adds that to the next set of
@@ -13,6 +13,24 @@
13
13
 
14
14
  #pragma clang riscv intrinsic sifive_vector
15
15
 
16
+ #define __riscv_intrinsic_xsfmm32a16f 1
17
+ #define __riscv_intrinsic_xsfmm32a32f 1
18
+ #define __riscv_intrinsic_xsfmm32a8f 1
19
+ #define __riscv_intrinsic_xsfmm32a8i 1
20
+ #define __riscv_intrinsic_xsfmm32a 1
21
+ #define __riscv_intrinsic_xsfmm64a64f 1
22
+ #define __riscv_intrinsic_xsfmmbase 1
23
+ #define __riscv_intrinsic_xsfvcp 1
24
+ #define __riscv_intrinsic_xsfvfbfexp16e 1
25
+ #define __riscv_intrinsic_xsfvfexp16e 1
26
+ #define __riscv_intrinsic_xsfvfexp32e 1
27
+ #define __riscv_intrinsic_xsfvfexpa 1
28
+ #define __riscv_intrinsic_xsfvfexpa64e 1
29
+ #define __riscv_intrinsic_xsfvfnrclipxfqf 1
30
+ #define __riscv_intrinsic_xsfvfwmaccqqq 1
31
+ #define __riscv_intrinsic_xsfvqmaccdod 1
32
+ #define __riscv_intrinsic_xsfvqmaccqoq 1
33
+
16
34
  #define __riscv_sf_vc_x_se_u8mf4(p27_26, p24_20, p11_7, rs1, vl) \
17
35
  __riscv_sf_vc_x_se(p27_26, p24_20, p11_7, (uint8_t)rs1, 8, 6, vl)
18
36
  #define __riscv_sf_vc_x_se_u8mf2(p27_26, p24_20, p11_7, rs1, vl) \
@@ -47,9 +65,9 @@
47
65
  __riscv_sf_vc_x_se(p27_26, p24_20, p11_7, (uint32_t)rs1, 32, 3, vl)
48
66
 
49
67
  #define __riscv_sf_vc_i_se_u8mf4(p27_26, p24_20, p11_7, simm5, vl) \
50
- __riscv_sf_vc_i_se(p27_26, p24_20, p11_7, simm5, 8, 7, vl)
51
- #define __riscv_sf_vc_i_se_u8mf2(p27_26, p24_20, p11_7, simm5, vl) \
52
68
  __riscv_sf_vc_i_se(p27_26, p24_20, p11_7, simm5, 8, 6, vl)
69
+ #define __riscv_sf_vc_i_se_u8mf2(p27_26, p24_20, p11_7, simm5, vl) \
70
+ __riscv_sf_vc_i_se(p27_26, p24_20, p11_7, simm5, 8, 7, vl)
53
71
  #define __riscv_sf_vc_i_se_u8m1(p27_26, p24_20, p11_7, simm5, vl) \
54
72
  __riscv_sf_vc_i_se(p27_26, p24_20, p11_7, simm5, 8, 0, vl)
55
73
  #define __riscv_sf_vc_i_se_u8m2(p27_26, p24_20, p11_7, simm5, vl) \
@@ -115,4 +133,60 @@
115
133
  #endif
116
134
  #endif
117
135
 
136
+ #define __riscv_sf_vsettnt_e8w1(atn) __riscv_sf_vsettnt(atn, 0, 1);
137
+ #define __riscv_sf_vsettnt_e8w2(atn) __riscv_sf_vsettnt(atn, 0, 2);
138
+ #define __riscv_sf_vsettnt_e8w4(atn) __riscv_sf_vsettnt(atn, 0, 3);
139
+ #define __riscv_sf_vsettnt_e16w1(atn) __riscv_sf_vsettnt(atn, 1, 1);
140
+ #define __riscv_sf_vsettnt_e16w2(atn) __riscv_sf_vsettnt(atn, 1, 2);
141
+ #define __riscv_sf_vsettnt_e16w4(atn) __riscv_sf_vsettnt(atn, 1, 3);
142
+ #define __riscv_sf_vsettnt_e32w1(atn) __riscv_sf_vsettnt(atn, 2, 1);
143
+ #define __riscv_sf_vsettnt_e32w2(atn) __riscv_sf_vsettnt(atn, 2, 2);
144
+ #define __riscv_sf_vsettm_e8w1(atm) __riscv_sf_vsettm(atm, 0, 1);
145
+ #define __riscv_sf_vsettm_e8w2(atm) __riscv_sf_vsettm(atm, 0, 2);
146
+ #define __riscv_sf_vsettm_e8w4(atm) __riscv_sf_vsettm(atm, 0, 3);
147
+ #define __riscv_sf_vsettm_e16w1(atm) __riscv_sf_vsettm(atm, 1, 1);
148
+ #define __riscv_sf_vsettm_e16w2(atm) __riscv_sf_vsettm(atm, 1, 2);
149
+ #define __riscv_sf_vsettm_e16w4(atm) __riscv_sf_vsettm(atm, 1, 3);
150
+ #define __riscv_sf_vsettm_e32w1(atm) __riscv_sf_vsettm(atm, 2, 1);
151
+ #define __riscv_sf_vsettm_e32w2(atm) __riscv_sf_vsettm(atm, 2, 2);
152
+ #define __riscv_sf_vsettn_e8w1(atn) __riscv_sf_vsettn(atn, 0, 1);
153
+ #define __riscv_sf_vsettn_e8w2(atn) __riscv_sf_vsettn(atn, 0, 2);
154
+ #define __riscv_sf_vsettn_e8w4(atn) __riscv_sf_vsettn(atn, 0, 3);
155
+ #define __riscv_sf_vsettn_e16w1(atn) __riscv_sf_vsettn(atn, 1, 1);
156
+ #define __riscv_sf_vsettn_e16w2(atn) __riscv_sf_vsettn(atn, 1, 2);
157
+ #define __riscv_sf_vsettn_e16w4(atn) __riscv_sf_vsettn(atn, 1, 3);
158
+ #define __riscv_sf_vsettn_e32w1(atn) __riscv_sf_vsettn(atn, 2, 1);
159
+ #define __riscv_sf_vsettn_e32w2(atn) __riscv_sf_vsettn(atn, 2, 2);
160
+ #define __riscv_sf_vsettk_e8w1(atk) __riscv_sf_vsettk(atk, 0, 1);
161
+ #define __riscv_sf_vsettk_e8w2(atk) __riscv_sf_vsettk(atk, 0, 2);
162
+ #define __riscv_sf_vsettk_e8w4(atk) __riscv_sf_vsettk(atk, 0, 3);
163
+ #define __riscv_sf_vsettk_e16w1(atk) __riscv_sf_vsettk(atk, 1, 1);
164
+ #define __riscv_sf_vsettk_e16w2(atk) __riscv_sf_vsettk(atk, 1, 2);
165
+ #define __riscv_sf_vsettk_e16w4(atk) __riscv_sf_vsettk(atk, 1, 3);
166
+ #define __riscv_sf_vsettk_e32w1(atk) __riscv_sf_vsettk(atk, 2, 1);
167
+ #define __riscv_sf_vsettk_e32w2(atk) __riscv_sf_vsettk(atk, 2, 2);
168
+ #define __riscv_sf_vtzero_t_e8w1(tile, atm, atn) \
169
+ __riscv_sf_vtzero_t(tile, atm, atn, 3, 1);
170
+ #define __riscv_sf_vtzero_t_e8w2(tile, atm, atn) \
171
+ __riscv_sf_vtzero_t(tile, atm, atn, 3, 2);
172
+ #define __riscv_sf_vtzero_t_e8w4(tile, atm, atn) \
173
+ __riscv_sf_vtzero_t(tile, atm, atn, 3, 4);
174
+ #define __riscv_sf_vtzero_t_e16w1(tile, atm, atn) \
175
+ __riscv_sf_vtzero_t(tile, atm, atn, 4, 1);
176
+ #define __riscv_sf_vtzero_t_e16w2(tile, atm, atn) \
177
+ __riscv_sf_vtzero_t(tile, atm, atn, 4, 2);
178
+ #define __riscv_sf_vtzero_t_e16w4(tile, atm, atn) \
179
+ __riscv_sf_vtzero_t(tile, atm, atn, 4, 4);
180
+ #define __riscv_sf_vtzero_t_e32w1(tile, atm, atn) \
181
+ __riscv_sf_vtzero_t(tile, atm, atn, 5, 1);
182
+ #define __riscv_sf_vtzero_t_e32w2(tile, atm, atn) \
183
+ __riscv_sf_vtzero_t(tile, atm, atn, 5, 2);
184
+ #if __riscv_v_elen >= 64
185
+ #define __riscv_sf_vsettnt_e64w1(atn) __riscv_sf_vsettnt(atn, 3, 1);
186
+ #define __riscv_sf_vsettm_e64w1(atm) __riscv_sf_vsettm(atm, 3, 1);
187
+ #define __riscv_sf_vsettn_e64w1(atn) __riscv_sf_vsettn(atn, 3, 1);
188
+ #define __riscv_sf_vsettk_e64w1(atk) __riscv_sf_vsettk(atk, 3, 1);
189
+ #define __riscv_sf_vtzero_t_e64w1(tile, atm, atn) \
190
+ __riscv_sf_vtzero_t(tile, atm, atn, 6, 1);
191
+ #endif
118
192
  #endif //_SIFIVE_VECTOR_H_
@@ -0,0 +1,32 @@
1
+ /*===--------------- sm4evexintrin.h - SM4 EVEX intrinsics -----------------===
2
+ *
3
+ * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
+ * See https://llvm.org/LICENSE.txt for license information.
5
+ * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
+ *
7
+ *===----------------------------------------------------------------------===
8
+ */
9
+ #ifndef __IMMINTRIN_H
10
+ #error "Never use <sm4evexintrin.h> directly; include <immintrin.h> instead."
11
+ #endif // __IMMINTRIN_H
12
+
13
+ #ifndef __SM4EVEXINTRIN_H
14
+ #define __SM4EVEXINTRIN_H
15
+
16
+ #define __DEFAULT_FN_ATTRS512 \
17
+ __attribute__((__always_inline__, __nodebug__, __target__("sm4,avx10.2"), \
18
+ __min_vector_width__(512)))
19
+
20
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512
21
+ _mm512_sm4key4_epi32(__m512i __A, __m512i __B) {
22
+ return (__m512i)__builtin_ia32_vsm4key4512((__v16su)__A, (__v16su)__B);
23
+ }
24
+
25
+ static __inline__ __m512i __DEFAULT_FN_ATTRS512
26
+ _mm512_sm4rnds4_epi32(__m512i __A, __m512i __B) {
27
+ return (__m512i)__builtin_ia32_vsm4rnds4512((__v16su)__A, (__v16su)__B);
28
+ }
29
+
30
+ #undef __DEFAULT_FN_ATTRS512
31
+
32
+ #endif // __SM4EVEXINTRIN_H
@@ -18,8 +18,14 @@
18
18
 
19
19
  /* Define the default attributes for the functions in this file. */
20
20
  #define __DEFAULT_FN_ATTRS \
21
- __attribute__((__always_inline__, __nodebug__, \
22
- __target__("sse4.1,no-evex512"), __min_vector_width__(128)))
21
+ __attribute__((__always_inline__, __nodebug__, __target__("sse4.1"), \
22
+ __min_vector_width__(128)))
23
+
24
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
25
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
26
+ #else
27
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
28
+ #endif
23
29
 
24
30
  /* SSE4 Rounding macros. */
25
31
  #define _MM_FROUND_TO_NEAREST_INT 0x00
@@ -433,9 +439,8 @@
433
439
  /// position in the result. When a mask bit is 1, the corresponding 64-bit
434
440
  /// element in operand \a __V2 is copied to the same position in the result.
435
441
  /// \returns A 128-bit vector of [2 x double] containing the copied values.
436
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_blendv_pd(__m128d __V1,
437
- __m128d __V2,
438
- __m128d __M) {
442
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
443
+ _mm_blendv_pd(__m128d __V1, __m128d __V2, __m128d __M) {
439
444
  return (__m128d)__builtin_ia32_blendvpd((__v2df)__V1, (__v2df)__V2,
440
445
  (__v2df)__M);
441
446
  }
@@ -460,9 +465,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_blendv_pd(__m128d __V1,
460
465
  /// position in the result. When a mask bit is 1, the corresponding 32-bit
461
466
  /// element in operand \a __V2 is copied to the same position in the result.
462
467
  /// \returns A 128-bit vector of [4 x float] containing the copied values.
463
- static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_blendv_ps(__m128 __V1,
464
- __m128 __V2,
465
- __m128 __M) {
468
+ static __inline__ __m128 __DEFAULT_FN_ATTRS_CONSTEXPR
469
+ _mm_blendv_ps(__m128 __V1, __m128 __V2, __m128 __M) {
466
470
  return (__m128)__builtin_ia32_blendvps((__v4sf)__V1, (__v4sf)__V2,
467
471
  (__v4sf)__M);
468
472
  }
@@ -487,9 +491,8 @@ static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_blendv_ps(__m128 __V1,
487
491
  /// position in the result. When a mask bit is 1, the corresponding 8-bit
488
492
  /// element in operand \a __V2 is copied to the same position in the result.
489
493
  /// \returns A 128-bit vector of [16 x i8] containing the copied values.
490
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_blendv_epi8(__m128i __V1,
491
- __m128i __V2,
492
- __m128i __M) {
494
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
495
+ _mm_blendv_epi8(__m128i __V1, __m128i __V2, __m128i __M) {
493
496
  return (__m128i)__builtin_ia32_pblendvb128((__v16qi)__V1, (__v16qi)__V2,
494
497
  (__v16qi)__M);
495
498
  }
@@ -536,8 +539,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_blendv_epi8(__m128i __V1,
536
539
  /// \param __V2
537
540
  /// A 128-bit integer vector.
538
541
  /// \returns A 128-bit integer vector containing the products of both operands.
539
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi32(__m128i __V1,
540
- __m128i __V2) {
542
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
543
+ _mm_mullo_epi32(__m128i __V1, __m128i __V2) {
541
544
  return (__m128i)((__v4su)__V1 * (__v4su)__V2);
542
545
  }
543
546
 
@@ -555,8 +558,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi32(__m128i __V1,
555
558
  /// A 128-bit vector of [4 x i32].
556
559
  /// \returns A 128-bit vector of [2 x i64] containing the products of both
557
560
  /// operands.
558
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mul_epi32(__m128i __V1,
559
- __m128i __V2) {
561
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
562
+ _mm_mul_epi32(__m128i __V1, __m128i __V2) {
560
563
  return (__m128i)__builtin_ia32_pmuldq128((__v4si)__V1, (__v4si)__V2);
561
564
  }
562
565
 
@@ -663,8 +666,8 @@ _mm_stream_load_si128(const void *__V) {
663
666
  /// \param __V2
664
667
  /// A 128-bit vector of [16 x i8]
665
668
  /// \returns A 128-bit vector of [16 x i8] containing the lesser values.
666
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi8(__m128i __V1,
667
- __m128i __V2) {
669
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
670
+ _mm_min_epi8(__m128i __V1, __m128i __V2) {
668
671
  return (__m128i)__builtin_elementwise_min((__v16qs)__V1, (__v16qs)__V2);
669
672
  }
670
673
 
@@ -681,8 +684,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi8(__m128i __V1,
681
684
  /// \param __V2
682
685
  /// A 128-bit vector of [16 x i8].
683
686
  /// \returns A 128-bit vector of [16 x i8] containing the greater values.
684
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi8(__m128i __V1,
685
- __m128i __V2) {
687
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
688
+ _mm_max_epi8(__m128i __V1, __m128i __V2) {
686
689
  return (__m128i)__builtin_elementwise_max((__v16qs)__V1, (__v16qs)__V2);
687
690
  }
688
691
 
@@ -699,8 +702,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi8(__m128i __V1,
699
702
  /// \param __V2
700
703
  /// A 128-bit vector of [8 x u16].
701
704
  /// \returns A 128-bit vector of [8 x u16] containing the lesser values.
702
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu16(__m128i __V1,
703
- __m128i __V2) {
705
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
706
+ _mm_min_epu16(__m128i __V1, __m128i __V2) {
704
707
  return (__m128i)__builtin_elementwise_min((__v8hu)__V1, (__v8hu)__V2);
705
708
  }
706
709
 
@@ -717,8 +720,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu16(__m128i __V1,
717
720
  /// \param __V2
718
721
  /// A 128-bit vector of [8 x u16].
719
722
  /// \returns A 128-bit vector of [8 x u16] containing the greater values.
720
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu16(__m128i __V1,
721
- __m128i __V2) {
723
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
724
+ _mm_max_epu16(__m128i __V1, __m128i __V2) {
722
725
  return (__m128i)__builtin_elementwise_max((__v8hu)__V1, (__v8hu)__V2);
723
726
  }
724
727
 
@@ -735,8 +738,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu16(__m128i __V1,
735
738
  /// \param __V2
736
739
  /// A 128-bit vector of [4 x i32].
737
740
  /// \returns A 128-bit vector of [4 x i32] containing the lesser values.
738
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi32(__m128i __V1,
739
- __m128i __V2) {
741
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
742
+ _mm_min_epi32(__m128i __V1, __m128i __V2) {
740
743
  return (__m128i)__builtin_elementwise_min((__v4si)__V1, (__v4si)__V2);
741
744
  }
742
745
 
@@ -753,8 +756,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epi32(__m128i __V1,
753
756
  /// \param __V2
754
757
  /// A 128-bit vector of [4 x i32].
755
758
  /// \returns A 128-bit vector of [4 x i32] containing the greater values.
756
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi32(__m128i __V1,
757
- __m128i __V2) {
759
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
760
+ _mm_max_epi32(__m128i __V1, __m128i __V2) {
758
761
  return (__m128i)__builtin_elementwise_max((__v4si)__V1, (__v4si)__V2);
759
762
  }
760
763
 
@@ -771,8 +774,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epi32(__m128i __V1,
771
774
  /// \param __V2
772
775
  /// A 128-bit vector of [4 x u32].
773
776
  /// \returns A 128-bit vector of [4 x u32] containing the lesser values.
774
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu32(__m128i __V1,
775
- __m128i __V2) {
777
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
778
+ _mm_min_epu32(__m128i __V1, __m128i __V2) {
776
779
  return (__m128i)__builtin_elementwise_min((__v4su)__V1, (__v4su)__V2);
777
780
  }
778
781
 
@@ -789,8 +792,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_min_epu32(__m128i __V1,
789
792
  /// \param __V2
790
793
  /// A 128-bit vector of [4 x u32].
791
794
  /// \returns A 128-bit vector of [4 x u32] containing the greater values.
792
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu32(__m128i __V1,
793
- __m128i __V2) {
795
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
796
+ _mm_max_epu32(__m128i __V1, __m128i __V2) {
794
797
  return (__m128i)__builtin_elementwise_max((__v4su)__V1, (__v4su)__V2);
795
798
  }
796
799
 
@@ -1090,8 +1093,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_max_epu32(__m128i __V1,
1090
1093
  /// \param __V
1091
1094
  /// A 128-bit integer vector selecting which bits to test in operand \a __M.
1092
1095
  /// \returns TRUE if the specified bits are all zeros; FALSE otherwise.
1093
- static __inline__ int __DEFAULT_FN_ATTRS _mm_testz_si128(__m128i __M,
1094
- __m128i __V) {
1096
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
1097
+ _mm_testz_si128(__m128i __M, __m128i __V) {
1095
1098
  return __builtin_ia32_ptestz128((__v2di)__M, (__v2di)__V);
1096
1099
  }
1097
1100
 
@@ -1107,8 +1110,8 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_testz_si128(__m128i __M,
1107
1110
  /// \param __V
1108
1111
  /// A 128-bit integer vector selecting which bits to test in operand \a __M.
1109
1112
  /// \returns TRUE if the specified bits are all ones; FALSE otherwise.
1110
- static __inline__ int __DEFAULT_FN_ATTRS _mm_testc_si128(__m128i __M,
1111
- __m128i __V) {
1113
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
1114
+ _mm_testc_si128(__m128i __M, __m128i __V) {
1112
1115
  return __builtin_ia32_ptestc128((__v2di)__M, (__v2di)__V);
1113
1116
  }
1114
1117
 
@@ -1125,8 +1128,8 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_testc_si128(__m128i __M,
1125
1128
  /// A 128-bit integer vector selecting which bits to test in operand \a __M.
1126
1129
  /// \returns TRUE if the specified bits are neither all zeros nor all ones;
1127
1130
  /// FALSE otherwise.
1128
- static __inline__ int __DEFAULT_FN_ATTRS _mm_testnzc_si128(__m128i __M,
1129
- __m128i __V) {
1131
+ static __inline__ int __DEFAULT_FN_ATTRS_CONSTEXPR
1132
+ _mm_testnzc_si128(__m128i __M, __m128i __V) {
1130
1133
  return __builtin_ia32_ptestnzc128((__v2di)__M, (__v2di)__V);
1131
1134
  }
1132
1135
 
@@ -1199,8 +1202,8 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_testnzc_si128(__m128i __M,
1199
1202
  /// \param __V2
1200
1203
  /// A 128-bit integer vector.
1201
1204
  /// \returns A 128-bit integer vector containing the comparison results.
1202
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi64(__m128i __V1,
1203
- __m128i __V2) {
1205
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1206
+ _mm_cmpeq_epi64(__m128i __V1, __m128i __V2) {
1204
1207
  return (__m128i)((__v2di)__V1 == (__v2di)__V2);
1205
1208
  }
1206
1209
 
@@ -1218,7 +1221,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpeq_epi64(__m128i __V1,
1218
1221
  /// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are
1219
1222
  /// sign-extended to 16-bit values.
1220
1223
  /// \returns A 128-bit vector of [8 x i16] containing the sign-extended values.
1221
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi16(__m128i __V) {
1224
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1225
+ _mm_cvtepi8_epi16(__m128i __V) {
1222
1226
  /* This function always performs a signed extension, but __v16qi is a char
1223
1227
  which may be signed or unsigned, so use __v16qs. */
1224
1228
  return (__m128i) __builtin_convertvector(
@@ -1240,7 +1244,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi16(__m128i __V) {
1240
1244
  /// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are
1241
1245
  /// sign-extended to 32-bit values.
1242
1246
  /// \returns A 128-bit vector of [4 x i32] containing the sign-extended values.
1243
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi32(__m128i __V) {
1247
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1248
+ _mm_cvtepi8_epi32(__m128i __V) {
1244
1249
  /* This function always performs a signed extension, but __v16qi is a char
1245
1250
  which may be signed or unsigned, so use __v16qs. */
1246
1251
  return (__m128i) __builtin_convertvector(
@@ -1260,7 +1265,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi32(__m128i __V) {
1260
1265
  /// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are
1261
1266
  /// sign-extended to 64-bit values.
1262
1267
  /// \returns A 128-bit vector of [2 x i64] containing the sign-extended values.
1263
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi64(__m128i __V) {
1268
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1269
+ _mm_cvtepi8_epi64(__m128i __V) {
1264
1270
  /* This function always performs a signed extension, but __v16qi is a char
1265
1271
  which may be signed or unsigned, so use __v16qs. */
1266
1272
  return (__m128i) __builtin_convertvector(
@@ -1280,7 +1286,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi8_epi64(__m128i __V) {
1280
1286
  /// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are
1281
1287
  /// sign-extended to 32-bit values.
1282
1288
  /// \returns A 128-bit vector of [4 x i32] containing the sign-extended values.
1283
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi32(__m128i __V) {
1289
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1290
+ _mm_cvtepi16_epi32(__m128i __V) {
1284
1291
  return (__m128i) __builtin_convertvector(
1285
1292
  __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4si);
1286
1293
  }
@@ -1298,7 +1305,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi32(__m128i __V) {
1298
1305
  /// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are
1299
1306
  /// sign-extended to 64-bit values.
1300
1307
  /// \returns A 128-bit vector of [2 x i64] containing the sign-extended values.
1301
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi64(__m128i __V) {
1308
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1309
+ _mm_cvtepi16_epi64(__m128i __V) {
1302
1310
  return (__m128i) __builtin_convertvector(
1303
1311
  __builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1), __v2di);
1304
1312
  }
@@ -1316,7 +1324,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi16_epi64(__m128i __V) {
1316
1324
  /// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are
1317
1325
  /// sign-extended to 64-bit values.
1318
1326
  /// \returns A 128-bit vector of [2 x i64] containing the sign-extended values.
1319
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi32_epi64(__m128i __V) {
1327
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1328
+ _mm_cvtepi32_epi64(__m128i __V) {
1320
1329
  return (__m128i) __builtin_convertvector(
1321
1330
  __builtin_shufflevector((__v4si)__V, (__v4si)__V, 0, 1), __v2di);
1322
1331
  }
@@ -1335,7 +1344,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepi32_epi64(__m128i __V) {
1335
1344
  /// A 128-bit vector of [16 x i8]. The lower eight 8-bit elements are
1336
1345
  /// zero-extended to 16-bit values.
1337
1346
  /// \returns A 128-bit vector of [8 x i16] containing the zero-extended values.
1338
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi16(__m128i __V) {
1347
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1348
+ _mm_cvtepu8_epi16(__m128i __V) {
1339
1349
  return (__m128i) __builtin_convertvector(
1340
1350
  __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6,
1341
1351
  7),
@@ -1355,7 +1365,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi16(__m128i __V) {
1355
1365
  /// A 128-bit vector of [16 x i8]. The lower four 8-bit elements are
1356
1366
  /// zero-extended to 32-bit values.
1357
1367
  /// \returns A 128-bit vector of [4 x i32] containing the zero-extended values.
1358
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi32(__m128i __V) {
1368
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1369
+ _mm_cvtepu8_epi32(__m128i __V) {
1359
1370
  return (__m128i) __builtin_convertvector(
1360
1371
  __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4si);
1361
1372
  }
@@ -1373,7 +1384,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi32(__m128i __V) {
1373
1384
  /// A 128-bit vector of [16 x i8]. The lower two 8-bit elements are
1374
1385
  /// zero-extended to 64-bit values.
1375
1386
  /// \returns A 128-bit vector of [2 x i64] containing the zero-extended values.
1376
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi64(__m128i __V) {
1387
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1388
+ _mm_cvtepu8_epi64(__m128i __V) {
1377
1389
  return (__m128i) __builtin_convertvector(
1378
1390
  __builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1), __v2di);
1379
1391
  }
@@ -1391,7 +1403,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu8_epi64(__m128i __V) {
1391
1403
  /// A 128-bit vector of [8 x i16]. The lower four 16-bit elements are
1392
1404
  /// zero-extended to 32-bit values.
1393
1405
  /// \returns A 128-bit vector of [4 x i32] containing the zero-extended values.
1394
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi32(__m128i __V) {
1406
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1407
+ _mm_cvtepu16_epi32(__m128i __V) {
1395
1408
  return (__m128i) __builtin_convertvector(
1396
1409
  __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4si);
1397
1410
  }
@@ -1409,7 +1422,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi32(__m128i __V) {
1409
1422
  /// A 128-bit vector of [8 x i16]. The lower two 16-bit elements are
1410
1423
  /// zero-extended to 64-bit values.
1411
1424
  /// \returns A 128-bit vector of [2 x i64] containing the zero-extended values.
1412
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi64(__m128i __V) {
1425
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1426
+ _mm_cvtepu16_epi64(__m128i __V) {
1413
1427
  return (__m128i) __builtin_convertvector(
1414
1428
  __builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1), __v2di);
1415
1429
  }
@@ -1427,7 +1441,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu16_epi64(__m128i __V) {
1427
1441
  /// A 128-bit vector of [4 x i32]. The lower two 32-bit elements are
1428
1442
  /// zero-extended to 64-bit values.
1429
1443
  /// \returns A 128-bit vector of [2 x i64] containing the zero-extended values.
1430
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu32_epi64(__m128i __V) {
1444
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1445
+ _mm_cvtepu32_epi64(__m128i __V) {
1431
1446
  return (__m128i) __builtin_convertvector(
1432
1447
  __builtin_shufflevector((__v4su)__V, (__v4su)__V, 0, 1), __v2di);
1433
1448
  }
@@ -1451,8 +1466,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cvtepu32_epi64(__m128i __V) {
1451
1466
  /// A 128-bit vector of [4 x i32]. The converted [4 x i16] values are
1452
1467
  /// written to the higher 64 bits of the result.
1453
1468
  /// \returns A 128-bit vector of [8 x i16] containing the converted values.
1454
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi32(__m128i __V1,
1455
- __m128i __V2) {
1469
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1470
+ _mm_packus_epi32(__m128i __V1, __m128i __V2) {
1456
1471
  return (__m128i)__builtin_ia32_packusdw128((__v4si)__V1, (__v4si)__V2);
1457
1472
  }
1458
1473
 
@@ -1509,7 +1524,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_packus_epi32(__m128i __V1,
1509
1524
  /// \returns A 128-bit value where bits [15:0] contain the minimum value found
1510
1525
  /// in parameter \a __V, bits [18:16] contain the index of the minimum value
1511
1526
  /// and the remaining bits are set to 0.
1512
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_minpos_epu16(__m128i __V) {
1527
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
1528
+ _mm_minpos_epu16(__m128i __V) {
1513
1529
  return (__m128i)__builtin_ia32_phminposuw128((__v8hi)__V);
1514
1530
  }
1515
1531
 
@@ -1519,9 +1535,16 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_minpos_epu16(__m128i __V) {
1519
1535
  so we'll do the same. */
1520
1536
 
1521
1537
  #undef __DEFAULT_FN_ATTRS
1538
+ #undef __DEFAULT_FN_ATTRS_CONSTEXPR
1522
1539
  #define __DEFAULT_FN_ATTRS \
1523
1540
  __attribute__((__always_inline__, __nodebug__, __target__("sse4.2")))
1524
1541
 
1542
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
1543
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
1544
+ #else
1545
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
1546
+ #endif
1547
+
1525
1548
  /* These specify the type of data that we're comparing. */
1526
1549
  #define _SIDD_UBYTE_OPS 0x00
1527
1550
  #define _SIDD_UWORD_OPS 0x01
@@ -2314,12 +2337,13 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_minpos_epu16(__m128i __V) {
2314
2337
  /// \param __V2
2315
2338
  /// A 128-bit integer vector.
2316
2339
  /// \returns A 128-bit integer vector containing the comparison results.
2317
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmpgt_epi64(__m128i __V1,
2318
- __m128i __V2) {
2340
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
2341
+ _mm_cmpgt_epi64(__m128i __V1, __m128i __V2) {
2319
2342
  return (__m128i)((__v2di)__V1 > (__v2di)__V2);
2320
2343
  }
2321
2344
 
2322
2345
  #undef __DEFAULT_FN_ATTRS
2346
+ #undef __DEFAULT_FN_ATTRS_CONSTEXPR
2323
2347
 
2324
2348
  #include <popcntintrin.h>
2325
2349