@cpp-linter/clang-tidy-linux-arm64 17.0.6 → 18.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{17 → 18}/include/__clang_cuda_device_functions.h +2 -2
  4. package/lib/clang/{17 → 18}/include/__clang_cuda_libdevice_declares.h +2 -2
  5. package/lib/clang/{17 → 18}/include/__clang_cuda_math.h +2 -2
  6. package/lib/clang/{17 → 18}/include/__clang_cuda_runtime_wrapper.h +2 -2
  7. package/lib/clang/{17 → 18}/include/__clang_hip_math.h +192 -171
  8. package/lib/clang/{17 → 18}/include/__clang_hip_runtime_wrapper.h +34 -26
  9. package/lib/clang/18/include/__stdarg___gnuc_va_list.h +13 -0
  10. package/lib/clang/18/include/__stdarg___va_copy.h +12 -0
  11. package/lib/clang/18/include/__stdarg_va_arg.h +22 -0
  12. package/lib/clang/18/include/__stdarg_va_copy.h +12 -0
  13. package/lib/clang/18/include/__stdarg_va_list.h +13 -0
  14. package/lib/clang/{17 → 18}/include/__stddef_max_align_t.h +1 -1
  15. package/lib/clang/18/include/__stddef_null.h +29 -0
  16. package/lib/clang/18/include/__stddef_nullptr_t.h +29 -0
  17. package/lib/clang/18/include/__stddef_offsetof.h +17 -0
  18. package/lib/clang/18/include/__stddef_ptrdiff_t.h +20 -0
  19. package/lib/clang/18/include/__stddef_rsize_t.h +20 -0
  20. package/lib/clang/18/include/__stddef_size_t.h +20 -0
  21. package/lib/clang/18/include/__stddef_unreachable.h +21 -0
  22. package/lib/clang/18/include/__stddef_wchar_t.h +28 -0
  23. package/lib/clang/18/include/__stddef_wint_t.h +15 -0
  24. package/lib/clang/{17/include/adxintrin.h → 18/include/adcintrin.h} +27 -94
  25. package/lib/clang/18/include/adxintrin.h +102 -0
  26. package/lib/clang/{17 → 18}/include/altivec.h +31 -12
  27. package/lib/clang/{17 → 18}/include/ammintrin.h +4 -4
  28. package/lib/clang/{17 → 18}/include/arm_acle.h +111 -31
  29. package/lib/clang/{17 → 18}/include/arm_neon.h +85 -327
  30. package/lib/clang/18/include/arm_sme.h +2412 -0
  31. package/lib/clang/{17 → 18}/include/arm_sve.h +7386 -351
  32. package/lib/clang/18/include/arm_vector_types.h +345 -0
  33. package/lib/clang/{17 → 18}/include/avx2intrin.h +24 -3
  34. package/lib/clang/{17 → 18}/include/avx512bf16intrin.h +3 -2
  35. package/lib/clang/{17 → 18}/include/avx512bitalgintrin.h +4 -1
  36. package/lib/clang/{17 → 18}/include/avx512bwintrin.h +28 -38
  37. package/lib/clang/{17 → 18}/include/avx512cdintrin.h +3 -1
  38. package/lib/clang/{17 → 18}/include/avx512dqintrin.h +4 -2
  39. package/lib/clang/{17 → 18}/include/avx512fintrin.h +7 -3
  40. package/lib/clang/{17 → 18}/include/avx512fp16intrin.h +6 -4
  41. package/lib/clang/{17 → 18}/include/avx512ifmaintrin.h +3 -1
  42. package/lib/clang/{17 → 18}/include/avx512ifmavlintrin.h +8 -2
  43. package/lib/clang/{17 → 18}/include/avx512pfintrin.h +0 -5
  44. package/lib/clang/{17 → 18}/include/avx512vbmi2intrin.h +1 -1
  45. package/lib/clang/{17 → 18}/include/avx512vbmiintrin.h +3 -2
  46. package/lib/clang/{17 → 18}/include/avx512vbmivlintrin.h +8 -3
  47. package/lib/clang/{17 → 18}/include/avx512vlbf16intrin.h +8 -6
  48. package/lib/clang/{17 → 18}/include/avx512vlbitalgintrin.h +8 -2
  49. package/lib/clang/{17 → 18}/include/avx512vlbwintrin.h +8 -2
  50. package/lib/clang/{17 → 18}/include/avx512vlcdintrin.h +8 -3
  51. package/lib/clang/{17 → 18}/include/avx512vldqintrin.h +8 -2
  52. package/lib/clang/{17 → 18}/include/avx512vlfp16intrin.h +2 -2
  53. package/lib/clang/{17 → 18}/include/avx512vlintrin.h +8 -2
  54. package/lib/clang/{17 → 18}/include/avx512vlvbmi2intrin.h +8 -2
  55. package/lib/clang/{17 → 18}/include/avx512vlvnniintrin.h +8 -2
  56. package/lib/clang/{17 → 18}/include/avx512vlvp2intersectintrin.h +6 -4
  57. package/lib/clang/{17 → 18}/include/avx512vnniintrin.h +3 -2
  58. package/lib/clang/{17 → 18}/include/avx512vp2intersectintrin.h +3 -2
  59. package/lib/clang/{17 → 18}/include/avx512vpopcntdqintrin.h +3 -1
  60. package/lib/clang/{17 → 18}/include/avx512vpopcntdqvlintrin.h +6 -2
  61. package/lib/clang/{17 → 18}/include/avxintrin.h +9 -5
  62. package/lib/clang/{17 → 18}/include/bmiintrin.h +231 -46
  63. package/lib/clang/{17 → 18}/include/emmintrin.h +10 -10
  64. package/lib/clang/{17 → 18}/include/gfniintrin.h +23 -6
  65. package/lib/clang/18/include/hlsl/hlsl_intrinsics.h +624 -0
  66. package/lib/clang/18/include/ia32intrin.h +863 -0
  67. package/lib/clang/{17 → 18}/include/immintrin.h +66 -3
  68. package/lib/clang/{17 → 18}/include/intrin.h +16 -0
  69. package/lib/clang/{17 → 18}/include/larchintrin.h +13 -1
  70. package/lib/clang/18/include/lasxintrin.h +3884 -0
  71. package/lib/clang/{17 → 18}/include/limits.h +2 -4
  72. package/lib/clang/{17/include/llvm_libc_wrappers/stdio.h → 18/include/llvm_libc_wrappers/assert.h} +7 -7
  73. package/lib/clang/{17 → 18}/include/llvm_libc_wrappers/ctype.h +17 -0
  74. package/lib/clang/18/include/llvm_libc_wrappers/stdio.h +80 -0
  75. package/lib/clang/{17 → 18}/include/llvm_libc_wrappers/stdlib.h +4 -1
  76. package/lib/clang/18/include/llvm_libc_wrappers/string.h +96 -0
  77. package/lib/clang/{17/include/llvm_libc_wrappers/string.h → 18/include/llvm_libc_wrappers/time.h} +9 -12
  78. package/lib/clang/18/include/lsxintrin.h +3750 -0
  79. package/lib/clang/{17 → 18}/include/mmintrin.h +7 -5
  80. package/lib/clang/{17 → 18}/include/module.modulemap +155 -2
  81. package/lib/clang/{17 → 18}/include/opencl-c-base.h +5 -0
  82. package/lib/clang/{17 → 18}/include/openmp_wrappers/cmath +1 -1
  83. package/lib/clang/{17 → 18}/include/pmmintrin.h +3 -2
  84. package/lib/clang/18/include/ppc_wrappers/nmmintrin.h +26 -0
  85. package/lib/clang/{17 → 18}/include/ppc_wrappers/smmintrin.h +35 -15
  86. package/lib/clang/18/include/riscv_bitmanip.h +195 -0
  87. package/lib/clang/18/include/riscv_crypto.h +170 -0
  88. package/lib/clang/{17 → 18}/include/riscv_ntlh.h +3 -5
  89. package/lib/clang/{17 → 18}/include/riscv_vector.h +31 -0
  90. package/lib/clang/{17 → 18}/include/smmintrin.h +3 -3
  91. package/lib/clang/{17 → 18}/include/stdalign.h +1 -3
  92. package/lib/clang/18/include/stdarg.h +79 -0
  93. package/lib/clang/{17 → 18}/include/stdatomic.h +3 -5
  94. package/lib/clang/18/include/stdckdint.h +42 -0
  95. package/lib/clang/18/include/stddef.h +123 -0
  96. package/lib/clang/{17 → 18}/include/stdint.h +19 -48
  97. package/lib/clang/{17 → 18}/include/stdnoreturn.h +2 -2
  98. package/lib/clang/{17 → 18}/include/tmmintrin.h +7 -2
  99. package/lib/clang/18/include/usermsrintrin.h +51 -0
  100. package/lib/clang/{17 → 18}/include/vaesintrin.h +4 -2
  101. package/lib/clang/{17 → 18}/include/vecintrin.h +217 -199
  102. package/lib/clang/{17 → 18}/include/x86gprintrin.h +5 -0
  103. package/lib/clang/{17 → 18}/include/xmmintrin.h +9 -5
  104. package/package.json +6 -6
  105. package/lib/clang/17/include/arm_sme_draft_spec_subject_to_change.h +0 -642
  106. package/lib/clang/17/include/hlsl/hlsl_intrinsics.h +0 -480
  107. package/lib/clang/17/include/ia32intrin.h +0 -441
  108. package/lib/clang/17/include/stdarg.h +0 -51
  109. package/lib/clang/17/include/stddef.h +0 -133
  110. /package/lib/clang/{17 → 18}/include/__clang_cuda_builtin_vars.h +0 -0
  111. /package/lib/clang/{17 → 18}/include/__clang_cuda_cmath.h +0 -0
  112. /package/lib/clang/{17 → 18}/include/__clang_cuda_complex_builtins.h +0 -0
  113. /package/lib/clang/{17 → 18}/include/__clang_cuda_intrinsics.h +0 -0
  114. /package/lib/clang/{17 → 18}/include/__clang_cuda_math_forward_declares.h +0 -0
  115. /package/lib/clang/{17 → 18}/include/__clang_cuda_texture_intrinsics.h +0 -0
  116. /package/lib/clang/{17 → 18}/include/__clang_hip_cmath.h +0 -0
  117. /package/lib/clang/{17 → 18}/include/__clang_hip_libdevice_declares.h +0 -0
  118. /package/lib/clang/{17 → 18}/include/__clang_hip_stdlib.h +0 -0
  119. /package/lib/clang/{17 → 18}/include/__wmmintrin_aes.h +0 -0
  120. /package/lib/clang/{17 → 18}/include/__wmmintrin_pclmul.h +0 -0
  121. /package/lib/clang/{17 → 18}/include/amxcomplexintrin.h +0 -0
  122. /package/lib/clang/{17 → 18}/include/amxfp16intrin.h +0 -0
  123. /package/lib/clang/{17 → 18}/include/amxintrin.h +0 -0
  124. /package/lib/clang/{17 → 18}/include/arm64intr.h +0 -0
  125. /package/lib/clang/{17 → 18}/include/arm_bf16.h +0 -0
  126. /package/lib/clang/{17 → 18}/include/arm_cde.h +0 -0
  127. /package/lib/clang/{17 → 18}/include/arm_cmse.h +0 -0
  128. /package/lib/clang/{17 → 18}/include/arm_fp16.h +0 -0
  129. /package/lib/clang/{17 → 18}/include/arm_mve.h +0 -0
  130. /package/lib/clang/{17 → 18}/include/arm_neon_sve_bridge.h +0 -0
  131. /package/lib/clang/{17 → 18}/include/armintr.h +0 -0
  132. /package/lib/clang/{17 → 18}/include/avx512erintrin.h +0 -0
  133. /package/lib/clang/{17 → 18}/include/avxifmaintrin.h +0 -0
  134. /package/lib/clang/{17 → 18}/include/avxneconvertintrin.h +0 -0
  135. /package/lib/clang/{17 → 18}/include/avxvnniint16intrin.h +0 -0
  136. /package/lib/clang/{17 → 18}/include/avxvnniint8intrin.h +0 -0
  137. /package/lib/clang/{17 → 18}/include/avxvnniintrin.h +0 -0
  138. /package/lib/clang/{17 → 18}/include/bmi2intrin.h +0 -0
  139. /package/lib/clang/{17 → 18}/include/builtins.h +0 -0
  140. /package/lib/clang/{17 → 18}/include/cet.h +0 -0
  141. /package/lib/clang/{17 → 18}/include/cetintrin.h +0 -0
  142. /package/lib/clang/{17 → 18}/include/cldemoteintrin.h +0 -0
  143. /package/lib/clang/{17 → 18}/include/clflushoptintrin.h +0 -0
  144. /package/lib/clang/{17 → 18}/include/clwbintrin.h +0 -0
  145. /package/lib/clang/{17 → 18}/include/clzerointrin.h +0 -0
  146. /package/lib/clang/{17 → 18}/include/cmpccxaddintrin.h +0 -0
  147. /package/lib/clang/{17 → 18}/include/cpuid.h +0 -0
  148. /package/lib/clang/{17 → 18}/include/crc32intrin.h +0 -0
  149. /package/lib/clang/{17 → 18}/include/cuda_wrappers/algorithm +0 -0
  150. /package/lib/clang/{17 → 18}/include/cuda_wrappers/bits/basic_string.h +0 -0
  151. /package/lib/clang/{17 → 18}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  152. /package/lib/clang/{17 → 18}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  153. /package/lib/clang/{17 → 18}/include/cuda_wrappers/cmath +0 -0
  154. /package/lib/clang/{17 → 18}/include/cuda_wrappers/complex +0 -0
  155. /package/lib/clang/{17 → 18}/include/cuda_wrappers/new +0 -0
  156. /package/lib/clang/{17 → 18}/include/enqcmdintrin.h +0 -0
  157. /package/lib/clang/{17 → 18}/include/f16cintrin.h +0 -0
  158. /package/lib/clang/{17 → 18}/include/float.h +0 -0
  159. /package/lib/clang/{17 → 18}/include/fma4intrin.h +0 -0
  160. /package/lib/clang/{17 → 18}/include/fmaintrin.h +0 -0
  161. /package/lib/clang/{17 → 18}/include/fxsrintrin.h +0 -0
  162. /package/lib/clang/{17 → 18}/include/hexagon_circ_brev_intrinsics.h +0 -0
  163. /package/lib/clang/{17 → 18}/include/hexagon_protos.h +0 -0
  164. /package/lib/clang/{17 → 18}/include/hexagon_types.h +0 -0
  165. /package/lib/clang/{17 → 18}/include/hlsl/hlsl_basic_types.h +0 -0
  166. /package/lib/clang/{17 → 18}/include/hlsl.h +0 -0
  167. /package/lib/clang/{17 → 18}/include/hresetintrin.h +0 -0
  168. /package/lib/clang/{17 → 18}/include/htmintrin.h +0 -0
  169. /package/lib/clang/{17 → 18}/include/htmxlintrin.h +0 -0
  170. /package/lib/clang/{17 → 18}/include/hvx_hexagon_protos.h +0 -0
  171. /package/lib/clang/{17 → 18}/include/inttypes.h +0 -0
  172. /package/lib/clang/{17 → 18}/include/invpcidintrin.h +0 -0
  173. /package/lib/clang/{17 → 18}/include/iso646.h +0 -0
  174. /package/lib/clang/{17 → 18}/include/keylockerintrin.h +0 -0
  175. /package/lib/clang/{17 → 18}/include/llvm_libc_wrappers/inttypes.h +0 -0
  176. /package/lib/clang/{17 → 18}/include/lwpintrin.h +0 -0
  177. /package/lib/clang/{17 → 18}/include/lzcntintrin.h +0 -0
  178. /package/lib/clang/{17 → 18}/include/mm3dnow.h +0 -0
  179. /package/lib/clang/{17 → 18}/include/mm_malloc.h +0 -0
  180. /package/lib/clang/{17 → 18}/include/movdirintrin.h +0 -0
  181. /package/lib/clang/{17 → 18}/include/msa.h +0 -0
  182. /package/lib/clang/{17 → 18}/include/mwaitxintrin.h +0 -0
  183. /package/lib/clang/{17 → 18}/include/nmmintrin.h +0 -0
  184. /package/lib/clang/{17 → 18}/include/opencl-c.h +0 -0
  185. /package/lib/clang/{17 → 18}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  186. /package/lib/clang/{17 → 18}/include/openmp_wrappers/complex +0 -0
  187. /package/lib/clang/{17 → 18}/include/openmp_wrappers/complex.h +0 -0
  188. /package/lib/clang/{17 → 18}/include/openmp_wrappers/complex_cmath.h +0 -0
  189. /package/lib/clang/{17 → 18}/include/openmp_wrappers/math.h +0 -0
  190. /package/lib/clang/{17 → 18}/include/openmp_wrappers/new +0 -0
  191. /package/lib/clang/{17 → 18}/include/pconfigintrin.h +0 -0
  192. /package/lib/clang/{17 → 18}/include/pkuintrin.h +0 -0
  193. /package/lib/clang/{17 → 18}/include/popcntintrin.h +0 -0
  194. /package/lib/clang/{17 → 18}/include/ppc_wrappers/bmi2intrin.h +0 -0
  195. /package/lib/clang/{17 → 18}/include/ppc_wrappers/bmiintrin.h +0 -0
  196. /package/lib/clang/{17 → 18}/include/ppc_wrappers/emmintrin.h +0 -0
  197. /package/lib/clang/{17 → 18}/include/ppc_wrappers/immintrin.h +0 -0
  198. /package/lib/clang/{17 → 18}/include/ppc_wrappers/mm_malloc.h +0 -0
  199. /package/lib/clang/{17 → 18}/include/ppc_wrappers/mmintrin.h +0 -0
  200. /package/lib/clang/{17 → 18}/include/ppc_wrappers/pmmintrin.h +0 -0
  201. /package/lib/clang/{17 → 18}/include/ppc_wrappers/tmmintrin.h +0 -0
  202. /package/lib/clang/{17 → 18}/include/ppc_wrappers/x86gprintrin.h +0 -0
  203. /package/lib/clang/{17 → 18}/include/ppc_wrappers/x86intrin.h +0 -0
  204. /package/lib/clang/{17 → 18}/include/ppc_wrappers/xmmintrin.h +0 -0
  205. /package/lib/clang/{17 → 18}/include/prfchiintrin.h +0 -0
  206. /package/lib/clang/{17 → 18}/include/prfchwintrin.h +0 -0
  207. /package/lib/clang/{17 → 18}/include/ptwriteintrin.h +0 -0
  208. /package/lib/clang/{17 → 18}/include/raointintrin.h +0 -0
  209. /package/lib/clang/{17 → 18}/include/rdpruintrin.h +0 -0
  210. /package/lib/clang/{17 → 18}/include/rdseedintrin.h +0 -0
  211. /package/lib/clang/{17 → 18}/include/rtmintrin.h +0 -0
  212. /package/lib/clang/{17 → 18}/include/s390intrin.h +0 -0
  213. /package/lib/clang/{17 → 18}/include/serializeintrin.h +0 -0
  214. /package/lib/clang/{17 → 18}/include/sgxintrin.h +0 -0
  215. /package/lib/clang/{17 → 18}/include/sha512intrin.h +0 -0
  216. /package/lib/clang/{17 → 18}/include/shaintrin.h +0 -0
  217. /package/lib/clang/{17 → 18}/include/sifive_vector.h +0 -0
  218. /package/lib/clang/{17 → 18}/include/sm3intrin.h +0 -0
  219. /package/lib/clang/{17 → 18}/include/sm4intrin.h +0 -0
  220. /package/lib/clang/{17 → 18}/include/stdbool.h +0 -0
  221. /package/lib/clang/{17 → 18}/include/tbmintrin.h +0 -0
  222. /package/lib/clang/{17 → 18}/include/tgmath.h +0 -0
  223. /package/lib/clang/{17 → 18}/include/tsxldtrkintrin.h +0 -0
  224. /package/lib/clang/{17 → 18}/include/uintrintrin.h +0 -0
  225. /package/lib/clang/{17 → 18}/include/unwind.h +0 -0
  226. /package/lib/clang/{17 → 18}/include/vadefs.h +0 -0
  227. /package/lib/clang/{17 → 18}/include/varargs.h +0 -0
  228. /package/lib/clang/{17 → 18}/include/velintrin.h +0 -0
  229. /package/lib/clang/{17 → 18}/include/velintrin_approx.h +0 -0
  230. /package/lib/clang/{17 → 18}/include/velintrin_gen.h +0 -0
  231. /package/lib/clang/{17 → 18}/include/vpclmulqdqintrin.h +0 -0
  232. /package/lib/clang/{17 → 18}/include/waitpkgintrin.h +0 -0
  233. /package/lib/clang/{17 → 18}/include/wasm_simd128.h +0 -0
  234. /package/lib/clang/{17 → 18}/include/wbnoinvdintrin.h +0 -0
  235. /package/lib/clang/{17 → 18}/include/wmmintrin.h +0 -0
  236. /package/lib/clang/{17 → 18}/include/x86intrin.h +0 -0
  237. /package/lib/clang/{17 → 18}/include/xopintrin.h +0 -0
  238. /package/lib/clang/{17 → 18}/include/xsavecintrin.h +0 -0
  239. /package/lib/clang/{17 → 18}/include/xsaveintrin.h +0 -0
  240. /package/lib/clang/{17 → 18}/include/xsaveoptintrin.h +0 -0
  241. /package/lib/clang/{17 → 18}/include/xsavesintrin.h +0 -0
  242. /package/lib/clang/{17 → 18}/include/xtestintrin.h +0 -0
@@ -499,9 +499,8 @@ typedef __UINTMAX_TYPE__ uintmax_t;
499
499
  # define INT64_MAX INT64_C( 9223372036854775807)
500
500
  # define INT64_MIN (-INT64_C( 9223372036854775807)-1)
501
501
  # define UINT64_MAX UINT64_C(18446744073709551615)
502
- /* FIXME: This is using the placeholder dates Clang produces for these macros
503
- in C2x mode; switch to the correct values once they've been published. */
504
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
502
+
503
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
505
504
  # define UINT64_WIDTH 64
506
505
  # define INT64_WIDTH UINT64_WIDTH
507
506
 
@@ -545,9 +544,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
545
544
  # define INT_FAST64_MAX __INT_LEAST64_MAX
546
545
  # define UINT_FAST64_MAX __UINT_LEAST64_MAX
547
546
 
548
- /* FIXME: This is using the placeholder dates Clang produces for these macros
549
- in C2x mode; switch to the correct values once they've been published. */
550
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
547
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
551
548
  # define UINT_LEAST64_WIDTH __UINT_LEAST64_WIDTH
552
549
  # define INT_LEAST64_WIDTH UINT_LEAST64_WIDTH
553
550
  # define UINT_FAST64_WIDTH __UINT_LEAST64_WIDTH
@@ -586,9 +583,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
586
583
  # undef __UINT_LEAST8_MAX
587
584
  # define __UINT_LEAST8_MAX UINT56_MAX
588
585
 
589
- /* FIXME: This is using the placeholder dates Clang produces for these macros
590
- in C2x mode; switch to the correct values once they've been published. */
591
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
586
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
592
587
  # define UINT56_WIDTH 56
593
588
  # define INT56_WIDTH UINT56_WIDTH
594
589
  # define UINT_LEAST56_WIDTH UINT56_WIDTH
@@ -635,9 +630,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
635
630
  # undef __UINT_LEAST8_MAX
636
631
  # define __UINT_LEAST8_MAX UINT48_MAX
637
632
 
638
- /* FIXME: This is using the placeholder dates Clang produces for these macros
639
- in C2x mode; switch to the correct values once they've been published. */
640
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
633
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
641
634
  #define UINT48_WIDTH 48
642
635
  #define INT48_WIDTH UINT48_WIDTH
643
636
  #define UINT_LEAST48_WIDTH UINT48_WIDTH
@@ -684,9 +677,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
684
677
  # undef __UINT_LEAST8_MAX
685
678
  # define __UINT_LEAST8_MAX UINT40_MAX
686
679
 
687
- /* FIXME: This is using the placeholder dates Clang produces for these macros
688
- in C2x mode; switch to the correct values once they've been published. */
689
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
680
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
690
681
  # define UINT40_WIDTH 40
691
682
  # define INT40_WIDTH UINT40_WIDTH
692
683
  # define UINT_LEAST40_WIDTH UINT40_WIDTH
@@ -727,9 +718,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
727
718
  # undef __UINT_LEAST8_MAX
728
719
  # define __UINT_LEAST8_MAX UINT32_MAX
729
720
 
730
- /* FIXME: This is using the placeholder dates Clang produces for these macros
731
- in C2x mode; switch to the correct values once they've been published. */
732
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
721
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
733
722
  # define UINT32_WIDTH 32
734
723
  # define INT32_WIDTH UINT32_WIDTH
735
724
  # undef __UINT_LEAST32_WIDTH
@@ -749,9 +738,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
749
738
  # define INT_FAST32_MAX __INT_LEAST32_MAX
750
739
  # define UINT_FAST32_MAX __UINT_LEAST32_MAX
751
740
 
752
- /* FIXME: This is using the placeholder dates Clang produces for these macros
753
- in C2x mode; switch to the correct values once they've been published. */
754
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
741
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
755
742
  # define UINT_LEAST32_WIDTH __UINT_LEAST32_WIDTH
756
743
  # define INT_LEAST32_WIDTH UINT_LEAST32_WIDTH
757
744
  # define UINT_FAST32_WIDTH __UINT_LEAST32_WIDTH
@@ -784,9 +771,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
784
771
  # undef __UINT_LEAST8_MAX
785
772
  # define __UINT_LEAST8_MAX UINT24_MAX
786
773
 
787
- /* FIXME: This is using the placeholder dates Clang produces for these macros
788
- in C2x mode; switch to the correct values once they've been published. */
789
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
774
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
790
775
  # define UINT24_WIDTH 24
791
776
  # define INT24_WIDTH UINT24_WIDTH
792
777
  # define UINT_LEAST24_WIDTH UINT24_WIDTH
@@ -819,9 +804,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
819
804
  # undef __UINT_LEAST8_MAX
820
805
  # define __UINT_LEAST8_MAX UINT16_MAX
821
806
 
822
- /* FIXME: This is using the placeholder dates Clang produces for these macros
823
- in C2x mode; switch to the correct values once they've been published. */
824
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
807
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
825
808
  # define UINT16_WIDTH 16
826
809
  # define INT16_WIDTH UINT16_WIDTH
827
810
  # undef __UINT_LEAST16_WIDTH
@@ -839,9 +822,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
839
822
  # define INT_FAST16_MAX __INT_LEAST16_MAX
840
823
  # define UINT_FAST16_MAX __UINT_LEAST16_MAX
841
824
 
842
- /* FIXME: This is using the placeholder dates Clang produces for these macros
843
- in C2x mode; switch to the correct values once they've been published. */
844
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
825
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
845
826
  # define UINT_LEAST16_WIDTH __UINT_LEAST16_WIDTH
846
827
  # define INT_LEAST16_WIDTH UINT_LEAST16_WIDTH
847
828
  # define UINT_FAST16_WIDTH __UINT_LEAST16_WIDTH
@@ -862,9 +843,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
862
843
  # undef __UINT_LEAST8_MAX
863
844
  # define __UINT_LEAST8_MAX UINT8_MAX
864
845
 
865
- /* FIXME: This is using the placeholder dates Clang produces for these macros
866
- in C2x mode; switch to the correct values once they've been published. */
867
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
846
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
868
847
  # define UINT8_WIDTH 8
869
848
  # define INT8_WIDTH UINT8_WIDTH
870
849
  # undef __UINT_LEAST8_WIDTH
@@ -880,9 +859,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
880
859
  # define INT_FAST8_MAX __INT_LEAST8_MAX
881
860
  # define UINT_FAST8_MAX __UINT_LEAST8_MAX
882
861
 
883
- /* FIXME: This is using the placeholder dates Clang produces for these macros
884
- in C2x mode; switch to the correct values once they've been published. */
885
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
862
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
886
863
  # define UINT_LEAST8_WIDTH __UINT_LEAST8_WIDTH
887
864
  # define INT_LEAST8_WIDTH UINT_LEAST8_WIDTH
888
865
  # define UINT_FAST8_WIDTH __UINT_LEAST8_WIDTH
@@ -907,10 +884,8 @@ typedef __UINTMAX_TYPE__ uintmax_t;
907
884
  #define PTRDIFF_MAX __PTRDIFF_MAX__
908
885
  #define SIZE_MAX __SIZE_MAX__
909
886
 
910
- /* C2x 7.20.2.4 Width of integer types capable of holding object pointers. */
911
- /* FIXME: This is using the placeholder dates Clang produces for these macros
912
- in C2x mode; switch to the correct values once they've been published. */
913
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
887
+ /* C23 7.22.2.4 Width of integer types capable of holding object pointers. */
888
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
914
889
  /* NB: The C standard requires that these be the same value, but the compiler
915
890
  exposes separate internal width macros. */
916
891
  #define INTPTR_WIDTH __INTPTR_WIDTH__
@@ -928,10 +903,8 @@ typedef __UINTMAX_TYPE__ uintmax_t;
928
903
  #define INTMAX_MAX __INTMAX_MAX__
929
904
  #define UINTMAX_MAX __UINTMAX_MAX__
930
905
 
931
- /* C2x 7.20.2.5 Width of greatest-width integer types. */
932
- /* FIXME: This is using the placeholder dates Clang produces for these macros
933
- in C2x mode; switch to the correct values once they've been published. */
934
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
906
+ /* C23 7.22.2.5 Width of greatest-width integer types. */
907
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
935
908
  /* NB: The C standard requires that these be the same value, but the compiler
936
909
  exposes separate internal width macros. */
937
910
  #define INTMAX_WIDTH __INTMAX_WIDTH__
@@ -964,10 +937,8 @@ typedef __UINTMAX_TYPE__ uintmax_t;
964
937
  #define INTMAX_C(v) __int_c(v, __INTMAX_C_SUFFIX__)
965
938
  #define UINTMAX_C(v) __int_c(v, __UINTMAX_C_SUFFIX__)
966
939
 
967
- /* C2x 7.20.3.x Width of other integer types. */
968
- /* FIXME: This is using the placeholder dates Clang produces for these macros
969
- in C2x mode; switch to the correct values once they've been published. */
970
- #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
940
+ /* C23 7.22.3.x Width of other integer types. */
941
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
971
942
  #define PTRDIFF_WIDTH __PTRDIFF_WIDTH__
972
943
  #define SIG_ATOMIC_WIDTH __SIG_ATOMIC_WIDTH__
973
944
  #define SIZE_WIDTH __SIZE_WIDTH__
@@ -15,8 +15,8 @@
15
15
 
16
16
  #if (defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L) && \
17
17
  !defined(_CLANG_DISABLE_CRT_DEPRECATION_WARNINGS)
18
- /* The noreturn macro is deprecated in C2x. We do not mark it as such because
19
- including the header file in C2x is also deprecated and we do not want to
18
+ /* The noreturn macro is deprecated in C23. We do not mark it as such because
19
+ including the header file in C23 is also deprecated and we do not want to
20
20
  issue a confusing diagnostic for code which includes <stdnoreturn.h>
21
21
  followed by code that writes [[noreturn]]. The issue with such code is not
22
22
  with the attribute, or the use of 'noreturn', but the inclusion of the
@@ -17,8 +17,13 @@
17
17
  #include <pmmintrin.h>
18
18
 
19
19
  /* Define the default attributes for the functions in this file. */
20
- #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("ssse3"), __min_vector_width__(64)))
21
- #define __DEFAULT_FN_ATTRS_MMX __attribute__((__always_inline__, __nodebug__, __target__("mmx,ssse3"), __min_vector_width__(64)))
20
+ #define __DEFAULT_FN_ATTRS \
21
+ __attribute__((__always_inline__, __nodebug__, \
22
+ __target__("ssse3,no-evex512"), __min_vector_width__(64)))
23
+ #define __DEFAULT_FN_ATTRS_MMX \
24
+ __attribute__((__always_inline__, __nodebug__, \
25
+ __target__("mmx,ssse3,no-evex512"), \
26
+ __min_vector_width__(64)))
22
27
 
23
28
  /// Computes the absolute value of each of the packed 8-bit signed
24
29
  /// integers in the source operand and stores the 8-bit unsigned integer
@@ -0,0 +1,51 @@
1
+ /*===--------------- usermsrintrin.h - USERMSR 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 __X86GPRINTRIN_H
10
+ #error "Never use <usermsrintrin.h> directly; include <x86gprintrin.h> instead."
11
+ #endif // __X86GPRINTRIN_H
12
+
13
+ #ifndef __USERMSRINTRIN_H
14
+ #define __USERMSRINTRIN_H
15
+ #ifdef __x86_64__
16
+
17
+ /// Reads the contents of a 64-bit MSR specified in \a __A into \a dst.
18
+ ///
19
+ /// This intrinsic corresponds to the <c> URDMSR </c> instruction.
20
+ /// \param __A
21
+ /// An unsigned long long.
22
+ ///
23
+ /// \code{.operation}
24
+ /// DEST := MSR[__A]
25
+ /// \endcode
26
+ static __inline__ unsigned long long
27
+ __attribute__((__always_inline__, __nodebug__, __target__("usermsr")))
28
+ _urdmsr(unsigned long long __A) {
29
+ return __builtin_ia32_urdmsr(__A);
30
+ }
31
+
32
+ /// Writes the contents of \a __B into the 64-bit MSR specified in \a __A.
33
+ ///
34
+ /// This intrinsic corresponds to the <c> UWRMSR </c> instruction.
35
+ ///
36
+ /// \param __A
37
+ /// An unsigned long long.
38
+ /// \param __B
39
+ /// An unsigned long long.
40
+ ///
41
+ /// \code{.operation}
42
+ /// MSR[__A] := __B
43
+ /// \endcode
44
+ static __inline__ void
45
+ __attribute__((__always_inline__, __nodebug__, __target__("usermsr")))
46
+ _uwrmsr(unsigned long long __A, unsigned long long __B) {
47
+ return __builtin_ia32_uwrmsr(__A, __B);
48
+ }
49
+
50
+ #endif // __x86_64__
51
+ #endif // __USERMSRINTRIN_H
@@ -18,8 +18,10 @@
18
18
  #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("vaes"), __min_vector_width__(256)))
19
19
 
20
20
  /* Default attributes for ZMM forms. */
21
- #define __DEFAULT_FN_ATTRS_F __attribute__((__always_inline__, __nodebug__, __target__("avx512f,vaes"), __min_vector_width__(512)))
22
-
21
+ #define __DEFAULT_FN_ATTRS_F \
22
+ __attribute__((__always_inline__, __nodebug__, \
23
+ __target__("avx512f,evex512,vaes"), \
24
+ __min_vector_width__(512)))
23
25
 
24
26
  static __inline__ __m256i __DEFAULT_FN_ATTRS
25
27
  _mm256_aesenc_epi128(__m256i __A, __m256i __B)