@cpp-linter/clang-tidy-linux-arm64 19.1.0 → 20.1.0

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 (276) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{19 → 20}/include/__clang_cuda_device_functions.h +14 -0
  4. package/lib/clang/{19 → 20}/include/__clang_cuda_math.h +5 -0
  5. package/lib/clang/{19 → 20}/include/__clang_hip_cmath.h +6 -1
  6. package/lib/clang/{19 → 20}/include/__clang_hip_math.h +5 -0
  7. package/lib/clang/{19 → 20}/include/adcintrin.h +5 -0
  8. package/lib/clang/{19 → 20}/include/adxintrin.h +5 -0
  9. package/lib/clang/{19 → 20}/include/altivec.h +8 -8
  10. package/lib/clang/20/include/amdgpuintrin.h +194 -0
  11. package/lib/clang/20/include/amxavx512intrin.h +382 -0
  12. package/lib/clang/20/include/amxbf16transposeintrin.h +94 -0
  13. package/lib/clang/20/include/amxcomplextransposeintrin.h +303 -0
  14. package/lib/clang/{19 → 20}/include/amxfp16intrin.h +35 -0
  15. package/lib/clang/20/include/amxfp16transposeintrin.h +94 -0
  16. package/lib/clang/20/include/amxfp8intrin.h +230 -0
  17. package/lib/clang/{19 → 20}/include/amxintrin.h +5 -35
  18. package/lib/clang/20/include/amxmovrsintrin.h +48 -0
  19. package/lib/clang/20/include/amxmovrstransposeintrin.h +200 -0
  20. package/lib/clang/20/include/amxtf32intrin.h +108 -0
  21. package/lib/clang/20/include/amxtf32transposeintrin.h +105 -0
  22. package/lib/clang/20/include/amxtransposeintrin.h +248 -0
  23. package/lib/clang/{19 → 20}/include/arm_acle.h +18 -21
  24. package/lib/clang/{19 → 20}/include/arm_neon.h +3587 -1696
  25. package/lib/clang/{19 → 20}/include/arm_sme.h +322 -94
  26. package/lib/clang/{19 → 20}/include/arm_sve.h +1105 -84
  27. package/lib/clang/{19 → 20}/include/arm_vector_types.h +87 -0
  28. package/lib/clang/20/include/avx10_2_512bf16intrin.h +561 -0
  29. package/lib/clang/20/include/avx10_2_512convertintrin.h +320 -0
  30. package/lib/clang/20/include/avx10_2_512minmaxintrin.h +127 -0
  31. package/lib/clang/20/include/avx10_2_512niintrin.h +314 -0
  32. package/lib/clang/20/include/avx10_2_512satcvtdsintrin.h +303 -0
  33. package/lib/clang/20/include/avx10_2_512satcvtintrin.h +301 -0
  34. package/lib/clang/20/include/avx10_2bf16intrin.h +1085 -0
  35. package/lib/clang/20/include/avx10_2convertintrin.h +589 -0
  36. package/lib/clang/20/include/avx10_2copyintrin.h +66 -0
  37. package/lib/clang/20/include/avx10_2minmaxintrin.h +277 -0
  38. package/lib/clang/20/include/avx10_2niintrin.h +2075 -0
  39. package/lib/clang/20/include/avx10_2satcvtdsintrin.h +496 -0
  40. package/lib/clang/20/include/avx10_2satcvtintrin.h +444 -0
  41. package/lib/clang/{19 → 20}/include/avx2intrin.h +9 -0
  42. package/lib/clang/{19 → 20}/include/avx512bitalgintrin.h +2 -2
  43. package/lib/clang/{19 → 20}/include/avx512fintrin.h +22 -14
  44. package/lib/clang/{19 → 20}/include/avx512vlbitalgintrin.h +4 -4
  45. package/lib/clang/{19 → 20}/include/avx512vpopcntdqintrin.h +12 -4
  46. package/lib/clang/{19 → 20}/include/avx512vpopcntdqvlintrin.h +16 -8
  47. package/lib/clang/{19 → 20}/include/avxintrin.h +30 -16
  48. package/lib/clang/{19 → 20}/include/avxvnniint16intrin.h +36 -77
  49. package/lib/clang/{19 → 20}/include/avxvnniint8intrin.h +36 -77
  50. package/lib/clang/{19 → 20}/include/bmi2intrin.h +15 -17
  51. package/lib/clang/{19 → 20}/include/bmiintrin.h +31 -37
  52. package/lib/clang/{19 → 20}/include/cmpccxaddintrin.h +1 -1
  53. package/lib/clang/{19 → 20}/include/cpuid.h +12 -11
  54. package/lib/clang/{19 → 20}/include/cuda_wrappers/cmath +4 -0
  55. package/lib/clang/{19 → 20}/include/cuda_wrappers/new +2 -0
  56. package/lib/clang/{19 → 20}/include/emmintrin.h +141 -107
  57. package/lib/clang/{19 → 20}/include/gfniintrin.h +32 -10
  58. package/lib/clang/20/include/gpuintrin.h +224 -0
  59. package/lib/clang/{19 → 20}/include/hexagon_types.h +8 -4
  60. package/lib/clang/{19 → 20}/include/hlsl/hlsl_basic_types.h +47 -1
  61. package/lib/clang/20/include/hlsl/hlsl_detail.h +84 -0
  62. package/lib/clang/{19 → 20}/include/hlsl/hlsl_intrinsics.h +1199 -82
  63. package/lib/clang/{19 → 20}/include/hlsl.h +11 -0
  64. package/lib/clang/{19 → 20}/include/hvx_hexagon_protos.h +427 -0
  65. package/lib/clang/{19 → 20}/include/immintrin.h +87 -3
  66. package/lib/clang/{19 → 20}/include/intrin.h +20 -10
  67. package/lib/clang/{19 → 20}/include/intrin0.h +10 -1
  68. package/lib/clang/{19 → 20}/include/larchintrin.h +22 -8
  69. package/lib/clang/{19 → 20}/include/lasxintrin.h +27 -25
  70. package/lib/clang/{19 → 20}/include/limits.h +7 -4
  71. package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/ctype.h +38 -0
  72. package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdlib.h +8 -0
  73. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  74. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  75. package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  76. package/lib/clang/{19 → 20}/include/lsxintrin.h +27 -25
  77. package/lib/clang/{19 → 20}/include/lzcntintrin.h +10 -7
  78. package/lib/clang/{19 → 20}/include/mmintrin.h +209 -155
  79. package/lib/clang/{19 → 20}/include/module.modulemap +2 -4
  80. package/lib/clang/20/include/movrs_avx10_2_512intrin.h +98 -0
  81. package/lib/clang/20/include/movrs_avx10_2intrin.h +174 -0
  82. package/lib/clang/20/include/movrsintrin.h +59 -0
  83. package/lib/clang/20/include/nvptxintrin.h +202 -0
  84. package/lib/clang/{19 → 20}/include/opencl-c-base.h +4 -0
  85. package/lib/clang/{19 → 20}/include/openmp_wrappers/__clang_openmp_device_functions.h +4 -5
  86. package/lib/clang/{19 → 20}/include/openmp_wrappers/complex_cmath.h +7 -2
  87. package/lib/clang/{19 → 20}/include/pmmintrin.h +16 -3
  88. package/lib/clang/{19 → 20}/include/popcntintrin.h +7 -7
  89. package/lib/clang/{19 → 20}/include/ptrauth.h +6 -0
  90. package/lib/clang/20/include/riscv_corev_alu.h +128 -0
  91. package/lib/clang/{19 → 20}/include/riscv_vector.h +0 -1
  92. package/lib/clang/20/include/sm4evexintrin.h +32 -0
  93. package/lib/clang/{19 → 20}/include/smmintrin.h +6 -0
  94. package/lib/clang/{19 → 20}/include/stdalign.h +0 -5
  95. package/lib/clang/{19 → 20}/include/tbmintrin.h +25 -37
  96. package/lib/clang/{19 → 20}/include/tmmintrin.h +64 -38
  97. package/lib/clang/{19 → 20}/include/vecintrin.h +1778 -60
  98. package/lib/clang/{19 → 20}/include/wasm_simd128.h +167 -21
  99. package/lib/clang/{19 → 20}/include/xmmintrin.h +170 -177
  100. package/package.json +6 -6
  101. /package/lib/clang/{19 → 20}/include/__clang_cuda_builtin_vars.h +0 -0
  102. /package/lib/clang/{19 → 20}/include/__clang_cuda_cmath.h +0 -0
  103. /package/lib/clang/{19 → 20}/include/__clang_cuda_complex_builtins.h +0 -0
  104. /package/lib/clang/{19 → 20}/include/__clang_cuda_intrinsics.h +0 -0
  105. /package/lib/clang/{19 → 20}/include/__clang_cuda_libdevice_declares.h +0 -0
  106. /package/lib/clang/{19 → 20}/include/__clang_cuda_math_forward_declares.h +0 -0
  107. /package/lib/clang/{19 → 20}/include/__clang_cuda_runtime_wrapper.h +0 -0
  108. /package/lib/clang/{19 → 20}/include/__clang_cuda_texture_intrinsics.h +0 -0
  109. /package/lib/clang/{19 → 20}/include/__clang_hip_libdevice_declares.h +0 -0
  110. /package/lib/clang/{19 → 20}/include/__clang_hip_runtime_wrapper.h +0 -0
  111. /package/lib/clang/{19 → 20}/include/__clang_hip_stdlib.h +0 -0
  112. /package/lib/clang/{19 → 20}/include/__stdarg___gnuc_va_list.h +0 -0
  113. /package/lib/clang/{19 → 20}/include/__stdarg___va_copy.h +0 -0
  114. /package/lib/clang/{19 → 20}/include/__stdarg_header_macro.h +0 -0
  115. /package/lib/clang/{19 → 20}/include/__stdarg_va_arg.h +0 -0
  116. /package/lib/clang/{19 → 20}/include/__stdarg_va_copy.h +0 -0
  117. /package/lib/clang/{19 → 20}/include/__stdarg_va_list.h +0 -0
  118. /package/lib/clang/{19 → 20}/include/__stddef_header_macro.h +0 -0
  119. /package/lib/clang/{19 → 20}/include/__stddef_max_align_t.h +0 -0
  120. /package/lib/clang/{19 → 20}/include/__stddef_null.h +0 -0
  121. /package/lib/clang/{19 → 20}/include/__stddef_nullptr_t.h +0 -0
  122. /package/lib/clang/{19 → 20}/include/__stddef_offsetof.h +0 -0
  123. /package/lib/clang/{19 → 20}/include/__stddef_ptrdiff_t.h +0 -0
  124. /package/lib/clang/{19 → 20}/include/__stddef_rsize_t.h +0 -0
  125. /package/lib/clang/{19 → 20}/include/__stddef_size_t.h +0 -0
  126. /package/lib/clang/{19 → 20}/include/__stddef_unreachable.h +0 -0
  127. /package/lib/clang/{19 → 20}/include/__stddef_wchar_t.h +0 -0
  128. /package/lib/clang/{19 → 20}/include/__stddef_wint_t.h +0 -0
  129. /package/lib/clang/{19 → 20}/include/__wmmintrin_aes.h +0 -0
  130. /package/lib/clang/{19 → 20}/include/__wmmintrin_pclmul.h +0 -0
  131. /package/lib/clang/{19 → 20}/include/ammintrin.h +0 -0
  132. /package/lib/clang/{19 → 20}/include/amxcomplexintrin.h +0 -0
  133. /package/lib/clang/{19 → 20}/include/arm64intr.h +0 -0
  134. /package/lib/clang/{19 → 20}/include/arm_bf16.h +0 -0
  135. /package/lib/clang/{19 → 20}/include/arm_cde.h +0 -0
  136. /package/lib/clang/{19 → 20}/include/arm_cmse.h +0 -0
  137. /package/lib/clang/{19 → 20}/include/arm_fp16.h +0 -0
  138. /package/lib/clang/{19 → 20}/include/arm_mve.h +0 -0
  139. /package/lib/clang/{19 → 20}/include/arm_neon_sve_bridge.h +0 -0
  140. /package/lib/clang/{19 → 20}/include/armintr.h +0 -0
  141. /package/lib/clang/{19 → 20}/include/avx512bf16intrin.h +0 -0
  142. /package/lib/clang/{19 → 20}/include/avx512bwintrin.h +0 -0
  143. /package/lib/clang/{19 → 20}/include/avx512cdintrin.h +0 -0
  144. /package/lib/clang/{19 → 20}/include/avx512dqintrin.h +0 -0
  145. /package/lib/clang/{19 → 20}/include/avx512fp16intrin.h +0 -0
  146. /package/lib/clang/{19 → 20}/include/avx512ifmaintrin.h +0 -0
  147. /package/lib/clang/{19 → 20}/include/avx512ifmavlintrin.h +0 -0
  148. /package/lib/clang/{19 → 20}/include/avx512vbmi2intrin.h +0 -0
  149. /package/lib/clang/{19 → 20}/include/avx512vbmiintrin.h +0 -0
  150. /package/lib/clang/{19 → 20}/include/avx512vbmivlintrin.h +0 -0
  151. /package/lib/clang/{19 → 20}/include/avx512vlbf16intrin.h +0 -0
  152. /package/lib/clang/{19 → 20}/include/avx512vlbwintrin.h +0 -0
  153. /package/lib/clang/{19 → 20}/include/avx512vlcdintrin.h +0 -0
  154. /package/lib/clang/{19 → 20}/include/avx512vldqintrin.h +0 -0
  155. /package/lib/clang/{19 → 20}/include/avx512vlfp16intrin.h +0 -0
  156. /package/lib/clang/{19 → 20}/include/avx512vlintrin.h +0 -0
  157. /package/lib/clang/{19 → 20}/include/avx512vlvbmi2intrin.h +0 -0
  158. /package/lib/clang/{19 → 20}/include/avx512vlvnniintrin.h +0 -0
  159. /package/lib/clang/{19 → 20}/include/avx512vlvp2intersectintrin.h +0 -0
  160. /package/lib/clang/{19 → 20}/include/avx512vnniintrin.h +0 -0
  161. /package/lib/clang/{19 → 20}/include/avx512vp2intersectintrin.h +0 -0
  162. /package/lib/clang/{19 → 20}/include/avxifmaintrin.h +0 -0
  163. /package/lib/clang/{19 → 20}/include/avxneconvertintrin.h +0 -0
  164. /package/lib/clang/{19 → 20}/include/avxvnniintrin.h +0 -0
  165. /package/lib/clang/{19 → 20}/include/builtins.h +0 -0
  166. /package/lib/clang/{19 → 20}/include/cet.h +0 -0
  167. /package/lib/clang/{19 → 20}/include/cetintrin.h +0 -0
  168. /package/lib/clang/{19 → 20}/include/cldemoteintrin.h +0 -0
  169. /package/lib/clang/{19 → 20}/include/clflushoptintrin.h +0 -0
  170. /package/lib/clang/{19 → 20}/include/clwbintrin.h +0 -0
  171. /package/lib/clang/{19 → 20}/include/clzerointrin.h +0 -0
  172. /package/lib/clang/{19 → 20}/include/crc32intrin.h +0 -0
  173. /package/lib/clang/{19 → 20}/include/cuda_wrappers/algorithm +0 -0
  174. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.h +0 -0
  175. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  176. /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  177. /package/lib/clang/{19 → 20}/include/cuda_wrappers/complex +0 -0
  178. /package/lib/clang/{19 → 20}/include/enqcmdintrin.h +0 -0
  179. /package/lib/clang/{19 → 20}/include/f16cintrin.h +0 -0
  180. /package/lib/clang/{19 → 20}/include/float.h +0 -0
  181. /package/lib/clang/{19 → 20}/include/fma4intrin.h +0 -0
  182. /package/lib/clang/{19 → 20}/include/fmaintrin.h +0 -0
  183. /package/lib/clang/{19 → 20}/include/fxsrintrin.h +0 -0
  184. /package/lib/clang/{19 → 20}/include/hexagon_circ_brev_intrinsics.h +0 -0
  185. /package/lib/clang/{19 → 20}/include/hexagon_protos.h +0 -0
  186. /package/lib/clang/{19 → 20}/include/hresetintrin.h +0 -0
  187. /package/lib/clang/{19 → 20}/include/htmintrin.h +0 -0
  188. /package/lib/clang/{19 → 20}/include/htmxlintrin.h +0 -0
  189. /package/lib/clang/{19 → 20}/include/ia32intrin.h +0 -0
  190. /package/lib/clang/{19 → 20}/include/inttypes.h +0 -0
  191. /package/lib/clang/{19 → 20}/include/invpcidintrin.h +0 -0
  192. /package/lib/clang/{19 → 20}/include/iso646.h +0 -0
  193. /package/lib/clang/{19 → 20}/include/keylockerintrin.h +0 -0
  194. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/assert.h +0 -0
  195. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/inttypes.h +0 -0
  196. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdio.h +0 -0
  197. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/string.h +0 -0
  198. /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/time.h +0 -0
  199. /package/lib/clang/{19 → 20}/include/lwpintrin.h +0 -0
  200. /package/lib/clang/{19 → 20}/include/mm3dnow.h +0 -0
  201. /package/lib/clang/{19 → 20}/include/mm_malloc.h +0 -0
  202. /package/lib/clang/{19 → 20}/include/movdirintrin.h +0 -0
  203. /package/lib/clang/{19 → 20}/include/msa.h +0 -0
  204. /package/lib/clang/{19 → 20}/include/mwaitxintrin.h +0 -0
  205. /package/lib/clang/{19 → 20}/include/nmmintrin.h +0 -0
  206. /package/lib/clang/{19 → 20}/include/opencl-c.h +0 -0
  207. /package/lib/clang/{19 → 20}/include/openmp_wrappers/cmath +0 -0
  208. /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex +0 -0
  209. /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex.h +0 -0
  210. /package/lib/clang/{19 → 20}/include/openmp_wrappers/math.h +0 -0
  211. /package/lib/clang/{19 → 20}/include/openmp_wrappers/new +0 -0
  212. /package/lib/clang/{19 → 20}/include/pconfigintrin.h +0 -0
  213. /package/lib/clang/{19 → 20}/include/pkuintrin.h +0 -0
  214. /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmi2intrin.h +0 -0
  215. /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmiintrin.h +0 -0
  216. /package/lib/clang/{19 → 20}/include/ppc_wrappers/emmintrin.h +0 -0
  217. /package/lib/clang/{19 → 20}/include/ppc_wrappers/immintrin.h +0 -0
  218. /package/lib/clang/{19 → 20}/include/ppc_wrappers/mm_malloc.h +0 -0
  219. /package/lib/clang/{19 → 20}/include/ppc_wrappers/mmintrin.h +0 -0
  220. /package/lib/clang/{19 → 20}/include/ppc_wrappers/nmmintrin.h +0 -0
  221. /package/lib/clang/{19 → 20}/include/ppc_wrappers/pmmintrin.h +0 -0
  222. /package/lib/clang/{19 → 20}/include/ppc_wrappers/smmintrin.h +0 -0
  223. /package/lib/clang/{19 → 20}/include/ppc_wrappers/tmmintrin.h +0 -0
  224. /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86gprintrin.h +0 -0
  225. /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86intrin.h +0 -0
  226. /package/lib/clang/{19 → 20}/include/ppc_wrappers/xmmintrin.h +0 -0
  227. /package/lib/clang/{19 → 20}/include/prfchiintrin.h +0 -0
  228. /package/lib/clang/{19 → 20}/include/prfchwintrin.h +0 -0
  229. /package/lib/clang/{19 → 20}/include/ptwriteintrin.h +0 -0
  230. /package/lib/clang/{19 → 20}/include/raointintrin.h +0 -0
  231. /package/lib/clang/{19 → 20}/include/rdpruintrin.h +0 -0
  232. /package/lib/clang/{19 → 20}/include/rdseedintrin.h +0 -0
  233. /package/lib/clang/{19 → 20}/include/riscv_bitmanip.h +0 -0
  234. /package/lib/clang/{19 → 20}/include/riscv_crypto.h +0 -0
  235. /package/lib/clang/{19 → 20}/include/riscv_ntlh.h +0 -0
  236. /package/lib/clang/{19 → 20}/include/rtmintrin.h +0 -0
  237. /package/lib/clang/{19 → 20}/include/s390intrin.h +0 -0
  238. /package/lib/clang/{19 → 20}/include/serializeintrin.h +0 -0
  239. /package/lib/clang/{19 → 20}/include/sgxintrin.h +0 -0
  240. /package/lib/clang/{19 → 20}/include/sha512intrin.h +0 -0
  241. /package/lib/clang/{19 → 20}/include/shaintrin.h +0 -0
  242. /package/lib/clang/{19 → 20}/include/sifive_vector.h +0 -0
  243. /package/lib/clang/{19 → 20}/include/sm3intrin.h +0 -0
  244. /package/lib/clang/{19 → 20}/include/sm4intrin.h +0 -0
  245. /package/lib/clang/{19 → 20}/include/stdarg.h +0 -0
  246. /package/lib/clang/{19 → 20}/include/stdatomic.h +0 -0
  247. /package/lib/clang/{19 → 20}/include/stdbool.h +0 -0
  248. /package/lib/clang/{19 → 20}/include/stdckdint.h +0 -0
  249. /package/lib/clang/{19 → 20}/include/stddef.h +0 -0
  250. /package/lib/clang/{19 → 20}/include/stdint.h +0 -0
  251. /package/lib/clang/{19 → 20}/include/stdnoreturn.h +0 -0
  252. /package/lib/clang/{19 → 20}/include/tgmath.h +0 -0
  253. /package/lib/clang/{19 → 20}/include/tsxldtrkintrin.h +0 -0
  254. /package/lib/clang/{19 → 20}/include/uintrintrin.h +0 -0
  255. /package/lib/clang/{19 → 20}/include/unwind.h +0 -0
  256. /package/lib/clang/{19 → 20}/include/usermsrintrin.h +0 -0
  257. /package/lib/clang/{19 → 20}/include/vadefs.h +0 -0
  258. /package/lib/clang/{19 → 20}/include/vaesintrin.h +0 -0
  259. /package/lib/clang/{19 → 20}/include/varargs.h +0 -0
  260. /package/lib/clang/{19 → 20}/include/velintrin.h +0 -0
  261. /package/lib/clang/{19 → 20}/include/velintrin_approx.h +0 -0
  262. /package/lib/clang/{19 → 20}/include/velintrin_gen.h +0 -0
  263. /package/lib/clang/{19 → 20}/include/vpclmulqdqintrin.h +0 -0
  264. /package/lib/clang/{19 → 20}/include/waitpkgintrin.h +0 -0
  265. /package/lib/clang/{19 → 20}/include/wbnoinvdintrin.h +0 -0
  266. /package/lib/clang/{19 → 20}/include/wmmintrin.h +0 -0
  267. /package/lib/clang/{19 → 20}/include/x86gprintrin.h +0 -0
  268. /package/lib/clang/{19 → 20}/include/x86intrin.h +0 -0
  269. /package/lib/clang/{19 → 20}/include/xopintrin.h +0 -0
  270. /package/lib/clang/{19 → 20}/include/xsavecintrin.h +0 -0
  271. /package/lib/clang/{19 → 20}/include/xsaveintrin.h +0 -0
  272. /package/lib/clang/{19 → 20}/include/xsaveoptintrin.h +0 -0
  273. /package/lib/clang/{19 → 20}/include/xsavesintrin.h +0 -0
  274. /package/lib/clang/{19 → 20}/include/xtestintrin.h +0 -0
  275. /package/lib/clang/{19 → 20}/include/yvals_core.h +0 -0
  276. /package/lib/clang/{19 → 20}/include/zos_wrappers/builtins.h +0 -0
@@ -49,12 +49,27 @@ typedef __bf16 __m128bh __attribute__((__vector_size__(16), __aligned__(16)));
49
49
  #endif
50
50
 
51
51
  /* Define the default attributes for the functions in this file. */
52
+ #if defined(__EVEX512__) && !defined(__AVX10_1_512__)
52
53
  #define __DEFAULT_FN_ATTRS \
53
54
  __attribute__((__always_inline__, __nodebug__, \
54
55
  __target__("sse2,no-evex512"), __min_vector_width__(128)))
55
- #define __DEFAULT_FN_ATTRS_MMX \
56
- __attribute__((__always_inline__, __nodebug__, \
57
- __target__("mmx,sse2,no-evex512"), __min_vector_width__(64)))
56
+ #else
57
+ #define __DEFAULT_FN_ATTRS \
58
+ __attribute__((__always_inline__, __nodebug__, __target__("sse2"), \
59
+ __min_vector_width__(128)))
60
+ #endif
61
+
62
+ #if defined(__cplusplus) && (__cplusplus >= 201103L)
63
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
64
+ #else
65
+ #define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
66
+ #endif
67
+
68
+ #define __trunc64(x) \
69
+ (__m64) __builtin_shufflevector((__v2di)(x), __extension__(__v2di){}, 0)
70
+ #define __anyext128(x) \
71
+ (__m128i) __builtin_shufflevector((__v2si)(x), __extension__(__v2si){}, 0, \
72
+ 1, -1, -1)
58
73
 
59
74
  /// Adds lower double-precision values in both operands and returns the
60
75
  /// sum in the lower 64 bits of the result. The upper 64 bits of the result
@@ -71,8 +86,8 @@ typedef __bf16 __m128bh __attribute__((__vector_size__(16), __aligned__(16)));
71
86
  /// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the
72
87
  /// sum of the lower 64 bits of both operands. The upper 64 bits are copied
73
88
  /// from the upper 64 bits of the first source operand.
74
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_sd(__m128d __a,
75
- __m128d __b) {
89
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_add_sd(__m128d __a,
90
+ __m128d __b) {
76
91
  __a[0] += __b[0];
77
92
  return __a;
78
93
  }
@@ -89,8 +104,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_sd(__m128d __a,
89
104
  /// A 128-bit vector of [2 x double] containing one of the source operands.
90
105
  /// \returns A 128-bit vector of [2 x double] containing the sums of both
91
106
  /// operands.
92
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_pd(__m128d __a,
93
- __m128d __b) {
107
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_add_pd(__m128d __a,
108
+ __m128d __b) {
94
109
  return (__m128d)((__v2df)__a + (__v2df)__b);
95
110
  }
96
111
 
@@ -111,8 +126,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_add_pd(__m128d __a,
111
126
  /// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the
112
127
  /// difference of the lower 64 bits of both operands. The upper 64 bits are
113
128
  /// copied from the upper 64 bits of the first source operand.
114
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_sd(__m128d __a,
115
- __m128d __b) {
129
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_sub_sd(__m128d __a,
130
+ __m128d __b) {
116
131
  __a[0] -= __b[0];
117
132
  return __a;
118
133
  }
@@ -129,8 +144,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_sd(__m128d __a,
129
144
  /// A 128-bit vector of [2 x double] containing the subtrahend.
130
145
  /// \returns A 128-bit vector of [2 x double] containing the differences between
131
146
  /// both operands.
132
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_pd(__m128d __a,
133
- __m128d __b) {
147
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_sub_pd(__m128d __a,
148
+ __m128d __b) {
134
149
  return (__m128d)((__v2df)__a - (__v2df)__b);
135
150
  }
136
151
 
@@ -150,8 +165,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_sub_pd(__m128d __a,
150
165
  /// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the
151
166
  /// product of the lower 64 bits of both operands. The upper 64 bits are
152
167
  /// copied from the upper 64 bits of the first source operand.
153
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_sd(__m128d __a,
154
- __m128d __b) {
168
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mul_sd(__m128d __a,
169
+ __m128d __b) {
155
170
  __a[0] *= __b[0];
156
171
  return __a;
157
172
  }
@@ -168,8 +183,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_sd(__m128d __a,
168
183
  /// A 128-bit vector of [2 x double] containing one of the operands.
169
184
  /// \returns A 128-bit vector of [2 x double] containing the products of both
170
185
  /// operands.
171
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_pd(__m128d __a,
172
- __m128d __b) {
186
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mul_pd(__m128d __a,
187
+ __m128d __b) {
173
188
  return (__m128d)((__v2df)__a * (__v2df)__b);
174
189
  }
175
190
 
@@ -190,8 +205,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_mul_pd(__m128d __a,
190
205
  /// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the
191
206
  /// quotient of the lower 64 bits of both operands. The upper 64 bits are
192
207
  /// copied from the upper 64 bits of the first source operand.
193
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_sd(__m128d __a,
194
- __m128d __b) {
208
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_div_sd(__m128d __a,
209
+ __m128d __b) {
195
210
  __a[0] /= __b[0];
196
211
  return __a;
197
212
  }
@@ -209,8 +224,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_sd(__m128d __a,
209
224
  /// A 128-bit vector of [2 x double] containing the divisor.
210
225
  /// \returns A 128-bit vector of [2 x double] containing the quotients of both
211
226
  /// operands.
212
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_div_pd(__m128d __a,
213
- __m128d __b) {
227
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_div_pd(__m128d __a,
228
+ __m128d __b) {
214
229
  return (__m128d)((__v2df)__a / (__v2df)__b);
215
230
  }
216
231
 
@@ -358,8 +373,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_max_pd(__m128d __a,
358
373
  /// A 128-bit vector of [2 x double] containing one of the source operands.
359
374
  /// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the
360
375
  /// values between both operands.
361
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_and_pd(__m128d __a,
362
- __m128d __b) {
376
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_and_pd(__m128d __a,
377
+ __m128d __b) {
363
378
  return (__m128d)((__v2du)__a & (__v2du)__b);
364
379
  }
365
380
 
@@ -378,8 +393,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_and_pd(__m128d __a,
378
393
  /// \returns A 128-bit vector of [2 x double] containing the bitwise AND of the
379
394
  /// values in the second operand and the one's complement of the first
380
395
  /// operand.
381
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_andnot_pd(__m128d __a,
382
- __m128d __b) {
396
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
397
+ _mm_andnot_pd(__m128d __a, __m128d __b) {
383
398
  return (__m128d)(~(__v2du)__a & (__v2du)__b);
384
399
  }
385
400
 
@@ -395,8 +410,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_andnot_pd(__m128d __a,
395
410
  /// A 128-bit vector of [2 x double] containing one of the source operands.
396
411
  /// \returns A 128-bit vector of [2 x double] containing the bitwise OR of the
397
412
  /// values between both operands.
398
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_or_pd(__m128d __a,
399
- __m128d __b) {
413
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_or_pd(__m128d __a,
414
+ __m128d __b) {
400
415
  return (__m128d)((__v2du)__a | (__v2du)__b);
401
416
  }
402
417
 
@@ -412,8 +427,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_or_pd(__m128d __a,
412
427
  /// A 128-bit vector of [2 x double] containing one of the source operands.
413
428
  /// \returns A 128-bit vector of [2 x double] containing the bitwise XOR of the
414
429
  /// values between both operands.
415
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_xor_pd(__m128d __a,
416
- __m128d __b) {
430
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_xor_pd(__m128d __a,
431
+ __m128d __b) {
417
432
  return (__m128d)((__v2du)__a ^ (__v2du)__b);
418
433
  }
419
434
 
@@ -1291,7 +1306,8 @@ static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtpd_ps(__m128d __a) {
1291
1306
  /// floating-point elements are converted to double-precision values. The
1292
1307
  /// upper two elements are unused.
1293
1308
  /// \returns A 128-bit vector of [2 x double] containing the converted values.
1294
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtps_pd(__m128 __a) {
1309
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1310
+ _mm_cvtps_pd(__m128 __a) {
1295
1311
  return (__m128d) __builtin_convertvector(
1296
1312
  __builtin_shufflevector((__v4sf)__a, (__v4sf)__a, 0, 1), __v2df);
1297
1313
  }
@@ -1312,7 +1328,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtps_pd(__m128 __a) {
1312
1328
  ///
1313
1329
  /// The upper two elements are unused.
1314
1330
  /// \returns A 128-bit vector of [2 x double] containing the converted values.
1315
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtepi32_pd(__m128i __a) {
1331
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1332
+ _mm_cvtepi32_pd(__m128i __a) {
1316
1333
  return (__m128d) __builtin_convertvector(
1317
1334
  __builtin_shufflevector((__v4si)__a, (__v4si)__a, 0, 1), __v2df);
1318
1335
  }
@@ -1398,8 +1415,8 @@ static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtsd_ss(__m128 __a,
1398
1415
  /// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the
1399
1416
  /// converted value from the second parameter. The upper 64 bits are copied
1400
1417
  /// from the upper 64 bits of the first parameter.
1401
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi32_sd(__m128d __a,
1402
- int __b) {
1418
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1419
+ _mm_cvtsi32_sd(__m128d __a, int __b) {
1403
1420
  __a[0] = __b;
1404
1421
  return __a;
1405
1422
  }
@@ -1423,8 +1440,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi32_sd(__m128d __a,
1423
1440
  /// \returns A 128-bit vector of [2 x double]. The lower 64 bits contain the
1424
1441
  /// converted value from the second parameter. The upper 64 bits are copied
1425
1442
  /// from the upper 64 bits of the first parameter.
1426
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtss_sd(__m128d __a,
1427
- __m128 __b) {
1443
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1444
+ _mm_cvtss_sd(__m128d __a, __m128 __b) {
1428
1445
  __a[0] = __b[0];
1429
1446
  return __a;
1430
1447
  }
@@ -1486,8 +1503,8 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_cvttsd_si32(__m128d __a) {
1486
1503
  /// \param __a
1487
1504
  /// A 128-bit vector of [2 x double].
1488
1505
  /// \returns A 64-bit vector of [2 x i32] containing the converted values.
1489
- static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvtpd_pi32(__m128d __a) {
1490
- return (__m64)__builtin_ia32_cvtpd2pi((__v2df)__a);
1506
+ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_cvtpd_pi32(__m128d __a) {
1507
+ return __trunc64(__builtin_ia32_cvtpd2dq((__v2df)__a));
1491
1508
  }
1492
1509
 
1493
1510
  /// Converts the two double-precision floating-point elements of a
@@ -1505,8 +1522,8 @@ static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvtpd_pi32(__m128d __a) {
1505
1522
  /// \param __a
1506
1523
  /// A 128-bit vector of [2 x double].
1507
1524
  /// \returns A 64-bit vector of [2 x i32] containing the converted values.
1508
- static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvttpd_pi32(__m128d __a) {
1509
- return (__m64)__builtin_ia32_cvttpd2pi((__v2df)__a);
1525
+ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_cvttpd_pi32(__m128d __a) {
1526
+ return __trunc64(__builtin_ia32_cvttpd2dq((__v2df)__a));
1510
1527
  }
1511
1528
 
1512
1529
  /// Converts the two signed 32-bit integer elements of a 64-bit vector of
@@ -1520,8 +1537,9 @@ static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_cvttpd_pi32(__m128d __a) {
1520
1537
  /// \param __a
1521
1538
  /// A 64-bit vector of [2 x i32].
1522
1539
  /// \returns A 128-bit vector of [2 x double] containing the converted values.
1523
- static __inline__ __m128d __DEFAULT_FN_ATTRS_MMX _mm_cvtpi32_pd(__m64 __a) {
1524
- return __builtin_ia32_cvtpi2pd((__v2si)__a);
1540
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1541
+ _mm_cvtpi32_pd(__m64 __a) {
1542
+ return (__m128d) __builtin_convertvector((__v2si)__a, __v2df);
1525
1543
  }
1526
1544
 
1527
1545
  /// Returns the low-order element of a 128-bit vector of [2 x double] as
@@ -1535,7 +1553,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS_MMX _mm_cvtpi32_pd(__m64 __a) {
1535
1553
  /// A 128-bit vector of [2 x double]. The lower 64 bits are returned.
1536
1554
  /// \returns A double-precision floating-point value copied from the lower 64
1537
1555
  /// bits of \a __a.
1538
- static __inline__ double __DEFAULT_FN_ATTRS _mm_cvtsd_f64(__m128d __a) {
1556
+ static __inline__ double __DEFAULT_FN_ATTRS_CONSTEXPR
1557
+ _mm_cvtsd_f64(__m128d __a) {
1539
1558
  return __a[0];
1540
1559
  }
1541
1560
 
@@ -1770,7 +1789,7 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_undefined_pd(void) {
1770
1789
  /// \returns An initialized 128-bit floating-point vector of [2 x double]. The
1771
1790
  /// lower 64 bits contain the value of the parameter. The upper 64 bits are
1772
1791
  /// set to zero.
1773
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_sd(double __w) {
1792
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set_sd(double __w) {
1774
1793
  return __extension__(__m128d){__w, 0.0};
1775
1794
  }
1776
1795
 
@@ -1786,7 +1805,7 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_sd(double __w) {
1786
1805
  /// A double-precision floating-point value used to initialize each vector
1787
1806
  /// element of the result.
1788
1807
  /// \returns An initialized 128-bit floating-point vector of [2 x double].
1789
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set1_pd(double __w) {
1808
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set1_pd(double __w) {
1790
1809
  return __extension__(__m128d){__w, __w};
1791
1810
  }
1792
1811
 
@@ -1802,7 +1821,7 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set1_pd(double __w) {
1802
1821
  /// A double-precision floating-point value used to initialize each vector
1803
1822
  /// element of the result.
1804
1823
  /// \returns An initialized 128-bit floating-point vector of [2 x double].
1805
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd1(double __w) {
1824
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set_pd1(double __w) {
1806
1825
  return _mm_set1_pd(__w);
1807
1826
  }
1808
1827
 
@@ -1820,8 +1839,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd1(double __w) {
1820
1839
  /// A double-precision floating-point value used to initialize the lower 64
1821
1840
  /// bits of the result.
1822
1841
  /// \returns An initialized 128-bit floating-point vector of [2 x double].
1823
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd(double __w,
1824
- double __x) {
1842
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set_pd(double __w,
1843
+ double __x) {
1825
1844
  return __extension__(__m128d){__x, __w};
1826
1845
  }
1827
1846
 
@@ -1840,8 +1859,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_set_pd(double __w,
1840
1859
  /// A double-precision floating-point value used to initialize the upper 64
1841
1860
  /// bits of the result.
1842
1861
  /// \returns An initialized 128-bit floating-point vector of [2 x double].
1843
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setr_pd(double __w,
1844
- double __x) {
1862
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_setr_pd(double __w,
1863
+ double __x) {
1845
1864
  return __extension__(__m128d){__w, __x};
1846
1865
  }
1847
1866
 
@@ -1854,7 +1873,7 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setr_pd(double __w,
1854
1873
  ///
1855
1874
  /// \returns An initialized 128-bit floating-point vector of [2 x double] with
1856
1875
  /// all elements set to zero.
1857
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setzero_pd(void) {
1876
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR _mm_setzero_pd(void) {
1858
1877
  return __extension__(__m128d){0.0, 0.0};
1859
1878
  }
1860
1879
 
@@ -1873,8 +1892,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_setzero_pd(void) {
1873
1892
  /// A 128-bit vector of [2 x double]. The lower 64 bits are written to the
1874
1893
  /// lower 64 bits of the result.
1875
1894
  /// \returns A 128-bit vector of [2 x double] containing the moved values.
1876
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_move_sd(__m128d __a,
1877
- __m128d __b) {
1895
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
1896
+ _mm_move_sd(__m128d __a, __m128d __b) {
1878
1897
  __a[0] = __b[0];
1879
1898
  return __a;
1880
1899
  }
@@ -2091,8 +2110,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi16(__m128i __a,
2091
2110
  /// A 128-bit vector of [4 x i32].
2092
2111
  /// \returns A 128-bit vector of [4 x i32] containing the sums of both
2093
2112
  /// parameters.
2094
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi32(__m128i __a,
2095
- __m128i __b) {
2113
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
2114
+ _mm_add_epi32(__m128i __a, __m128i __b) {
2096
2115
  return (__m128i)((__v4su)__a + (__v4su)__b);
2097
2116
  }
2098
2117
 
@@ -2108,9 +2127,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi32(__m128i __a,
2108
2127
  /// \param __b
2109
2128
  /// A 64-bit integer.
2110
2129
  /// \returns A 64-bit integer containing the sum of both parameters.
2111
- static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_add_si64(__m64 __a,
2112
- __m64 __b) {
2113
- return (__m64)__builtin_ia32_paddq((__v1di)__a, (__v1di)__b);
2130
+ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_add_si64(__m64 __a, __m64 __b) {
2131
+ return (__m64)(((unsigned long long)__a) + ((unsigned long long)__b));
2114
2132
  }
2115
2133
 
2116
2134
  /// Adds the corresponding elements of two 128-bit vectors of [2 x i64],
@@ -2129,8 +2147,8 @@ static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_add_si64(__m64 __a,
2129
2147
  /// A 128-bit vector of [2 x i64].
2130
2148
  /// \returns A 128-bit vector of [2 x i64] containing the sums of both
2131
2149
  /// parameters.
2132
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_add_epi64(__m128i __a,
2133
- __m128i __b) {
2150
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
2151
+ _mm_add_epi64(__m128i __a, __m128i __b) {
2134
2152
  return (__m128i)((__v2du)__a + (__v2du)__b);
2135
2153
  }
2136
2154
 
@@ -2431,9 +2449,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_mullo_epi16(__m128i __a,
2431
2449
  /// \param __b
2432
2450
  /// A 64-bit integer containing one of the source operands.
2433
2451
  /// \returns A 64-bit integer vector containing the product of both operands.
2434
- static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_mul_su32(__m64 __a,
2435
- __m64 __b) {
2436
- return __builtin_ia32_pmuludq((__v2si)__a, (__v2si)__b);
2452
+ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_mul_su32(__m64 __a, __m64 __b) {
2453
+ return __trunc64(__builtin_ia32_pmuludq128((__v4si)__anyext128(__a),
2454
+ (__v4si)__anyext128(__b)));
2437
2455
  }
2438
2456
 
2439
2457
  /// Multiplies 32-bit unsigned integer values contained in the lower
@@ -2521,8 +2539,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi16(__m128i __a,
2521
2539
  /// A 128-bit integer vector containing the subtrahends.
2522
2540
  /// \returns A 128-bit integer vector containing the differences of the values
2523
2541
  /// in the operands.
2524
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi32(__m128i __a,
2525
- __m128i __b) {
2542
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
2543
+ _mm_sub_epi32(__m128i __a, __m128i __b) {
2526
2544
  return (__m128i)((__v4su)__a - (__v4su)__b);
2527
2545
  }
2528
2546
 
@@ -2539,9 +2557,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi32(__m128i __a,
2539
2557
  /// A 64-bit integer vector containing the subtrahend.
2540
2558
  /// \returns A 64-bit integer vector containing the difference of the values in
2541
2559
  /// the operands.
2542
- static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_sub_si64(__m64 __a,
2543
- __m64 __b) {
2544
- return (__m64)__builtin_ia32_psubq((__v1di)__a, (__v1di)__b);
2560
+ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_sub_si64(__m64 __a, __m64 __b) {
2561
+ return (__m64)((unsigned long long)__a - (unsigned long long)__b);
2545
2562
  }
2546
2563
 
2547
2564
  /// Subtracts the corresponding elements of two [2 x i64] vectors.
@@ -2556,8 +2573,8 @@ static __inline__ __m64 __DEFAULT_FN_ATTRS_MMX _mm_sub_si64(__m64 __a,
2556
2573
  /// A 128-bit integer vector containing the subtrahends.
2557
2574
  /// \returns A 128-bit integer vector containing the differences of the values
2558
2575
  /// in the operands.
2559
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sub_epi64(__m128i __a,
2560
- __m128i __b) {
2576
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
2577
+ _mm_sub_epi64(__m128i __a, __m128i __b) {
2561
2578
  return (__m128i)((__v2du)__a - (__v2du)__b);
2562
2579
  }
2563
2580
 
@@ -3255,8 +3272,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_cmplt_epi32(__m128i __a,
3255
3272
  /// \returns A 128-bit vector of [2 x double] whose lower 64 bits contain the
3256
3273
  /// converted value of the second operand. The upper 64 bits are copied from
3257
3274
  /// the upper 64 bits of the first operand.
3258
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_cvtsi64_sd(__m128d __a,
3259
- long long __b) {
3275
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
3276
+ _mm_cvtsi64_sd(__m128d __a, long long __b) {
3260
3277
  __a[0] = __b;
3261
3278
  return __a;
3262
3279
  }
@@ -3310,7 +3327,8 @@ static __inline__ long long __DEFAULT_FN_ATTRS _mm_cvttsd_si64(__m128d __a) {
3310
3327
  /// \param __a
3311
3328
  /// A 128-bit integer vector.
3312
3329
  /// \returns A 128-bit vector of [4 x float] containing the converted values.
3313
- static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_cvtepi32_ps(__m128i __a) {
3330
+ static __inline__ __m128 __DEFAULT_FN_ATTRS_CONSTEXPR
3331
+ _mm_cvtepi32_ps(__m128i __a) {
3314
3332
  return (__m128) __builtin_convertvector((__v4si)__a, __v4sf);
3315
3333
  }
3316
3334
 
@@ -3494,8 +3512,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_undefined_si128(void) {
3494
3512
  /// destination vector of [2 x i64].
3495
3513
  /// \returns An initialized 128-bit vector of [2 x i64] containing the values
3496
3514
  /// provided in the operands.
3497
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64x(long long __q1,
3498
- long long __q0) {
3515
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3516
+ _mm_set_epi64x(long long __q1, long long __q0) {
3499
3517
  return __extension__(__m128i)(__v2di){__q0, __q1};
3500
3518
  }
3501
3519
 
@@ -3515,9 +3533,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64x(long long __q1,
3515
3533
  /// destination vector of [2 x i64].
3516
3534
  /// \returns An initialized 128-bit vector of [2 x i64] containing the values
3517
3535
  /// provided in the operands.
3518
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64(__m64 __q1,
3519
- __m64 __q0) {
3520
- return _mm_set_epi64x((long long)__q1, (long long)__q0);
3536
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3537
+ _mm_set_epi64(__m64 __q1, __m64 __q0) {
3538
+ return _mm_set_epi64x((long long)__q1[0], (long long)__q0[0]);
3521
3539
  }
3522
3540
 
3523
3541
  /// Initializes the 32-bit values in a 128-bit vector of [4 x i32] with
@@ -3542,8 +3560,10 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi64(__m64 __q1,
3542
3560
  /// vector.
3543
3561
  /// \returns An initialized 128-bit vector of [4 x i32] containing the values
3544
3562
  /// provided in the operands.
3545
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi32(int __i3, int __i2,
3546
- int __i1, int __i0) {
3563
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set_epi32(int __i3,
3564
+ int __i2,
3565
+ int __i1,
3566
+ int __i0) {
3547
3567
  return __extension__(__m128i)(__v4si){__i0, __i1, __i2, __i3};
3548
3568
  }
3549
3569
 
@@ -3581,7 +3601,7 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set_epi32(int __i3, int __i2,
3581
3601
  /// vector.
3582
3602
  /// \returns An initialized 128-bit vector of [8 x i16] containing the values
3583
3603
  /// provided in the operands.
3584
- static __inline__ __m128i __DEFAULT_FN_ATTRS
3604
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3585
3605
  _mm_set_epi16(short __w7, short __w6, short __w5, short __w4, short __w3,
3586
3606
  short __w2, short __w1, short __w0) {
3587
3607
  return __extension__(__m128i)(__v8hi){__w0, __w1, __w2, __w3,
@@ -3630,7 +3650,7 @@ _mm_set_epi16(short __w7, short __w6, short __w5, short __w4, short __w3,
3630
3650
  /// Initializes bits [7:0] of the destination vector.
3631
3651
  /// \returns An initialized 128-bit vector of [16 x i8] containing the values
3632
3652
  /// provided in the operands.
3633
- static __inline__ __m128i __DEFAULT_FN_ATTRS
3653
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3634
3654
  _mm_set_epi8(char __b15, char __b14, char __b13, char __b12, char __b11,
3635
3655
  char __b10, char __b9, char __b8, char __b7, char __b6, char __b5,
3636
3656
  char __b4, char __b3, char __b2, char __b1, char __b0) {
@@ -3652,7 +3672,8 @@ _mm_set_epi8(char __b15, char __b14, char __b13, char __b12, char __b11,
3652
3672
  /// vector.
3653
3673
  /// \returns An initialized 128-bit integer vector of [2 x i64] with both
3654
3674
  /// elements containing the value provided in the operand.
3655
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64x(long long __q) {
3675
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3676
+ _mm_set1_epi64x(long long __q) {
3656
3677
  return _mm_set_epi64x(__q, __q);
3657
3678
  }
3658
3679
 
@@ -3669,7 +3690,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64x(long long __q) {
3669
3690
  /// vector.
3670
3691
  /// \returns An initialized 128-bit vector of [2 x i64] with all elements
3671
3692
  /// containing the value provided in the operand.
3672
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64(__m64 __q) {
3693
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3694
+ _mm_set1_epi64(__m64 __q) {
3673
3695
  return _mm_set_epi64(__q, __q);
3674
3696
  }
3675
3697
 
@@ -3686,7 +3708,7 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi64(__m64 __q) {
3686
3708
  /// vector.
3687
3709
  /// \returns An initialized 128-bit vector of [4 x i32] with all elements
3688
3710
  /// containing the value provided in the operand.
3689
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi32(int __i) {
3711
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set1_epi32(int __i) {
3690
3712
  return _mm_set_epi32(__i, __i, __i, __i);
3691
3713
  }
3692
3714
 
@@ -3703,7 +3725,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi32(int __i) {
3703
3725
  /// vector.
3704
3726
  /// \returns An initialized 128-bit vector of [8 x i16] with all elements
3705
3727
  /// containing the value provided in the operand.
3706
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi16(short __w) {
3728
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3729
+ _mm_set1_epi16(short __w) {
3707
3730
  return _mm_set_epi16(__w, __w, __w, __w, __w, __w, __w, __w);
3708
3731
  }
3709
3732
 
@@ -3720,7 +3743,7 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi16(short __w) {
3720
3743
  /// vector.
3721
3744
  /// \returns An initialized 128-bit vector of [16 x i8] with all elements
3722
3745
  /// containing the value provided in the operand.
3723
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi8(char __b) {
3746
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set1_epi8(char __b) {
3724
3747
  return _mm_set_epi8(__b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b,
3725
3748
  __b, __b, __b, __b, __b);
3726
3749
  }
@@ -3739,8 +3762,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_set1_epi8(char __b) {
3739
3762
  /// A 64-bit integral value used to initialize the upper 64 bits of the
3740
3763
  /// result.
3741
3764
  /// \returns An initialized 128-bit integer vector.
3742
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi64(__m64 __q0,
3743
- __m64 __q1) {
3765
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3766
+ _mm_setr_epi64(__m64 __q0, __m64 __q1) {
3744
3767
  return _mm_set_epi64(__q1, __q0);
3745
3768
  }
3746
3769
 
@@ -3761,9 +3784,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi64(__m64 __q0,
3761
3784
  /// \param __i3
3762
3785
  /// A 32-bit integral value used to initialize bits [127:96] of the result.
3763
3786
  /// \returns An initialized 128-bit integer vector.
3764
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi32(int __i0, int __i1,
3765
- int __i2,
3766
- int __i3) {
3787
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3788
+ _mm_setr_epi32(int __i0, int __i1, int __i2, int __i3) {
3767
3789
  return _mm_set_epi32(__i3, __i2, __i1, __i0);
3768
3790
  }
3769
3791
 
@@ -3792,7 +3814,7 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setr_epi32(int __i0, int __i1,
3792
3814
  /// \param __w7
3793
3815
  /// A 16-bit integral value used to initialize bits [127:112] of the result.
3794
3816
  /// \returns An initialized 128-bit integer vector.
3795
- static __inline__ __m128i __DEFAULT_FN_ATTRS
3817
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3796
3818
  _mm_setr_epi16(short __w0, short __w1, short __w2, short __w3, short __w4,
3797
3819
  short __w5, short __w6, short __w7) {
3798
3820
  return _mm_set_epi16(__w7, __w6, __w5, __w4, __w3, __w2, __w1, __w0);
@@ -3839,7 +3861,7 @@ _mm_setr_epi16(short __w0, short __w1, short __w2, short __w3, short __w4,
3839
3861
  /// \param __b15
3840
3862
  /// An 8-bit integral value used to initialize bits [127:120] of the result.
3841
3863
  /// \returns An initialized 128-bit integer vector.
3842
- static __inline__ __m128i __DEFAULT_FN_ATTRS
3864
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
3843
3865
  _mm_setr_epi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5,
3844
3866
  char __b6, char __b7, char __b8, char __b9, char __b10,
3845
3867
  char __b11, char __b12, char __b13, char __b14, char __b15) {
@@ -3855,7 +3877,7 @@ _mm_setr_epi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5,
3855
3877
  ///
3856
3878
  /// \returns An initialized 128-bit integer vector with all elements set to
3857
3879
  /// zero.
3858
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_setzero_si128(void) {
3880
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_setzero_si128(void) {
3859
3881
  return __extension__(__m128i)(__v2di){0LL, 0LL};
3860
3882
  }
3861
3883
 
@@ -4588,7 +4610,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_unpacklo_epi64(__m128i __a,
4588
4610
  /// A 128-bit integer vector operand. The lower 64 bits are moved to the
4589
4611
  /// destination.
4590
4612
  /// \returns A 64-bit integer containing the lower 64 bits of the parameter.
4591
- static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_movepi64_pi64(__m128i __a) {
4613
+ static __inline__ __m64 __DEFAULT_FN_ATTRS_CONSTEXPR
4614
+ _mm_movepi64_pi64(__m128i __a) {
4592
4615
  return (__m64)__a[0];
4593
4616
  }
4594
4617
 
@@ -4603,8 +4626,9 @@ static __inline__ __m64 __DEFAULT_FN_ATTRS _mm_movepi64_pi64(__m128i __a) {
4603
4626
  /// A 64-bit value.
4604
4627
  /// \returns A 128-bit integer vector. The lower 64 bits contain the value from
4605
4628
  /// the operand. The upper 64 bits are assigned zeros.
4606
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_movpi64_epi64(__m64 __a) {
4607
- return __extension__(__m128i)(__v2di){(long long)__a, 0};
4629
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
4630
+ _mm_movpi64_epi64(__m64 __a) {
4631
+ return __builtin_shufflevector((__v1di)__a, _mm_setzero_si64(), 0, 1);
4608
4632
  }
4609
4633
 
4610
4634
  /// Moves the lower 64 bits of a 128-bit integer vector to a 128-bit
@@ -4619,7 +4643,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_movpi64_epi64(__m64 __a) {
4619
4643
  /// destination.
4620
4644
  /// \returns A 128-bit integer vector. The lower 64 bits contain the value from
4621
4645
  /// the operand. The upper 64 bits are assigned zeros.
4622
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_move_epi64(__m128i __a) {
4646
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
4647
+ _mm_move_epi64(__m128i __a) {
4623
4648
  return __builtin_shufflevector((__v2di)__a, _mm_setzero_si128(), 0, 2);
4624
4649
  }
4625
4650
 
@@ -4638,8 +4663,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_move_epi64(__m128i __a) {
4638
4663
  /// A 128-bit vector of [2 x double]. \n
4639
4664
  /// Bits [127:64] are written to bits [127:64] of the destination.
4640
4665
  /// \returns A 128-bit vector of [2 x double] containing the interleaved values.
4641
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpackhi_pd(__m128d __a,
4642
- __m128d __b) {
4666
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
4667
+ _mm_unpackhi_pd(__m128d __a, __m128d __b) {
4643
4668
  return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 1, 2 + 1);
4644
4669
  }
4645
4670
 
@@ -4658,8 +4683,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpackhi_pd(__m128d __a,
4658
4683
  /// A 128-bit vector of [2 x double]. \n
4659
4684
  /// Bits [63:0] are written to bits [127:64] of the destination.
4660
4685
  /// \returns A 128-bit vector of [2 x double] containing the interleaved values.
4661
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_unpacklo_pd(__m128d __a,
4662
- __m128d __b) {
4686
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
4687
+ _mm_unpacklo_pd(__m128d __a, __m128d __b) {
4663
4688
  return __builtin_shufflevector((__v2df)__a, (__v2df)__b, 0, 2 + 0);
4664
4689
  }
4665
4690
 
@@ -4722,7 +4747,8 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_movemask_pd(__m128d __a) {
4722
4747
  /// A 128-bit floating-point vector of [2 x double].
4723
4748
  /// \returns A 128-bit floating-point vector of [4 x float] containing the same
4724
4749
  /// bitwise pattern as the parameter.
4725
- static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castpd_ps(__m128d __a) {
4750
+ static __inline__ __m128 __DEFAULT_FN_ATTRS_CONSTEXPR
4751
+ _mm_castpd_ps(__m128d __a) {
4726
4752
  return (__m128)__a;
4727
4753
  }
4728
4754
 
@@ -4737,7 +4763,8 @@ static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castpd_ps(__m128d __a) {
4737
4763
  /// A 128-bit floating-point vector of [2 x double].
4738
4764
  /// \returns A 128-bit integer vector containing the same bitwise pattern as the
4739
4765
  /// parameter.
4740
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castpd_si128(__m128d __a) {
4766
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
4767
+ _mm_castpd_si128(__m128d __a) {
4741
4768
  return (__m128i)__a;
4742
4769
  }
4743
4770
 
@@ -4752,7 +4779,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castpd_si128(__m128d __a) {
4752
4779
  /// A 128-bit floating-point vector of [4 x float].
4753
4780
  /// \returns A 128-bit floating-point vector of [2 x double] containing the same
4754
4781
  /// bitwise pattern as the parameter.
4755
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castps_pd(__m128 __a) {
4782
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
4783
+ _mm_castps_pd(__m128 __a) {
4756
4784
  return (__m128d)__a;
4757
4785
  }
4758
4786
 
@@ -4767,7 +4795,8 @@ static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castps_pd(__m128 __a) {
4767
4795
  /// A 128-bit floating-point vector of [4 x float].
4768
4796
  /// \returns A 128-bit integer vector containing the same bitwise pattern as the
4769
4797
  /// parameter.
4770
- static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castps_si128(__m128 __a) {
4798
+ static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR
4799
+ _mm_castps_si128(__m128 __a) {
4771
4800
  return (__m128i)__a;
4772
4801
  }
4773
4802
 
@@ -4782,7 +4811,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_castps_si128(__m128 __a) {
4782
4811
  /// A 128-bit integer vector.
4783
4812
  /// \returns A 128-bit floating-point vector of [4 x float] containing the same
4784
4813
  /// bitwise pattern as the parameter.
4785
- static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castsi128_ps(__m128i __a) {
4814
+ static __inline__ __m128 __DEFAULT_FN_ATTRS_CONSTEXPR
4815
+ _mm_castsi128_ps(__m128i __a) {
4786
4816
  return (__m128)__a;
4787
4817
  }
4788
4818
 
@@ -4797,7 +4827,8 @@ static __inline__ __m128 __DEFAULT_FN_ATTRS _mm_castsi128_ps(__m128i __a) {
4797
4827
  /// A 128-bit integer vector.
4798
4828
  /// \returns A 128-bit floating-point vector of [2 x double] containing the same
4799
4829
  /// bitwise pattern as the parameter.
4800
- static __inline__ __m128d __DEFAULT_FN_ATTRS _mm_castsi128_pd(__m128i __a) {
4830
+ static __inline__ __m128d __DEFAULT_FN_ATTRS_CONSTEXPR
4831
+ _mm_castsi128_pd(__m128i __a) {
4801
4832
  return (__m128d)__a;
4802
4833
  }
4803
4834
 
@@ -4889,8 +4920,11 @@ void _mm_pause(void);
4889
4920
  #if defined(__cplusplus)
4890
4921
  } // extern "C"
4891
4922
  #endif
4923
+
4924
+ #undef __anyext128
4925
+ #undef __trunc64
4892
4926
  #undef __DEFAULT_FN_ATTRS
4893
- #undef __DEFAULT_FN_ATTRS_MMX
4927
+ #undef __DEFAULT_FN_ATTRS_CONSTEXPR
4894
4928
 
4895
4929
  #define _MM_SHUFFLE2(x, y) (((x) << 1) | (y))
4896
4930