@cpp-linter/clang-tidy-win32-x64 14.0.0 → 15.0.2

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 (192) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_intrinsics.h +7 -7
  4. package/lib/clang/{14.0.0 → 15.0.2}/include/__wmmintrin_pclmul.h +10 -10
  5. package/lib/clang/{14.0.0 → 15.0.2}/include/altivec.h +487 -248
  6. package/lib/clang/{14.0.0 → 15.0.2}/include/amxintrin.h +0 -2
  7. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_sve.h +65 -61
  8. package/lib/clang/{14.0.0 → 15.0.2}/include/avx2intrin.h +8 -8
  9. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512bwintrin.h +12 -12
  10. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512fintrin.h +76 -73
  11. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlbf16intrin.h +1 -1
  12. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlbwintrin.h +8 -8
  13. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlintrin.h +81 -95
  14. package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlvnniintrin.h +16 -16
  15. package/lib/clang/{14.0.0 → 15.0.2}/include/avxintrin.h +65 -30
  16. package/lib/clang/{14.0.0 → 15.0.2}/include/avxvnniintrin.h +16 -16
  17. package/lib/clang/{14.0.0 → 15.0.2}/include/bmiintrin.h +6 -2
  18. package/lib/clang/{14.0.0 → 15.0.2}/include/cetintrin.h +12 -6
  19. package/lib/clang/{14.0.0 → 15.0.2}/include/cpuid.h +1 -0
  20. package/lib/clang/{14.0.0 → 15.0.2}/include/emmintrin.h +549 -769
  21. package/lib/clang/{14.0.0 → 15.0.2}/include/f16cintrin.h +3 -3
  22. package/lib/clang/15.0.2/include/hlsl/hlsl_basic_types.h +64 -0
  23. package/lib/clang/15.0.2/include/hlsl/hlsl_intrinsics.h +15 -0
  24. package/lib/clang/15.0.2/include/hlsl.h +15 -0
  25. package/lib/clang/{14.0.0 → 15.0.2}/include/hresetintrin.h +2 -2
  26. package/lib/clang/{14.0.0 → 15.0.2}/include/ia32intrin.h +11 -11
  27. package/lib/clang/{14.0.0 → 15.0.2}/include/immintrin.h +15 -15
  28. package/lib/clang/{14.0.0 → 15.0.2}/include/intrin.h +12 -21
  29. package/lib/clang/{14.0.0 → 15.0.2}/include/keylockerintrin.h +22 -22
  30. package/lib/clang/{14.0.0 → 15.0.2}/include/mm_malloc.h +3 -3
  31. package/lib/clang/{14.0.0 → 15.0.2}/include/opencl-c-base.h +10 -0
  32. package/lib/clang/{14.0.0 → 15.0.2}/include/opencl-c.h +6794 -7020
  33. package/lib/clang/{14.0.0 → 15.0.2}/include/pmmintrin.h +1 -1
  34. package/lib/clang/15.0.2/include/ppc_wrappers/bmi2intrin.h +134 -0
  35. package/lib/clang/15.0.2/include/ppc_wrappers/bmiintrin.h +165 -0
  36. package/lib/clang/15.0.2/include/ppc_wrappers/emmintrin.h +2268 -0
  37. package/lib/clang/15.0.2/include/ppc_wrappers/immintrin.h +27 -0
  38. package/lib/clang/{14.0.0 → 15.0.2}/include/ppc_wrappers/mm_malloc.h +12 -17
  39. package/lib/clang/{14.0.0 → 15.0.2}/include/ppc_wrappers/mmintrin.h +389 -387
  40. package/lib/clang/15.0.2/include/ppc_wrappers/pmmintrin.h +145 -0
  41. package/lib/clang/15.0.2/include/ppc_wrappers/smmintrin.h +663 -0
  42. package/lib/clang/15.0.2/include/ppc_wrappers/tmmintrin.h +453 -0
  43. package/lib/clang/{14.0.0/include/stdnoreturn.h → 15.0.2/include/ppc_wrappers/x86gprintrin.h} +7 -6
  44. package/lib/clang/15.0.2/include/ppc_wrappers/x86intrin.h +28 -0
  45. package/lib/clang/15.0.2/include/ppc_wrappers/xmmintrin.h +1827 -0
  46. package/lib/clang/15.0.2/include/rdpruintrin.h +57 -0
  47. package/lib/clang/{14.0.0 → 15.0.2}/include/rdseedintrin.h +3 -3
  48. package/lib/clang/15.0.2/include/riscv_vector.h +202 -0
  49. package/lib/clang/{14.0.0 → 15.0.2}/include/rtmintrin.h +1 -1
  50. package/lib/clang/{14.0.0 → 15.0.2}/include/smmintrin.h +234 -257
  51. package/lib/clang/{14.0.0 → 15.0.2}/include/stdatomic.h +2 -5
  52. package/lib/clang/{14.0.0 → 15.0.2}/include/stdbool.h +9 -6
  53. package/lib/clang/{14.0.0 → 15.0.2}/include/stddef.h +1 -1
  54. package/lib/clang/15.0.2/include/stdnoreturn.h +29 -0
  55. package/lib/clang/{14.0.0 → 15.0.2}/include/uintrintrin.h +8 -8
  56. package/lib/clang/{14.0.0 → 15.0.2}/include/unwind.h +8 -5
  57. package/lib/clang/15.0.2/include/velintrin.h +71 -0
  58. package/lib/clang/15.0.2/include/velintrin_approx.h +120 -0
  59. package/lib/clang/15.0.2/include/velintrin_gen.h +1257 -0
  60. package/lib/clang/{14.0.0 → 15.0.2}/include/wasm_simd128.h +2 -2
  61. package/lib/clang/{14.0.0 → 15.0.2}/include/x86gprintrin.h +23 -5
  62. package/lib/clang/{14.0.0 → 15.0.2}/include/x86intrin.h +4 -0
  63. package/lib/clang/{14.0.0 → 15.0.2}/include/xmmintrin.h +9 -3
  64. package/package.json +6 -6
  65. package/lib/clang/14.0.0/include/ppc_wrappers/emmintrin.h +0 -2325
  66. package/lib/clang/14.0.0/include/ppc_wrappers/pmmintrin.h +0 -151
  67. package/lib/clang/14.0.0/include/ppc_wrappers/smmintrin.h +0 -110
  68. package/lib/clang/14.0.0/include/ppc_wrappers/tmmintrin.h +0 -496
  69. package/lib/clang/14.0.0/include/ppc_wrappers/xmmintrin.h +0 -1844
  70. package/lib/clang/14.0.0/include/riscv_vector.h +0 -95423
  71. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_builtin_vars.h +0 -0
  72. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_cmath.h +0 -0
  73. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_complex_builtins.h +0 -0
  74. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_device_functions.h +0 -0
  75. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_libdevice_declares.h +0 -0
  76. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_math.h +0 -0
  77. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_math_forward_declares.h +0 -0
  78. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_runtime_wrapper.h +0 -0
  79. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_cuda_texture_intrinsics.h +0 -0
  80. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_hip_cmath.h +0 -0
  81. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_hip_libdevice_declares.h +0 -0
  82. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_hip_math.h +0 -0
  83. package/lib/clang/{14.0.0 → 15.0.2}/include/__clang_hip_runtime_wrapper.h +0 -0
  84. package/lib/clang/{14.0.0 → 15.0.2}/include/__stddef_max_align_t.h +0 -0
  85. package/lib/clang/{14.0.0 → 15.0.2}/include/__wmmintrin_aes.h +0 -0
  86. package/lib/clang/{14.0.0 → 15.0.2}/include/adxintrin.h +0 -0
  87. package/lib/clang/{14.0.0 → 15.0.2}/include/ammintrin.h +0 -0
  88. package/lib/clang/{14.0.0 → 15.0.2}/include/arm64intr.h +0 -0
  89. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_acle.h +0 -0
  90. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_bf16.h +0 -0
  91. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_cde.h +0 -0
  92. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_cmse.h +0 -0
  93. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_fp16.h +89 -89
  94. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_mve.h +0 -0
  95. package/lib/clang/{14.0.0 → 15.0.2}/include/arm_neon.h +3999 -3999
  96. /package/lib/clang/{14.0.0 → 15.0.2}/include/arm_neon_sve_bridge.h +0 -0
  97. /package/lib/clang/{14.0.0 → 15.0.2}/include/armintr.h +0 -0
  98. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512bf16intrin.h +0 -0
  99. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512bitalgintrin.h +0 -0
  100. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512cdintrin.h +0 -0
  101. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512dqintrin.h +0 -0
  102. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512erintrin.h +0 -0
  103. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512fp16intrin.h +0 -0
  104. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512ifmaintrin.h +0 -0
  105. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512ifmavlintrin.h +0 -0
  106. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512pfintrin.h +0 -0
  107. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vbmi2intrin.h +0 -0
  108. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vbmiintrin.h +0 -0
  109. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vbmivlintrin.h +0 -0
  110. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlbitalgintrin.h +0 -0
  111. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlcdintrin.h +0 -0
  112. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vldqintrin.h +0 -0
  113. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlfp16intrin.h +0 -0
  114. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlvbmi2intrin.h +0 -0
  115. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vlvp2intersectintrin.h +0 -0
  116. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vnniintrin.h +0 -0
  117. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vp2intersectintrin.h +0 -0
  118. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vpopcntdqintrin.h +0 -0
  119. /package/lib/clang/{14.0.0 → 15.0.2}/include/avx512vpopcntdqvlintrin.h +0 -0
  120. /package/lib/clang/{14.0.0 → 15.0.2}/include/bmi2intrin.h +0 -0
  121. /package/lib/clang/{14.0.0 → 15.0.2}/include/builtins.h +0 -0
  122. /package/lib/clang/{14.0.0 → 15.0.2}/include/cet.h +0 -0
  123. /package/lib/clang/{14.0.0 → 15.0.2}/include/cldemoteintrin.h +0 -0
  124. /package/lib/clang/{14.0.0 → 15.0.2}/include/clflushoptintrin.h +0 -0
  125. /package/lib/clang/{14.0.0 → 15.0.2}/include/clwbintrin.h +0 -0
  126. /package/lib/clang/{14.0.0 → 15.0.2}/include/clzerointrin.h +0 -0
  127. /package/lib/clang/{14.0.0 → 15.0.2}/include/crc32intrin.h +0 -0
  128. /package/lib/clang/{14.0.0 → 15.0.2}/include/cuda_wrappers/algorithm +0 -0
  129. /package/lib/clang/{14.0.0 → 15.0.2}/include/cuda_wrappers/complex +0 -0
  130. /package/lib/clang/{14.0.0 → 15.0.2}/include/cuda_wrappers/new +0 -0
  131. /package/lib/clang/{14.0.0 → 15.0.2}/include/enqcmdintrin.h +0 -0
  132. /package/lib/clang/{14.0.0 → 15.0.2}/include/float.h +0 -0
  133. /package/lib/clang/{14.0.0 → 15.0.2}/include/fma4intrin.h +0 -0
  134. /package/lib/clang/{14.0.0 → 15.0.2}/include/fmaintrin.h +0 -0
  135. /package/lib/clang/{14.0.0 → 15.0.2}/include/fxsrintrin.h +0 -0
  136. /package/lib/clang/{14.0.0 → 15.0.2}/include/gfniintrin.h +0 -0
  137. /package/lib/clang/{14.0.0 → 15.0.2}/include/hexagon_circ_brev_intrinsics.h +0 -0
  138. /package/lib/clang/{14.0.0 → 15.0.2}/include/hexagon_protos.h +0 -0
  139. /package/lib/clang/{14.0.0 → 15.0.2}/include/hexagon_types.h +0 -0
  140. /package/lib/clang/{14.0.0 → 15.0.2}/include/htmintrin.h +0 -0
  141. /package/lib/clang/{14.0.0 → 15.0.2}/include/htmxlintrin.h +0 -0
  142. /package/lib/clang/{14.0.0 → 15.0.2}/include/hvx_hexagon_protos.h +0 -0
  143. /package/lib/clang/{14.0.0 → 15.0.2}/include/inttypes.h +0 -0
  144. /package/lib/clang/{14.0.0 → 15.0.2}/include/invpcidintrin.h +0 -0
  145. /package/lib/clang/{14.0.0 → 15.0.2}/include/iso646.h +0 -0
  146. /package/lib/clang/{14.0.0 → 15.0.2}/include/limits.h +0 -0
  147. /package/lib/clang/{14.0.0 → 15.0.2}/include/lwpintrin.h +0 -0
  148. /package/lib/clang/{14.0.0 → 15.0.2}/include/lzcntintrin.h +0 -0
  149. /package/lib/clang/{14.0.0 → 15.0.2}/include/mm3dnow.h +0 -0
  150. /package/lib/clang/{14.0.0 → 15.0.2}/include/mmintrin.h +0 -0
  151. /package/lib/clang/{14.0.0 → 15.0.2}/include/module.modulemap +0 -0
  152. /package/lib/clang/{14.0.0 → 15.0.2}/include/movdirintrin.h +0 -0
  153. /package/lib/clang/{14.0.0 → 15.0.2}/include/msa.h +0 -0
  154. /package/lib/clang/{14.0.0 → 15.0.2}/include/mwaitxintrin.h +0 -0
  155. /package/lib/clang/{14.0.0 → 15.0.2}/include/nmmintrin.h +0 -0
  156. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  157. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/cmath +0 -0
  158. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/complex +0 -0
  159. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/complex.h +0 -0
  160. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/complex_cmath.h +0 -0
  161. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/math.h +0 -0
  162. /package/lib/clang/{14.0.0 → 15.0.2}/include/openmp_wrappers/new +0 -0
  163. /package/lib/clang/{14.0.0 → 15.0.2}/include/pconfigintrin.h +0 -0
  164. /package/lib/clang/{14.0.0 → 15.0.2}/include/pkuintrin.h +0 -0
  165. /package/lib/clang/{14.0.0 → 15.0.2}/include/popcntintrin.h +0 -0
  166. /package/lib/clang/{14.0.0 → 15.0.2}/include/prfchwintrin.h +0 -0
  167. /package/lib/clang/{14.0.0 → 15.0.2}/include/ptwriteintrin.h +0 -0
  168. /package/lib/clang/{14.0.0 → 15.0.2}/include/s390intrin.h +0 -0
  169. /package/lib/clang/{14.0.0 → 15.0.2}/include/serializeintrin.h +0 -0
  170. /package/lib/clang/{14.0.0 → 15.0.2}/include/sgxintrin.h +0 -0
  171. /package/lib/clang/{14.0.0 → 15.0.2}/include/shaintrin.h +0 -0
  172. /package/lib/clang/{14.0.0 → 15.0.2}/include/stdalign.h +0 -0
  173. /package/lib/clang/{14.0.0 → 15.0.2}/include/stdarg.h +0 -0
  174. /package/lib/clang/{14.0.0 → 15.0.2}/include/stdint.h +0 -0
  175. /package/lib/clang/{14.0.0 → 15.0.2}/include/tbmintrin.h +0 -0
  176. /package/lib/clang/{14.0.0 → 15.0.2}/include/tgmath.h +0 -0
  177. /package/lib/clang/{14.0.0 → 15.0.2}/include/tmmintrin.h +0 -0
  178. /package/lib/clang/{14.0.0 → 15.0.2}/include/tsxldtrkintrin.h +0 -0
  179. /package/lib/clang/{14.0.0 → 15.0.2}/include/vadefs.h +0 -0
  180. /package/lib/clang/{14.0.0 → 15.0.2}/include/vaesintrin.h +0 -0
  181. /package/lib/clang/{14.0.0 → 15.0.2}/include/varargs.h +0 -0
  182. /package/lib/clang/{14.0.0 → 15.0.2}/include/vecintrin.h +0 -0
  183. /package/lib/clang/{14.0.0 → 15.0.2}/include/vpclmulqdqintrin.h +0 -0
  184. /package/lib/clang/{14.0.0 → 15.0.2}/include/waitpkgintrin.h +0 -0
  185. /package/lib/clang/{14.0.0 → 15.0.2}/include/wbnoinvdintrin.h +0 -0
  186. /package/lib/clang/{14.0.0 → 15.0.2}/include/wmmintrin.h +0 -0
  187. /package/lib/clang/{14.0.0 → 15.0.2}/include/xopintrin.h +0 -0
  188. /package/lib/clang/{14.0.0 → 15.0.2}/include/xsavecintrin.h +0 -0
  189. /package/lib/clang/{14.0.0 → 15.0.2}/include/xsaveintrin.h +0 -0
  190. /package/lib/clang/{14.0.0 → 15.0.2}/include/xsaveoptintrin.h +0 -0
  191. /package/lib/clang/{14.0.0 → 15.0.2}/include/xsavesintrin.h +0 -0
  192. /package/lib/clang/{14.0.0 → 15.0.2}/include/xtestintrin.h +0 -0
@@ -17,7 +17,8 @@
17
17
  * explicitly disallows `stdatomic.h` in the C mode via an `#error`. Fallback
18
18
  * to the clang resource header until that is fully supported.
19
19
  */
20
- #if __STDC_HOSTED__ && __has_include_next(<stdatomic.h>) && !defined(_MSC_VER)
20
+ #if __STDC_HOSTED__ && \
21
+ __has_include_next(<stdatomic.h>) && !(defined(_MSC_VER) && !defined(__cplusplus))
21
22
  # include_next <stdatomic.h>
22
23
  #else
23
24
 
@@ -158,10 +159,6 @@ typedef _Atomic(uintmax_t) atomic_uintmax_t;
158
159
  typedef struct atomic_flag { atomic_bool _Value; } atomic_flag;
159
160
 
160
161
  #define ATOMIC_FLAG_INIT { 0 }
161
- #if __cplusplus >= 202002L && !defined(_CLANG_DISABLE_CRT_DEPRECATION_WARNINGS)
162
- /* ATOMIC_FLAG_INIT was deprecated in C++20 but is not deprecated in C. */
163
- #pragma clang deprecated(ATOMIC_FLAG_INIT)
164
- #endif
165
162
 
166
163
  /* These should be provided by the libc implementation. */
167
164
  #ifdef __cplusplus
@@ -10,8 +10,13 @@
10
10
  #ifndef __STDBOOL_H
11
11
  #define __STDBOOL_H
12
12
 
13
- /* Don't define bool, true, and false in C++, except as a GNU extension. */
14
- #ifndef __cplusplus
13
+ #define __bool_true_false_are_defined 1
14
+
15
+ #if __STDC_VERSION__ > 201710L
16
+ /* FIXME: We should be issuing a deprecation warning here, but cannot yet due
17
+ * to system headers which include this header file unconditionally.
18
+ */
19
+ #elif !defined(__cplusplus)
15
20
  #define bool _Bool
16
21
  #define true 1
17
22
  #define false 0
@@ -20,12 +25,10 @@
20
25
  #define _Bool bool
21
26
  #if __cplusplus < 201103L
22
27
  /* For C++98, define bool, false, true as a GNU extension. */
23
- #define bool bool
28
+ #define bool bool
24
29
  #define false false
25
- #define true true
30
+ #define true true
26
31
  #endif
27
32
  #endif
28
33
 
29
- #define __bool_true_false_are_defined 1
30
-
31
34
  #endif /* __STDBOOL_H */
@@ -62,7 +62,7 @@ typedef __SIZE_TYPE__ rsize_t;
62
62
  #endif /* defined(__need_STDDEF_H_misc) */
63
63
 
64
64
  #if defined(__need_wchar_t)
65
- #ifndef __cplusplus
65
+ #if !defined(__cplusplus) || (defined(_MSC_VER) && !_NATIVE_WCHAR_T_DEFINED)
66
66
  /* Always define wchar_t when modules are available. */
67
67
  #if !defined(_WCHAR_T) || __has_feature(modules)
68
68
  #if !__has_feature(modules)
@@ -0,0 +1,29 @@
1
+ /*===---- stdnoreturn.h - Standard header for noreturn macro ---------------===
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 __STDNORETURN_H
11
+ #define __STDNORETURN_H
12
+
13
+ #define noreturn _Noreturn
14
+ #define __noreturn_is_defined 1
15
+
16
+ #if __STDC_VERSION__ > 201710L && \
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
20
+ issue a confusing diagnostic for code which includes <stdnoreturn.h>
21
+ followed by code that writes [[noreturn]]. The issue with such code is not
22
+ with the attribute, or the use of 'noreturn', but the inclusion of the
23
+ header. */
24
+ /* FIXME: We should be issuing a deprecation warning here, but cannot yet due
25
+ * to system headers which include this header file unconditionally.
26
+ */
27
+ #endif
28
+
29
+ #endif /* __STDNORETURN_H */
@@ -39,9 +39,9 @@ struct __uintr_frame
39
39
  ///
40
40
  /// This intrinsic corresponds to the <c> CLUI </c> instruction.
41
41
  ///
42
- /// \operation
42
+ /// \code{.operation}
43
43
  /// UIF := 0
44
- /// \endoperation
44
+ /// \endcode
45
45
  static __inline__ void __DEFAULT_FN_ATTRS
46
46
  _clui (void)
47
47
  {
@@ -60,9 +60,9 @@ _clui (void)
60
60
  ///
61
61
  /// This intrinsic corresponds to the <c> STUI </c> instruction.
62
62
  ///
63
- /// \operation
63
+ /// \code{.operation}
64
64
  /// UIF := 1
65
- /// \endoperation
65
+ /// \endcode
66
66
  static __inline__ void __DEFAULT_FN_ATTRS
67
67
  _stui (void)
68
68
  {
@@ -81,7 +81,7 @@ _stui (void)
81
81
  ///
82
82
  /// \returns The current value of the user interrupt flag (UIF).
83
83
  ///
84
- /// \operation
84
+ /// \code{.operation}
85
85
  /// CF := UIF
86
86
  /// ZF := 0
87
87
  /// AF := 0
@@ -89,7 +89,7 @@ _stui (void)
89
89
  /// PF := 0
90
90
  /// SF := 0
91
91
  /// dst := CF
92
- /// \endoperation
92
+ /// \endcode
93
93
  static __inline__ unsigned char __DEFAULT_FN_ATTRS
94
94
  _testui (void)
95
95
  {
@@ -110,7 +110,7 @@ _testui (void)
110
110
  /// Index of user-interrupt target table entry in user-interrupt target
111
111
  /// table.
112
112
  ///
113
- /// \operation
113
+ /// \code{.operation}
114
114
  /// IF __a > UITTSZ
115
115
  /// GP (0)
116
116
  /// FI
@@ -143,7 +143,7 @@ _testui (void)
143
143
  /// SendOrdinaryIPI(tempUPID.NV, tempUPID.NDST[15:8])
144
144
  /// FI
145
145
  /// FI
146
- /// \endoperation
146
+ /// \endcode
147
147
  static __inline__ void __DEFAULT_FN_ATTRS
148
148
  _senduipi (unsigned long long __a)
149
149
  {
@@ -62,7 +62,8 @@ typedef intptr_t _sleb128_t;
62
62
  typedef uintptr_t _uleb128_t;
63
63
 
64
64
  struct _Unwind_Context;
65
- #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH__))
65
+ #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || \
66
+ defined(__ARM_DWARF_EH__) || defined(__SEH__))
66
67
  struct _Unwind_Control_Block;
67
68
  typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
68
69
  #else
@@ -72,7 +73,7 @@ typedef struct _Unwind_Exception _Unwind_Exception;
72
73
  typedef enum {
73
74
  _URC_NO_REASON = 0,
74
75
  #if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
75
- !defined(__ARM_DWARF_EH__)
76
+ !defined(__ARM_DWARF_EH__) && !defined(__SEH__)
76
77
  _URC_OK = 0, /* used by ARM EHABI */
77
78
  #endif
78
79
  _URC_FOREIGN_EXCEPTION_CAUGHT = 1,
@@ -86,7 +87,7 @@ typedef enum {
86
87
  _URC_INSTALL_CONTEXT = 7,
87
88
  _URC_CONTINUE_UNWIND = 8,
88
89
  #if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
89
- !defined(__ARM_DWARF_EH__)
90
+ !defined(__ARM_DWARF_EH__) && !defined(__SEH__)
90
91
  _URC_FAILURE = 9 /* used by ARM EHABI */
91
92
  #endif
92
93
  } _Unwind_Reason_Code;
@@ -103,7 +104,8 @@ typedef enum {
103
104
  typedef void (*_Unwind_Exception_Cleanup_Fn)(_Unwind_Reason_Code,
104
105
  _Unwind_Exception *);
105
106
 
106
- #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH__))
107
+ #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || \
108
+ defined(__ARM_DWARF_EH__) || defined(__SEH__))
107
109
  typedef struct _Unwind_Control_Block _Unwind_Control_Block;
108
110
  typedef uint32_t _Unwind_EHT_Header;
109
111
 
@@ -167,7 +169,8 @@ typedef _Unwind_Personality_Fn __personality_routine;
167
169
  typedef _Unwind_Reason_Code (*_Unwind_Trace_Fn)(struct _Unwind_Context *,
168
170
  void *);
169
171
 
170
- #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH__))
172
+ #if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || \
173
+ defined(__ARM_DWARF_EH__) || defined(__SEH__))
171
174
  typedef enum {
172
175
  _UVRSC_CORE = 0, /* integer register */
173
176
  _UVRSC_VFP = 1, /* vfp */
@@ -0,0 +1,71 @@
1
+ /*===---- velintrin.h - VEL intrinsics for VE ------------------------------===
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 __VEL_INTRIN_H__
10
+ #define __VEL_INTRIN_H__
11
+
12
+ // Vector registers
13
+ typedef double __vr __attribute__((__vector_size__(2048)));
14
+
15
+ // Vector mask registers
16
+ #if __STDC_VERSION__ >= 199901L
17
+ // For C99
18
+ typedef _Bool __vm __attribute__((ext_vector_type(256)));
19
+ typedef _Bool __vm256 __attribute__((ext_vector_type(256)));
20
+ typedef _Bool __vm512 __attribute__((ext_vector_type(512)));
21
+ #else
22
+ #ifdef __cplusplus
23
+ // For C++
24
+ typedef bool __vm __attribute__((ext_vector_type(256)));
25
+ typedef bool __vm256 __attribute__((ext_vector_type(256)));
26
+ typedef bool __vm512 __attribute__((ext_vector_type(512)));
27
+ #else
28
+ #error need C++ or C99 to use vector intrinsics for VE
29
+ #endif
30
+ #endif
31
+
32
+ enum VShuffleCodes {
33
+ VE_VSHUFFLE_YUYU = 0,
34
+ VE_VSHUFFLE_YUYL = 1,
35
+ VE_VSHUFFLE_YUZU = 2,
36
+ VE_VSHUFFLE_YUZL = 3,
37
+ VE_VSHUFFLE_YLYU = 4,
38
+ VE_VSHUFFLE_YLYL = 5,
39
+ VE_VSHUFFLE_YLZU = 6,
40
+ VE_VSHUFFLE_YLZL = 7,
41
+ VE_VSHUFFLE_ZUYU = 8,
42
+ VE_VSHUFFLE_ZUYL = 9,
43
+ VE_VSHUFFLE_ZUZU = 10,
44
+ VE_VSHUFFLE_ZUZL = 11,
45
+ VE_VSHUFFLE_ZLYU = 12,
46
+ VE_VSHUFFLE_ZLYL = 13,
47
+ VE_VSHUFFLE_ZLZU = 14,
48
+ VE_VSHUFFLE_ZLZL = 15,
49
+ };
50
+
51
+ // Use generated intrinsic name definitions
52
+ #include <velintrin_gen.h>
53
+
54
+ // Use helper functions
55
+ #include <velintrin_approx.h>
56
+
57
+ // pack
58
+
59
+ #define _vel_pack_f32p __builtin_ve_vl_pack_f32p
60
+ #define _vel_pack_f32a __builtin_ve_vl_pack_f32a
61
+
62
+ static inline unsigned long int _vel_pack_i32(unsigned int a, unsigned int b) {
63
+ return (((unsigned long int)a) << 32) | b;
64
+ }
65
+
66
+ #define _vel_extract_vm512u(vm) __builtin_ve_vl_extract_vm512u(vm)
67
+ #define _vel_extract_vm512l(vm) __builtin_ve_vl_extract_vm512l(vm)
68
+ #define _vel_insert_vm512u(vm512, vm) __builtin_ve_vl_insert_vm512u(vm512, vm)
69
+ #define _vel_insert_vm512l(vm512, vm) __builtin_ve_vl_insert_vm512l(vm512, vm)
70
+
71
+ #endif
@@ -0,0 +1,120 @@
1
+ /*===---- velintrin_approx.h - VEL intrinsics helper for VE ----------------===
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 __VEL_INTRIN_APPROX_H__
10
+ #define __VEL_INTRIN_APPROX_H__
11
+
12
+ static inline __vr _vel_approx_vfdivs_vvvl(__vr v0, __vr v1, int l) {
13
+ float s0;
14
+ __vr v2, v3, v4, v5;
15
+ v5 = _vel_vrcps_vvl(v1, l);
16
+ s0 = 1.0;
17
+ v4 = _vel_vfnmsbs_vsvvl(s0, v1, v5, l);
18
+ v3 = _vel_vfmads_vvvvl(v5, v5, v4, l);
19
+ v2 = _vel_vfmuls_vvvl(v0, v3, l);
20
+ v4 = _vel_vfnmsbs_vvvvl(v0, v2, v1, l);
21
+ v2 = _vel_vfmads_vvvvl(v2, v5, v4, l);
22
+ v0 = _vel_vfnmsbs_vvvvl(v0, v2, v1, l);
23
+ v0 = _vel_vfmads_vvvvl(v2, v3, v0, l);
24
+ return v0;
25
+ }
26
+
27
+ static inline __vr _vel_approx_pvfdiv_vvvl(__vr v0, __vr v1, int l) {
28
+ float s0;
29
+ __vr v2, v3, v4, v5;
30
+ v5 = _vel_pvrcp_vvl(v1, l);
31
+ s0 = 1.0;
32
+ v4 = _vel_pvfnmsb_vsvvl(s0, v1, v5, l);
33
+ v3 = _vel_pvfmad_vvvvl(v5, v5, v4, l);
34
+ v2 = _vel_pvfmul_vvvl(v0, v3, l);
35
+ v4 = _vel_pvfnmsb_vvvvl(v0, v2, v1, l);
36
+ v2 = _vel_pvfmad_vvvvl(v2, v5, v4, l);
37
+ v0 = _vel_pvfnmsb_vvvvl(v0, v2, v1, l);
38
+ v0 = _vel_pvfmad_vvvvl(v2, v3, v0, l);
39
+ return v0;
40
+ }
41
+
42
+ static inline __vr _vel_approx_vfdivs_vsvl(float s0, __vr v0, int l) {
43
+ float s1;
44
+ __vr v1, v2, v3, v4;
45
+ v4 = _vel_vrcps_vvl(v0, l);
46
+ s1 = 1.0;
47
+ v2 = _vel_vfnmsbs_vsvvl(s1, v0, v4, l);
48
+ v2 = _vel_vfmads_vvvvl(v4, v4, v2, l);
49
+ v1 = _vel_vfmuls_vsvl(s0, v2, l);
50
+ v3 = _vel_vfnmsbs_vsvvl(s0, v1, v0, l);
51
+ v1 = _vel_vfmads_vvvvl(v1, v4, v3, l);
52
+ v3 = _vel_vfnmsbs_vsvvl(s0, v1, v0, l);
53
+ v0 = _vel_vfmads_vvvvl(v1, v2, v3, l);
54
+ return v0;
55
+ }
56
+
57
+ static inline __vr _vel_approx_vfdivs_vvsl(__vr v0, float s0, int l) {
58
+ float s1;
59
+ __vr v1, v2;
60
+ s1 = 1.0f / s0;
61
+ v1 = _vel_vfmuls_vsvl(s1, v0, l);
62
+ v2 = _vel_vfnmsbs_vvsvl(v0, s0, v1, l);
63
+ v0 = _vel_vfmads_vvsvl(v1, s1, v2, l);
64
+ return v0;
65
+ }
66
+
67
+ static inline __vr _vel_approx_vfdivd_vsvl(double s0, __vr v0, int l) {
68
+ __vr v1, v2, v3;
69
+ v2 = _vel_vrcpd_vvl(v0, l);
70
+ double s1 = 1.0;
71
+ v3 = _vel_vfnmsbd_vsvvl(s1, v0, v2, l);
72
+ v2 = _vel_vfmadd_vvvvl(v2, v2, v3, l);
73
+ v1 = _vel_vfnmsbd_vsvvl(s1, v0, v2, l);
74
+ v1 = _vel_vfmadd_vvvvl(v2, v2, v1, l);
75
+ v1 = _vel_vaddul_vsvl(1, v1, l);
76
+ v3 = _vel_vfnmsbd_vsvvl(s1, v0, v1, l);
77
+ v3 = _vel_vfmadd_vvvvl(v1, v1, v3, l);
78
+ v1 = _vel_vfmuld_vsvl(s0, v3, l);
79
+ v0 = _vel_vfnmsbd_vsvvl(s0, v1, v0, l);
80
+ v0 = _vel_vfmadd_vvvvl(v1, v3, v0, l);
81
+ return v0;
82
+ }
83
+
84
+ static inline __vr _vel_approx_vfsqrtd_vvl(__vr v0, int l) {
85
+ double s0, s1;
86
+ __vr v1, v2, v3;
87
+ v2 = _vel_vrsqrtdnex_vvl(v0, l);
88
+ v1 = _vel_vfmuld_vvvl(v0, v2, l);
89
+ s0 = 1.0;
90
+ s1 = 0.5;
91
+ v3 = _vel_vfnmsbd_vsvvl(s0, v1, v2, l);
92
+ v3 = _vel_vfmuld_vsvl(s1, v3, l);
93
+ v2 = _vel_vfmadd_vvvvl(v2, v2, v3, l);
94
+ v1 = _vel_vfmuld_vvvl(v0, v2, l);
95
+ v3 = _vel_vfnmsbd_vsvvl(s0, v1, v2, l);
96
+ v3 = _vel_vfmuld_vsvl(s1, v3, l);
97
+ v0 = _vel_vfmadd_vvvvl(v1, v1, v3, l);
98
+ return v0;
99
+ }
100
+
101
+ static inline __vr _vel_approx_vfsqrts_vvl(__vr v0, int l) {
102
+ float s0, s1;
103
+ __vr v1, v2, v3;
104
+ v0 = _vel_vcvtds_vvl(v0, l);
105
+ v2 = _vel_vrsqrtdnex_vvl(v0, l);
106
+ v1 = _vel_vfmuld_vvvl(v0, v2, l);
107
+ s0 = 1.0;
108
+ s1 = 0.5;
109
+ v3 = _vel_vfnmsbd_vsvvl(s0, v1, v2, l);
110
+ v3 = _vel_vfmuld_vsvl(s1, v3, l);
111
+ v2 = _vel_vfmadd_vvvvl(v2, v2, v3, l);
112
+ v1 = _vel_vfmuld_vvvl(v0, v2, l);
113
+ v3 = _vel_vfnmsbd_vsvvl(s0, v1, v2, l);
114
+ v3 = _vel_vfmuld_vsvl(s1, v3, l);
115
+ v0 = _vel_vfmadd_vvvvl(v1, v1, v3, l);
116
+ v0 = _vel_vcvtsd_vvl(v0, l);
117
+ return v0;
118
+ }
119
+
120
+ #endif