@cpp-linter/clang-tidy-darwin-x64 13.0.0 → 16.0.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 (203) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_complex_builtins.h +3 -3
  4. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_intrinsics.h +38 -6
  5. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_libdevice_declares.h +6 -0
  6. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math.h +1 -1
  7. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_runtime_wrapper.h +62 -7
  8. package/lib/clang/16/include/__clang_cuda_texture_intrinsics.h +742 -0
  9. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_libdevice_declares.h +5 -0
  10. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_math.h +10 -13
  11. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_runtime_wrapper.h +18 -4
  12. package/lib/clang/16/include/__clang_hip_stdlib.h +43 -0
  13. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_aes.h +1 -1
  14. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_pclmul.h +10 -10
  15. package/lib/clang/{13.0.0 → 16}/include/altivec.h +691 -342
  16. package/lib/clang/{13.0.0 → 16}/include/ammintrin.h +4 -0
  17. package/lib/clang/16/include/amxfp16intrin.h +58 -0
  18. package/lib/clang/{13.0.0 → 16}/include/amxintrin.h +49 -18
  19. package/lib/clang/{13.0.0 → 16}/include/arm_acle.h +80 -73
  20. package/lib/clang/{13.0.0 → 16}/include/arm_fp16.h +90 -90
  21. package/lib/clang/{13.0.0 → 16}/include/arm_neon.h +28607 -28779
  22. package/lib/clang/16/include/arm_neon_sve_bridge.h +182 -0
  23. package/lib/clang/{13.0.0 → 16}/include/arm_sve.h +7848 -7996
  24. package/lib/clang/{13.0.0 → 16}/include/avx2intrin.h +189 -189
  25. package/lib/clang/{13.0.0 → 16}/include/avx512bf16intrin.h +21 -18
  26. package/lib/clang/{13.0.0 → 16}/include/avx512bwintrin.h +83 -83
  27. package/lib/clang/{13.0.0 → 16}/include/avx512dqintrin.h +365 -365
  28. package/lib/clang/{13.0.0 → 16}/include/avx512erintrin.h +102 -102
  29. package/lib/clang/{13.0.0 → 16}/include/avx512fintrin.h +1627 -1620
  30. package/lib/clang/16/include/avx512fp16intrin.h +3346 -0
  31. package/lib/clang/{13.0.0 → 16}/include/avx512ifmavlintrin.h +13 -27
  32. package/lib/clang/{13.0.0 → 16}/include/avx512vbmi2intrin.h +48 -48
  33. package/lib/clang/{13.0.0 → 16}/include/avx512vlbf16intrin.h +82 -41
  34. package/lib/clang/{13.0.0 → 16}/include/avx512vlbwintrin.h +454 -102
  35. package/lib/clang/{13.0.0 → 16}/include/avx512vldqintrin.h +134 -134
  36. package/lib/clang/16/include/avx512vlfp16intrin.h +2071 -0
  37. package/lib/clang/{13.0.0 → 16}/include/avx512vlintrin.h +596 -610
  38. package/lib/clang/{13.0.0 → 16}/include/avx512vlvbmi2intrin.h +96 -96
  39. package/lib/clang/{13.0.0 → 16}/include/avx512vlvnniintrin.h +24 -24
  40. package/lib/clang/16/include/avxifmaintrin.h +177 -0
  41. package/lib/clang/{13.0.0 → 16}/include/avxintrin.h +266 -224
  42. package/lib/clang/16/include/avxneconvertintrin.h +484 -0
  43. package/lib/clang/16/include/avxvnniint8intrin.h +471 -0
  44. package/lib/clang/{13.0.0 → 16}/include/avxvnniintrin.h +16 -16
  45. package/lib/clang/{13.0.0 → 16}/include/bmiintrin.h +6 -2
  46. package/lib/clang/{13.0.0 → 16}/include/cetintrin.h +20 -4
  47. package/lib/clang/16/include/cmpccxaddintrin.h +70 -0
  48. package/lib/clang/{13.0.0 → 16}/include/cpuid.h +14 -2
  49. package/lib/clang/16/include/crc32intrin.h +100 -0
  50. package/lib/clang/16/include/cuda_wrappers/cmath +90 -0
  51. package/lib/clang/{13.0.0 → 16}/include/emmintrin.h +573 -779
  52. package/lib/clang/{13.0.0 → 16}/include/f16cintrin.h +4 -4
  53. package/lib/clang/{13.0.0 → 16}/include/float.h +22 -6
  54. package/lib/clang/{13.0.0 → 16}/include/gfniintrin.h +54 -53
  55. package/lib/clang/{13.0.0 → 16}/include/hexagon_protos.h +0 -11
  56. package/lib/clang/{13.0.0 → 16}/include/hexagon_types.h +0 -32
  57. package/lib/clang/16/include/hlsl/hlsl_basic_types.h +67 -0
  58. package/lib/clang/16/include/hlsl/hlsl_intrinsics.h +223 -0
  59. package/lib/clang/16/include/hlsl.h +15 -0
  60. package/lib/clang/{13.0.0 → 16}/include/hresetintrin.h +2 -2
  61. package/lib/clang/{13.0.0 → 16}/include/hvx_hexagon_protos.h +1200 -409
  62. package/lib/clang/{13.0.0 → 16}/include/ia32intrin.h +17 -17
  63. package/lib/clang/{13.0.0 → 16}/include/immintrin.h +74 -24
  64. package/lib/clang/{13.0.0 → 16}/include/intrin.h +34 -35
  65. package/lib/clang/{13.0.0 → 16}/include/keylockerintrin.h +24 -30
  66. package/lib/clang/16/include/larchintrin.h +234 -0
  67. package/lib/clang/{13.0.0 → 16}/include/limits.h +22 -1
  68. package/lib/clang/{13.0.0 → 16}/include/mm_malloc.h +3 -3
  69. package/lib/clang/{13.0.0 → 16}/include/mmintrin.h +4 -0
  70. package/lib/clang/{13.0.0 → 16}/include/nmmintrin.h +4 -0
  71. package/lib/clang/{13.0.0 → 16}/include/opencl-c-base.h +98 -11
  72. package/lib/clang/{13.0.0 → 16}/include/opencl-c.h +7252 -6208
  73. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex +10 -1
  74. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex.h +9 -0
  75. package/lib/clang/{13.0.0 → 16}/include/pmmintrin.h +5 -1
  76. package/lib/clang/16/include/ppc_wrappers/bmi2intrin.h +134 -0
  77. package/lib/clang/16/include/ppc_wrappers/bmiintrin.h +165 -0
  78. package/lib/clang/16/include/ppc_wrappers/emmintrin.h +2268 -0
  79. package/lib/clang/16/include/ppc_wrappers/immintrin.h +27 -0
  80. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mm_malloc.h +12 -17
  81. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mmintrin.h +389 -386
  82. package/lib/clang/16/include/ppc_wrappers/pmmintrin.h +145 -0
  83. package/lib/clang/16/include/ppc_wrappers/smmintrin.h +663 -0
  84. package/lib/clang/16/include/ppc_wrappers/tmmintrin.h +453 -0
  85. package/lib/clang/{13.0.0/include/stdnoreturn.h → 16/include/ppc_wrappers/x86gprintrin.h} +7 -6
  86. package/lib/clang/16/include/ppc_wrappers/x86intrin.h +28 -0
  87. package/lib/clang/16/include/ppc_wrappers/xmmintrin.h +1827 -0
  88. package/lib/clang/16/include/prfchiintrin.h +61 -0
  89. package/lib/clang/{13.0.0 → 16}/include/prfchwintrin.h +5 -2
  90. package/lib/clang/16/include/raointintrin.h +203 -0
  91. package/lib/clang/16/include/rdpruintrin.h +57 -0
  92. package/lib/clang/{13.0.0 → 16}/include/rdseedintrin.h +3 -3
  93. package/lib/clang/16/include/riscv_vector.h +211 -0
  94. package/lib/clang/{13.0.0 → 16}/include/rtmintrin.h +1 -1
  95. package/lib/clang/{13.0.0 → 16}/include/smmintrin.h +260 -362
  96. package/lib/clang/{13.0.0 → 16}/include/stdarg.h +23 -7
  97. package/lib/clang/{13.0.0 → 16}/include/stdatomic.h +14 -1
  98. package/lib/clang/{13.0.0 → 16}/include/stdbool.h +10 -7
  99. package/lib/clang/{13.0.0 → 16}/include/stddef.h +9 -2
  100. package/lib/clang/{13.0.0 → 16}/include/stdint.h +311 -25
  101. package/lib/clang/16/include/stdnoreturn.h +29 -0
  102. package/lib/clang/{13.0.0 → 16}/include/tmmintrin.h +10 -6
  103. package/lib/clang/{13.0.0 → 16}/include/uintrintrin.h +8 -8
  104. package/lib/clang/{13.0.0 → 16}/include/unwind.h +12 -7
  105. package/lib/clang/{13.0.0 → 16}/include/vaesintrin.h +1 -1
  106. package/lib/clang/16/include/velintrin.h +71 -0
  107. package/lib/clang/16/include/velintrin_approx.h +120 -0
  108. package/lib/clang/16/include/velintrin_gen.h +1257 -0
  109. package/lib/clang/{13.0.0 → 16}/include/vpclmulqdqintrin.h +6 -6
  110. package/lib/clang/{13.0.0 → 16}/include/wasm_simd128.h +169 -26
  111. package/lib/clang/{13.0.0 → 16}/include/wmmintrin.h +4 -0
  112. package/lib/clang/16/include/x86gprintrin.h +65 -0
  113. package/lib/clang/{13.0.0 → 16}/include/x86intrin.h +4 -0
  114. package/lib/clang/{13.0.0 → 16}/include/xmmintrin.h +19 -10
  115. package/lib/clang/{13.0.0 → 16}/include/xopintrin.h +31 -31
  116. package/package.json +6 -6
  117. package/lib/clang/13.0.0/include/ppc_wrappers/emmintrin.h +0 -2324
  118. package/lib/clang/13.0.0/include/ppc_wrappers/pmmintrin.h +0 -150
  119. package/lib/clang/13.0.0/include/ppc_wrappers/smmintrin.h +0 -109
  120. package/lib/clang/13.0.0/include/ppc_wrappers/tmmintrin.h +0 -495
  121. package/lib/clang/13.0.0/include/ppc_wrappers/xmmintrin.h +0 -1843
  122. package/lib/clang/13.0.0/include/riscv_vector.h +0 -123865
  123. package/lib/clang/13.0.0/include/x86gprintrin.h +0 -23
  124. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_builtin_vars.h +0 -0
  125. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_cmath.h +0 -0
  126. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_device_functions.h +0 -0
  127. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math_forward_declares.h +0 -0
  128. /package/lib/clang/{13.0.0 → 16}/include/__clang_hip_cmath.h +0 -0
  129. /package/lib/clang/{13.0.0 → 16}/include/__stddef_max_align_t.h +0 -0
  130. /package/lib/clang/{13.0.0 → 16}/include/adxintrin.h +0 -0
  131. /package/lib/clang/{13.0.0 → 16}/include/arm64intr.h +0 -0
  132. /package/lib/clang/{13.0.0 → 16}/include/arm_bf16.h +0 -0
  133. /package/lib/clang/{13.0.0 → 16}/include/arm_cde.h +0 -0
  134. /package/lib/clang/{13.0.0 → 16}/include/arm_cmse.h +0 -0
  135. /package/lib/clang/{13.0.0 → 16}/include/arm_mve.h +0 -0
  136. /package/lib/clang/{13.0.0 → 16}/include/armintr.h +0 -0
  137. /package/lib/clang/{13.0.0 → 16}/include/avx512bitalgintrin.h +0 -0
  138. /package/lib/clang/{13.0.0 → 16}/include/avx512cdintrin.h +0 -0
  139. /package/lib/clang/{13.0.0 → 16}/include/avx512ifmaintrin.h +0 -0
  140. /package/lib/clang/{13.0.0 → 16}/include/avx512pfintrin.h +0 -0
  141. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmiintrin.h +0 -0
  142. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmivlintrin.h +0 -0
  143. /package/lib/clang/{13.0.0 → 16}/include/avx512vlbitalgintrin.h +0 -0
  144. /package/lib/clang/{13.0.0 → 16}/include/avx512vlcdintrin.h +0 -0
  145. /package/lib/clang/{13.0.0 → 16}/include/avx512vlvp2intersectintrin.h +0 -0
  146. /package/lib/clang/{13.0.0 → 16}/include/avx512vnniintrin.h +0 -0
  147. /package/lib/clang/{13.0.0 → 16}/include/avx512vp2intersectintrin.h +0 -0
  148. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqintrin.h +0 -0
  149. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqvlintrin.h +0 -0
  150. /package/lib/clang/{13.0.0 → 16}/include/bmi2intrin.h +0 -0
  151. /package/lib/clang/{13.0.0 → 16}/include/builtins.h +0 -0
  152. /package/lib/clang/{13.0.0 → 16}/include/cet.h +0 -0
  153. /package/lib/clang/{13.0.0 → 16}/include/cldemoteintrin.h +0 -0
  154. /package/lib/clang/{13.0.0 → 16}/include/clflushoptintrin.h +0 -0
  155. /package/lib/clang/{13.0.0 → 16}/include/clwbintrin.h +0 -0
  156. /package/lib/clang/{13.0.0 → 16}/include/clzerointrin.h +0 -0
  157. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/algorithm +0 -0
  158. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/complex +0 -0
  159. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/new +0 -0
  160. /package/lib/clang/{13.0.0 → 16}/include/enqcmdintrin.h +0 -0
  161. /package/lib/clang/{13.0.0 → 16}/include/fma4intrin.h +0 -0
  162. /package/lib/clang/{13.0.0 → 16}/include/fmaintrin.h +0 -0
  163. /package/lib/clang/{13.0.0 → 16}/include/fxsrintrin.h +0 -0
  164. /package/lib/clang/{13.0.0 → 16}/include/hexagon_circ_brev_intrinsics.h +0 -0
  165. /package/lib/clang/{13.0.0 → 16}/include/htmintrin.h +0 -0
  166. /package/lib/clang/{13.0.0 → 16}/include/htmxlintrin.h +0 -0
  167. /package/lib/clang/{13.0.0 → 16}/include/inttypes.h +0 -0
  168. /package/lib/clang/{13.0.0 → 16}/include/invpcidintrin.h +0 -0
  169. /package/lib/clang/{13.0.0 → 16}/include/iso646.h +0 -0
  170. /package/lib/clang/{13.0.0 → 16}/include/lwpintrin.h +0 -0
  171. /package/lib/clang/{13.0.0 → 16}/include/lzcntintrin.h +0 -0
  172. /package/lib/clang/{13.0.0 → 16}/include/mm3dnow.h +0 -0
  173. /package/lib/clang/{13.0.0 → 16}/include/module.modulemap +0 -0
  174. /package/lib/clang/{13.0.0 → 16}/include/movdirintrin.h +0 -0
  175. /package/lib/clang/{13.0.0 → 16}/include/msa.h +0 -0
  176. /package/lib/clang/{13.0.0 → 16}/include/mwaitxintrin.h +0 -0
  177. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  178. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/cmath +0 -0
  179. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex_cmath.h +0 -0
  180. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/math.h +0 -0
  181. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/new +0 -0
  182. /package/lib/clang/{13.0.0 → 16}/include/pconfigintrin.h +0 -0
  183. /package/lib/clang/{13.0.0 → 16}/include/pkuintrin.h +0 -0
  184. /package/lib/clang/{13.0.0 → 16}/include/popcntintrin.h +0 -0
  185. /package/lib/clang/{13.0.0 → 16}/include/ptwriteintrin.h +0 -0
  186. /package/lib/clang/{13.0.0 → 16}/include/s390intrin.h +0 -0
  187. /package/lib/clang/{13.0.0 → 16}/include/serializeintrin.h +0 -0
  188. /package/lib/clang/{13.0.0 → 16}/include/sgxintrin.h +0 -0
  189. /package/lib/clang/{13.0.0 → 16}/include/shaintrin.h +0 -0
  190. /package/lib/clang/{13.0.0 → 16}/include/stdalign.h +0 -0
  191. /package/lib/clang/{13.0.0 → 16}/include/tbmintrin.h +0 -0
  192. /package/lib/clang/{13.0.0 → 16}/include/tgmath.h +0 -0
  193. /package/lib/clang/{13.0.0 → 16}/include/tsxldtrkintrin.h +0 -0
  194. /package/lib/clang/{13.0.0 → 16}/include/vadefs.h +0 -0
  195. /package/lib/clang/{13.0.0 → 16}/include/varargs.h +0 -0
  196. /package/lib/clang/{13.0.0 → 16}/include/vecintrin.h +0 -0
  197. /package/lib/clang/{13.0.0 → 16}/include/waitpkgintrin.h +0 -0
  198. /package/lib/clang/{13.0.0 → 16}/include/wbnoinvdintrin.h +0 -0
  199. /package/lib/clang/{13.0.0 → 16}/include/xsavecintrin.h +0 -0
  200. /package/lib/clang/{13.0.0 → 16}/include/xsaveintrin.h +0 -0
  201. /package/lib/clang/{13.0.0 → 16}/include/xsaveoptintrin.h +0 -0
  202. /package/lib/clang/{13.0.0 → 16}/include/xsavesintrin.h +0 -0
  203. /package/lib/clang/{13.0.0 → 16}/include/xtestintrin.h +0 -0
@@ -46,7 +46,7 @@
46
46
  ///
47
47
  /// This intrinsic corresponds to the <c> LOADIWKEY </c> instructions.
48
48
  ///
49
- /// \operation
49
+ /// \code{.operation}
50
50
  /// IF CPL > 0 // LOADKWKEY only allowed at ring 0 (supervisor mode)
51
51
  /// GP (0)
52
52
  /// FI
@@ -91,7 +91,7 @@
91
91
  /// AF := 0
92
92
  /// PF := 0
93
93
  /// CF := 0
94
- /// \endoperation
94
+ /// \endcode
95
95
  static __inline__ void __DEFAULT_FN_ATTRS
96
96
  _mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
97
97
  __m128i __enkey_lo, __m128i __enkey_hi) {
@@ -99,14 +99,14 @@ _mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
99
99
  }
100
100
 
101
101
  /// Wrap a 128-bit AES key from __key into a key handle and output in
102
- /// ((__m128i*)__h) to ((__m128i*)__h) + 5 and a 32-bit value as return.
102
+ /// ((__m128i*)__h) to ((__m128i*)__h) + 2 and a 32-bit value as return.
103
103
  /// The explicit source operand __htype specifies handle restrictions.
104
104
  ///
105
105
  /// \headerfile <x86intrin.h>
106
106
  ///
107
107
  /// This intrinsic corresponds to the <c> ENCODEKEY128 </c> instructions.
108
108
  ///
109
- /// \operation
109
+ /// \code{.operation}
110
110
  /// InputKey[127:0] := __key[127:0]
111
111
  /// KeyMetadata[2:0] := __htype[2:0]
112
112
  /// KeyMetadata[23:3] := 0 // Reserved for future usage
@@ -120,23 +120,20 @@ _mm_loadiwkey (unsigned int __ctl, __m128i __intkey,
120
120
  /// MEM[__h+127:__h] := Handle[127:0] // AAD
121
121
  /// MEM[__h+255:__h+128] := Handle[255:128] // Integrity Tag
122
122
  /// MEM[__h+383:__h+256] := Handle[383:256] // CipherText
123
- /// MEM[__h+511:__h+384] := 0 // Reserved for future usage
124
- /// MEM[__h+639:__h+512] := 0 // Reserved for future usage
125
- /// MEM[__h+767:__h+640] := 0 // Reserved for future usage
126
123
  /// OF := 0
127
124
  /// SF := 0
128
125
  /// ZF := 0
129
126
  /// AF := 0
130
127
  /// PF := 0
131
128
  /// CF := 0
132
- /// \endoperation
129
+ /// \endcode
133
130
  static __inline__ unsigned int __DEFAULT_FN_ATTRS
134
131
  _mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
135
132
  return __builtin_ia32_encodekey128_u32(__htype, (__v2di)__key, __h);
136
133
  }
137
134
 
138
135
  /// Wrap a 256-bit AES key from __key_hi:__key_lo into a key handle, then
139
- /// output handle in ((__m128i*)__h) to ((__m128i*)__h) + 6 and
136
+ /// output handle in ((__m128i*)__h) to ((__m128i*)__h) + 3 and
140
137
  /// a 32-bit value as return.
141
138
  /// The explicit source operand __htype specifies handle restrictions.
142
139
  ///
@@ -144,7 +141,7 @@ _mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
144
141
  ///
145
142
  /// This intrinsic corresponds to the <c> ENCODEKEY256 </c> instructions.
146
143
  ///
147
- /// \operation
144
+ /// \code{.operation}
148
145
  /// InputKey[127:0] := __key_lo[127:0]
149
146
  /// InputKey[255:128] := __key_hi[255:128]
150
147
  /// KeyMetadata[2:0] := __htype[2:0]
@@ -160,16 +157,13 @@ _mm_encodekey128_u32(unsigned int __htype, __m128i __key, void *__h) {
160
157
  /// MEM[__h+255:__h+128] := Handle[255:128] // Tag
161
158
  /// MEM[__h+383:__h+256] := Handle[383:256] // CipherText[127:0]
162
159
  /// MEM[__h+511:__h+384] := Handle[511:384] // CipherText[255:128]
163
- /// MEM[__h+639:__h+512] := 0 // Reserved for future usage
164
- /// MEM[__h+767:__h+640] := 0 // Reserved for future usage
165
- /// MEM[__h+895:__h+768] := 0 Integrity// Reserved for future usage
166
160
  /// OF := 0
167
161
  /// SF := 0
168
162
  /// ZF := 0
169
163
  /// AF := 0
170
164
  /// PF := 0
171
165
  /// CF := 0
172
- /// \endoperation
166
+ /// \endcode
173
167
  static __inline__ unsigned int __DEFAULT_FN_ATTRS
174
168
  _mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
175
169
  void *__h) {
@@ -185,7 +179,7 @@ _mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
185
179
  ///
186
180
  /// This intrinsic corresponds to the <c> AESENC128KL </c> instructions.
187
181
  ///
188
- /// \operation
182
+ /// \code{.operation}
189
183
  /// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic.
190
184
  /// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
191
185
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -208,7 +202,7 @@ _mm_encodekey256_u32(unsigned int __htype, __m128i __key_lo, __m128i __key_hi,
208
202
  /// AF := 0
209
203
  /// PF := 0
210
204
  /// CF := 0
211
- /// \endoperation
205
+ /// \endcode
212
206
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
213
207
  _mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
214
208
  return __builtin_ia32_aesenc128kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
@@ -222,7 +216,7 @@ _mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
222
216
  ///
223
217
  /// This intrinsic corresponds to the <c> AESENC256KL </c> instructions.
224
218
  ///
225
- /// \operation
219
+ /// \code{.operation}
226
220
  /// Handle[511:0] := MEM[__h+511:__h] // Load is not guaranteed to be atomic.
227
221
  /// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) ||
228
222
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -247,7 +241,7 @@ _mm_aesenc128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
247
241
  /// AF := 0
248
242
  /// PF := 0
249
243
  /// CF := 0
250
- /// \endoperation
244
+ /// \endcode
251
245
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
252
246
  _mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
253
247
  return __builtin_ia32_aesenc256kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
@@ -261,7 +255,7 @@ _mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
261
255
  ///
262
256
  /// This intrinsic corresponds to the <c> AESDEC128KL </c> instructions.
263
257
  ///
264
- /// \operation
258
+ /// \code{.operation}
265
259
  /// Handle[383:0] := MEM[__h+383:__h] // Load is not guaranteed to be atomic.
266
260
  /// IllegalHandle := (HandleReservedBitSet (Handle[383:0]) ||
267
261
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -286,7 +280,7 @@ _mm_aesenc256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
286
280
  /// AF := 0
287
281
  /// PF := 0
288
282
  /// CF := 0
289
- /// \endoperation
283
+ /// \endcode
290
284
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
291
285
  _mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
292
286
  return __builtin_ia32_aesdec128kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
@@ -300,7 +294,7 @@ _mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
300
294
  ///
301
295
  /// This intrinsic corresponds to the <c> AESDEC256KL </c> instructions.
302
296
  ///
303
- /// \operation
297
+ /// \code{.operation}
304
298
  /// Handle[511:0] := MEM[__h+511:__h]
305
299
  /// IllegalHandle := (HandleReservedBitSet (Handle[511:0]) ||
306
300
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -325,7 +319,7 @@ _mm_aesdec128kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
325
319
  /// AF := 0
326
320
  /// PF := 0
327
321
  /// CF := 0
328
- /// \endoperation
322
+ /// \endcode
329
323
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
330
324
  _mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
331
325
  return __builtin_ia32_aesdec256kl_u8((__v2di *)__odata, (__v2di)__idata, __h);
@@ -352,7 +346,7 @@ _mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
352
346
  ///
353
347
  /// This intrinsic corresponds to the <c> AESENCWIDE128KL </c> instructions.
354
348
  ///
355
- /// \operation
349
+ /// \code{.operation}
356
350
  /// Handle := MEM[__h+383:__h]
357
351
  /// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
358
352
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -383,7 +377,7 @@ _mm_aesdec256kl_u8(__m128i* __odata, __m128i __idata, const void *__h) {
383
377
  /// AF := 0
384
378
  /// PF := 0
385
379
  /// CF := 0
386
- /// \endoperation
380
+ /// \endcode
387
381
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
388
382
  _mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
389
383
  return __builtin_ia32_aesencwide128kl_u8((__v2di *)__odata,
@@ -398,7 +392,7 @@ _mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
398
392
  ///
399
393
  /// This intrinsic corresponds to the <c> AESENCWIDE256KL </c> instructions.
400
394
  ///
401
- /// \operation
395
+ /// \code{.operation}
402
396
  /// Handle[511:0] := MEM[__h+511:__h]
403
397
  /// IllegalHandle := ( HandleReservedBitSet (Handle[511:0]) ||
404
398
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -429,7 +423,7 @@ _mm_aesencwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
429
423
  /// AF := 0
430
424
  /// PF := 0
431
425
  /// CF := 0
432
- /// \endoperation
426
+ /// \endcode
433
427
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
434
428
  _mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
435
429
  return __builtin_ia32_aesencwide256kl_u8((__v2di *)__odata,
@@ -444,7 +438,7 @@ _mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
444
438
  ///
445
439
  /// This intrinsic corresponds to the <c> AESDECWIDE128KL </c> instructions.
446
440
  ///
447
- /// \operation
441
+ /// \code{.operation}
448
442
  /// Handle[383:0] := MEM[__h+383:__h]
449
443
  /// IllegalHandle := ( HandleReservedBitSet (Handle[383:0]) ||
450
444
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -475,7 +469,7 @@ _mm_aesencwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
475
469
  /// AF := 0
476
470
  /// PF := 0
477
471
  /// CF := 0
478
- /// \endoperation
472
+ /// \endcode
479
473
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
480
474
  _mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
481
475
  return __builtin_ia32_aesdecwide128kl_u8((__v2di *)__odata,
@@ -490,7 +484,7 @@ _mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
490
484
  ///
491
485
  /// This intrinsic corresponds to the <c> AESDECWIDE256KL </c> instructions.
492
486
  ///
493
- /// \operation
487
+ /// \code{.operation}
494
488
  /// Handle[511:0] := MEM[__h+511:__h]
495
489
  /// IllegalHandle = ( HandleReservedBitSet (Handle[511:0]) ||
496
490
  /// (Handle[127:0] AND (CPL > 0)) ||
@@ -521,7 +515,7 @@ _mm_aesdecwide128kl_u8(__m128i __odata[8], const __m128i __idata[8], const void*
521
515
  /// AF := 0
522
516
  /// PF := 0
523
517
  /// CF := 0
524
- /// \endoperation
518
+ /// \endcode
525
519
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
526
520
  _mm_aesdecwide256kl_u8(__m128i __odata[8], const __m128i __idata[8], const void* __h) {
527
521
  return __builtin_ia32_aesdecwide256kl_u8((__v2di *)__odata,
@@ -0,0 +1,234 @@
1
+ /*===------------ larchintrin.h - LoongArch 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
+
10
+ #ifndef _LOONGARCH_BASE_INTRIN_H
11
+ #define _LOONGARCH_BASE_INTRIN_H
12
+
13
+ #ifdef __cplusplus
14
+ extern "C" {
15
+ #endif
16
+
17
+ typedef struct rdtime {
18
+ unsigned int value;
19
+ unsigned int timeid;
20
+ } __rdtime_t;
21
+
22
+ #if __loongarch_grlen == 64
23
+ typedef struct drdtime {
24
+ unsigned long dvalue;
25
+ unsigned long dtimeid;
26
+ } __drdtime_t;
27
+
28
+ extern __inline __drdtime_t
29
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
30
+ __rdtime_d(void) {
31
+ __drdtime_t __drdtime;
32
+ __asm__ volatile(
33
+ "rdtime.d %[val], %[tid]\n\t"
34
+ : [val] "=&r"(__drdtime.dvalue), [tid] "=&r"(__drdtime.dtimeid));
35
+ return __drdtime;
36
+ }
37
+ #endif
38
+
39
+ extern __inline __rdtime_t
40
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
41
+ __rdtimeh_w(void) {
42
+ __rdtime_t __rdtime;
43
+ __asm__ volatile("rdtimeh.w %[val], %[tid]\n\t"
44
+ : [val] "=&r"(__rdtime.value), [tid] "=&r"(__rdtime.timeid));
45
+ return __rdtime;
46
+ }
47
+
48
+ extern __inline __rdtime_t
49
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
50
+ __rdtimel_w(void) {
51
+ __rdtime_t __rdtime;
52
+ __asm__ volatile("rdtimel.w %[val], %[tid]\n\t"
53
+ : [val] "=&r"(__rdtime.value), [tid] "=&r"(__rdtime.timeid));
54
+ return __rdtime;
55
+ }
56
+
57
+ #if __loongarch_grlen == 64
58
+ extern __inline int
59
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
60
+ __crc_w_b_w(char _1, int _2) {
61
+ return (int)__builtin_loongarch_crc_w_b_w((char)_1, (int)_2);
62
+ }
63
+
64
+ extern __inline int
65
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
66
+ __crc_w_h_w(short _1, int _2) {
67
+ return (int)__builtin_loongarch_crc_w_h_w((short)_1, (int)_2);
68
+ }
69
+
70
+ extern __inline int
71
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
72
+ __crc_w_w_w(int _1, int _2) {
73
+ return (int)__builtin_loongarch_crc_w_w_w((int)_1, (int)_2);
74
+ }
75
+
76
+ extern __inline int
77
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
78
+ __crc_w_d_w(long int _1, int _2) {
79
+ return (int)__builtin_loongarch_crc_w_d_w((long int)_1, (int)_2);
80
+ }
81
+
82
+ extern __inline int
83
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
84
+ __crcc_w_b_w(char _1, int _2) {
85
+ return (int)__builtin_loongarch_crcc_w_b_w((char)_1, (int)_2);
86
+ }
87
+
88
+ extern __inline int
89
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
90
+ __crcc_w_h_w(short _1, int _2) {
91
+ return (int)__builtin_loongarch_crcc_w_h_w((short)_1, (int)_2);
92
+ }
93
+
94
+ extern __inline int
95
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
96
+ __crcc_w_w_w(int _1, int _2) {
97
+ return (int)__builtin_loongarch_crcc_w_w_w((int)_1, (int)_2);
98
+ }
99
+
100
+ extern __inline int
101
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
102
+ __crcc_w_d_w(long int _1, int _2) {
103
+ return (int)__builtin_loongarch_crcc_w_d_w((long int)_1, (int)_2);
104
+ }
105
+ #endif
106
+
107
+ #define __break(/*ui15*/ _1) __builtin_loongarch_break((_1))
108
+
109
+ #if __loongarch_grlen == 32
110
+ #define __cacop_w(/*uimm5*/ _1, /*unsigned int*/ _2, /*simm12*/ _3) \
111
+ ((void)__builtin_loongarch_cacop_w((_1), (unsigned int)(_2), (_3)))
112
+ #endif
113
+
114
+ #if __loongarch_grlen == 64
115
+ #define __cacop_d(/*uimm5*/ _1, /*unsigned long int*/ _2, /*simm12*/ _3) \
116
+ ((void)__builtin_loongarch_cacop_d((_1), (unsigned long int)(_2), (_3)))
117
+ #endif
118
+
119
+ #define __dbar(/*ui15*/ _1) __builtin_loongarch_dbar((_1))
120
+
121
+ #define __ibar(/*ui15*/ _1) __builtin_loongarch_ibar((_1))
122
+
123
+ #define __movfcsr2gr(/*ui5*/ _1) __builtin_loongarch_movfcsr2gr((_1));
124
+
125
+ #define __movgr2fcsr(/*ui5*/ _1, _2) \
126
+ __builtin_loongarch_movgr2fcsr((_1), (unsigned int)_2);
127
+
128
+ #define __syscall(/*ui15*/ _1) __builtin_loongarch_syscall((_1))
129
+
130
+ #define __csrrd_w(/*ui14*/ _1) ((unsigned int)__builtin_loongarch_csrrd_w((_1)))
131
+
132
+ #define __csrwr_w(/*unsigned int*/ _1, /*ui14*/ _2) \
133
+ ((unsigned int)__builtin_loongarch_csrwr_w((unsigned int)(_1), (_2)))
134
+
135
+ #define __csrxchg_w(/*unsigned int*/ _1, /*unsigned int*/ _2, /*ui14*/ _3) \
136
+ ((unsigned int)__builtin_loongarch_csrxchg_w((unsigned int)(_1), \
137
+ (unsigned int)(_2), (_3)))
138
+
139
+ #if __loongarch_grlen == 64
140
+ #define __csrrd_d(/*ui14*/ _1) \
141
+ ((unsigned long int)__builtin_loongarch_csrrd_d((_1)))
142
+
143
+ #define __csrwr_d(/*unsigned long int*/ _1, /*ui14*/ _2) \
144
+ ((unsigned long int)__builtin_loongarch_csrwr_d((unsigned long int)(_1), \
145
+ (_2)))
146
+
147
+ #define __csrxchg_d(/*unsigned long int*/ _1, /*unsigned long int*/ _2, \
148
+ /*ui14*/ _3) \
149
+ ((unsigned long int)__builtin_loongarch_csrxchg_d( \
150
+ (unsigned long int)(_1), (unsigned long int)(_2), (_3)))
151
+ #endif
152
+
153
+ extern __inline unsigned char
154
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
155
+ __iocsrrd_b(unsigned int _1) {
156
+ return (unsigned char)__builtin_loongarch_iocsrrd_b((unsigned int)_1);
157
+ }
158
+
159
+ extern __inline unsigned char
160
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
161
+ __iocsrrd_h(unsigned int _1) {
162
+ return (unsigned short)__builtin_loongarch_iocsrrd_h((unsigned int)_1);
163
+ }
164
+
165
+ extern __inline unsigned int
166
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
167
+ __iocsrrd_w(unsigned int _1) {
168
+ return (unsigned int)__builtin_loongarch_iocsrrd_w((unsigned int)_1);
169
+ }
170
+
171
+ #if __loongarch_grlen == 64
172
+ extern __inline unsigned long int
173
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
174
+ __iocsrrd_d(unsigned int _1) {
175
+ return (unsigned long int)__builtin_loongarch_iocsrrd_d((unsigned int)_1);
176
+ }
177
+ #endif
178
+
179
+ extern __inline void
180
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
181
+ __iocsrwr_b(unsigned char _1, unsigned int _2) {
182
+ __builtin_loongarch_iocsrwr_b((unsigned char)_1, (unsigned int)_2);
183
+ }
184
+
185
+ extern __inline void
186
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
187
+ __iocsrwr_h(unsigned short _1, unsigned int _2) {
188
+ __builtin_loongarch_iocsrwr_h((unsigned short)_1, (unsigned int)_2);
189
+ }
190
+
191
+ extern __inline void
192
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
193
+ __iocsrwr_w(unsigned int _1, unsigned int _2) {
194
+ __builtin_loongarch_iocsrwr_w((unsigned int)_1, (unsigned int)_2);
195
+ }
196
+
197
+ extern __inline unsigned int
198
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
199
+ __cpucfg(unsigned int _1) {
200
+ return (unsigned int)__builtin_loongarch_cpucfg((unsigned int)_1);
201
+ }
202
+
203
+ #if __loongarch_grlen == 64
204
+ extern __inline void
205
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
206
+ __iocsrwr_d(unsigned long int _1, unsigned int _2) {
207
+ __builtin_loongarch_iocsrwr_d((unsigned long int)_1, (unsigned int)_2);
208
+ }
209
+
210
+ extern __inline void
211
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
212
+ __asrtgt_d(long int _1, long int _2) {
213
+ __builtin_loongarch_asrtgt_d((long int)_1, (long int)_2);
214
+ }
215
+
216
+ extern __inline void
217
+ __attribute__((__gnu_inline__, __always_inline__, __artificial__))
218
+ __asrtle_d(long int _1, long int _2) {
219
+ __builtin_loongarch_asrtle_d((long int)_1, (long int)_2);
220
+ }
221
+ #endif
222
+
223
+ #if __loongarch_grlen == 64
224
+ #define __lddir_d(/*long int*/ _1, /*ui5*/ _2) \
225
+ ((long int)__builtin_loongarch_lddir_d((long int)(_1), (_2)))
226
+
227
+ #define __ldpte_d(/*long int*/ _1, /*ui5*/ _2) \
228
+ ((void)__builtin_loongarch_ldpte_d((long int)(_1), (_2)))
229
+ #endif
230
+
231
+ #ifdef __cplusplus
232
+ }
233
+ #endif
234
+ #endif /* _LOONGARCH_BASE_INTRIN_H */
@@ -62,6 +62,26 @@
62
62
 
63
63
  #define CHAR_BIT __CHAR_BIT__
64
64
 
65
+ /* C2x 5.2.4.2.1 */
66
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
67
+ in C2x mode; switch to the correct values once they've been published. */
68
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
69
+ #define BOOL_WIDTH __BOOL_WIDTH__
70
+ #define CHAR_WIDTH CHAR_BIT
71
+ #define SCHAR_WIDTH CHAR_BIT
72
+ #define UCHAR_WIDTH CHAR_BIT
73
+ #define USHRT_WIDTH __SHRT_WIDTH__
74
+ #define SHRT_WIDTH __SHRT_WIDTH__
75
+ #define UINT_WIDTH __INT_WIDTH__
76
+ #define INT_WIDTH __INT_WIDTH__
77
+ #define ULONG_WIDTH __LONG_WIDTH__
78
+ #define LONG_WIDTH __LONG_WIDTH__
79
+ #define ULLONG_WIDTH __LLONG_WIDTH__
80
+ #define LLONG_WIDTH __LLONG_WIDTH__
81
+
82
+ #define BITINT_MAXWIDTH __BITINT_MAXWIDTH__
83
+ #endif
84
+
65
85
  #ifdef __CHAR_UNSIGNED__ /* -funsigned-char */
66
86
  #define CHAR_MIN 0
67
87
  #define CHAR_MAX UCHAR_MAX
@@ -73,7 +93,8 @@
73
93
  /* C99 5.2.4.2.1: Added long long.
74
94
  C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>.
75
95
  */
76
- #if __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L
96
+ #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \
97
+ (defined(__cplusplus) && __cplusplus >= 201103L)
77
98
 
78
99
  #undef LLONG_MIN
79
100
  #undef LLONG_MAX
@@ -28,9 +28,9 @@ extern "C" int posix_memalign(void **__memptr, size_t __alignment, size_t __size
28
28
 
29
29
  #if !(defined(_WIN32) && defined(_mm_malloc))
30
30
  static __inline__ void *__attribute__((__always_inline__, __nodebug__,
31
- __malloc__))
32
- _mm_malloc(size_t __size, size_t __align)
33
- {
31
+ __malloc__, __alloc_size__(1),
32
+ __alloc_align__(2)))
33
+ _mm_malloc(size_t __size, size_t __align) {
34
34
  if (__align == 1) {
35
35
  return malloc(__size);
36
36
  }
@@ -10,6 +10,10 @@
10
10
  #ifndef __MMINTRIN_H
11
11
  #define __MMINTRIN_H
12
12
 
13
+ #if !defined(__i386__) && !defined(__x86_64__)
14
+ #error "This header is only meant to be used on x86 and x64 architecture"
15
+ #endif
16
+
13
17
  typedef long long __m64 __attribute__((__vector_size__(8), __aligned__(8)));
14
18
 
15
19
  typedef long long __v1di __attribute__((__vector_size__(8)));
@@ -10,6 +10,10 @@
10
10
  #ifndef __NMMINTRIN_H
11
11
  #define __NMMINTRIN_H
12
12
 
13
+ #if !defined(__i386__) && !defined(__x86_64__)
14
+ #error "This header is only meant to be used on x86 and x64 architecture"
15
+ #endif
16
+
13
17
  /* To match expectations of gcc we put the sse4.2 definitions into smmintrin.h,
14
18
  just include it now then. */
15
19
  #include <smmintrin.h>