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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/23/include/__clang_cuda_complex_builtins.h +236 -0
  4. package/lib/clang/{19 → 23}/include/__clang_cuda_device_functions.h +15 -1
  5. package/lib/clang/{19 → 23}/include/__clang_cuda_intrinsics.h +288 -20
  6. package/lib/clang/{19 → 23}/include/__clang_cuda_math.h +5 -0
  7. package/lib/clang/{19 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
  8. package/lib/clang/{19 → 23}/include/__clang_cuda_runtime_wrapper.h +28 -5
  9. package/lib/clang/{19 → 23}/include/__clang_cuda_texture_intrinsics.h +437 -2
  10. package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
  11. package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
  12. package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
  13. package/lib/clang/{19 → 23}/include/__clang_hip_cmath.h +15 -9
  14. package/lib/clang/{19 → 23}/include/__clang_hip_libdevice_declares.h +24 -139
  15. package/lib/clang/{19 → 23}/include/__clang_hip_math.h +115 -34
  16. package/lib/clang/{19 → 23}/include/__clang_hip_runtime_wrapper.h +12 -1
  17. package/lib/clang/23/include/__clang_spirv_builtins.h +217 -0
  18. package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
  19. package/lib/clang/23/include/__clang_spirv_math.h +719 -0
  20. package/lib/clang/{19/include/float.h → 23/include/__float_float.h} +14 -34
  21. package/lib/clang/23/include/__float_header_macro.h +12 -0
  22. package/lib/clang/23/include/__float_infinity_nan.h +20 -0
  23. package/lib/clang/{19 → 23}/include/__stdarg_va_arg.h +2 -2
  24. package/lib/clang/{19 → 23}/include/adcintrin.h +5 -0
  25. package/lib/clang/{19 → 23}/include/adxintrin.h +5 -0
  26. package/lib/clang/{19 → 23}/include/altivec.h +169 -96
  27. package/lib/clang/23/include/amdgpuintrin.h +164 -0
  28. package/lib/clang/23/include/amdhsa_abi.h +83 -0
  29. package/lib/clang/23/include/amo.h +220 -0
  30. package/lib/clang/23/include/amxavx512intrin.h +596 -0
  31. package/lib/clang/{19 → 23}/include/amxcomplexintrin.h +4 -6
  32. package/lib/clang/{19 → 23}/include/amxfp16intrin.h +35 -0
  33. package/lib/clang/23/include/amxfp8intrin.h +230 -0
  34. package/lib/clang/{19 → 23}/include/amxintrin.h +3 -35
  35. package/lib/clang/23/include/amxmovrsintrin.h +48 -0
  36. package/lib/clang/23/include/andes_vector.h +21 -0
  37. package/lib/clang/23/include/arm64_neon.h +21 -0
  38. package/lib/clang/{19 → 23}/include/arm64intr.h +10 -0
  39. package/lib/clang/{19 → 23}/include/arm_acle.h +67 -89
  40. package/lib/clang/{19 → 23}/include/arm_fp16.h +89 -89
  41. package/lib/clang/{19 → 23}/include/arm_neon.h +43614 -38901
  42. package/lib/clang/{19 → 23}/include/arm_sme.h +1028 -94
  43. package/lib/clang/{19 → 23}/include/arm_sve.h +7331 -5170
  44. package/lib/clang/{19 → 23}/include/arm_vector_types.h +87 -0
  45. package/lib/clang/23/include/avx10_2_512bf16intrin.h +568 -0
  46. package/lib/clang/23/include/avx10_2_512convertintrin.h +322 -0
  47. package/lib/clang/23/include/avx10_2_512minmaxintrin.h +127 -0
  48. package/lib/clang/23/include/avx10_2_512niintrin.h +314 -0
  49. package/lib/clang/23/include/avx10_2_512satcvtdsintrin.h +307 -0
  50. package/lib/clang/23/include/avx10_2_512satcvtintrin.h +301 -0
  51. package/lib/clang/23/include/avx10_2bf16intrin.h +1094 -0
  52. package/lib/clang/23/include/avx10_2convertintrin.h +3257 -0
  53. package/lib/clang/23/include/avx10_2copyintrin.h +66 -0
  54. package/lib/clang/23/include/avx10_2minmaxintrin.h +232 -0
  55. package/lib/clang/23/include/avx10_2niintrin.h +409 -0
  56. package/lib/clang/23/include/avx10_2satcvtdsintrin.h +376 -0
  57. package/lib/clang/23/include/avx10_2satcvtintrin.h +312 -0
  58. package/lib/clang/{19 → 23}/include/avx2intrin.h +284 -378
  59. package/lib/clang/{19 → 23}/include/avx512bf16intrin.h +25 -16
  60. package/lib/clang/{19 → 23}/include/avx512bitalgintrin.h +21 -32
  61. package/lib/clang/23/include/avx512bmmintrin.h +174 -0
  62. package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
  63. package/lib/clang/{19 → 23}/include/avx512bwintrin.h +405 -534
  64. package/lib/clang/23/include/avx512cdintrin.h +112 -0
  65. package/lib/clang/{19 → 23}/include/avx512dqintrin.h +132 -161
  66. package/lib/clang/{19 → 23}/include/avx512fintrin.h +1068 -1496
  67. package/lib/clang/{19 → 23}/include/avx512fp16intrin.h +126 -129
  68. package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
  69. package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
  70. package/lib/clang/{19 → 23}/include/avx512vbmi2intrin.h +55 -48
  71. package/lib/clang/{19 → 23}/include/avx512vbmiintrin.h +19 -27
  72. package/lib/clang/{19 → 23}/include/avx512vbmivlintrin.h +35 -49
  73. package/lib/clang/{19 → 23}/include/avx512vlbf16intrin.h +32 -22
  74. package/lib/clang/{19 → 23}/include/avx512vlbitalgintrin.h +41 -57
  75. package/lib/clang/{19 → 23}/include/avx512vlbwintrin.h +494 -609
  76. package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
  77. package/lib/clang/{19 → 23}/include/avx512vldqintrin.h +110 -127
  78. package/lib/clang/{19 → 23}/include/avx512vlfp16intrin.h +130 -111
  79. package/lib/clang/{19 → 23}/include/avx512vlintrin.h +1025 -1395
  80. package/lib/clang/{19 → 23}/include/avx512vlvbmi2intrin.h +102 -95
  81. package/lib/clang/{19 → 23}/include/avx512vlvnniintrin.h +50 -52
  82. package/lib/clang/{19 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
  83. package/lib/clang/{19 → 23}/include/avx512vnniintrin.h +42 -45
  84. package/lib/clang/{19 → 23}/include/avx512vp2intersectintrin.h +2 -3
  85. package/lib/clang/{19 → 23}/include/avx512vpopcntdqintrin.h +10 -4
  86. package/lib/clang/{19 → 23}/include/avx512vpopcntdqvlintrin.h +20 -10
  87. package/lib/clang/{19 → 23}/include/avxifmaintrin.h +16 -0
  88. package/lib/clang/{19 → 23}/include/avxintrin.h +186 -248
  89. package/lib/clang/{19 → 23}/include/avxvnniint16intrin.h +130 -152
  90. package/lib/clang/{19 → 23}/include/avxvnniint8intrin.h +68 -85
  91. package/lib/clang/{19 → 23}/include/avxvnniintrin.h +39 -26
  92. package/lib/clang/{19 → 23}/include/bmi2intrin.h +15 -17
  93. package/lib/clang/{19 → 23}/include/bmiintrin.h +31 -41
  94. package/lib/clang/{19 → 23}/include/cmpccxaddintrin.h +1 -1
  95. package/lib/clang/{19 → 23}/include/cpuid.h +137 -37
  96. package/lib/clang/{19 → 23}/include/crc32intrin.h +10 -8
  97. package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
  98. package/lib/clang/23/include/cuda_wrappers/bits/c++config.h +61 -0
  99. package/lib/clang/23/include/cuda_wrappers/cmath +44 -0
  100. package/lib/clang/{19 → 23}/include/cuda_wrappers/new +2 -0
  101. package/lib/clang/{19 → 23}/include/emmintrin.h +306 -272
  102. package/lib/clang/23/include/endian.h +91 -0
  103. package/lib/clang/{19 → 23}/include/f16cintrin.h +23 -9
  104. package/lib/clang/23/include/float.h +48 -0
  105. package/lib/clang/23/include/fma4intrin.h +220 -0
  106. package/lib/clang/{19 → 23}/include/fmaintrin.h +96 -66
  107. package/lib/clang/{19 → 23}/include/gfniintrin.h +39 -12
  108. package/lib/clang/23/include/gpuintrin.h +348 -0
  109. package/lib/clang/{19 → 23}/include/hexagon_types.h +31 -24
  110. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
  111. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics_gen.inc +3869 -0
  112. package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
  113. package/lib/clang/23/include/hlsl/hlsl_compat_overloads.h +559 -0
  114. package/lib/clang/23/include/hlsl/hlsl_detail.h +56 -0
  115. package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
  116. package/lib/clang/23/include/hlsl/hlsl_intrinsic_helpers.h +170 -0
  117. package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
  118. package/lib/clang/23/include/hlsl/hlsl_spirv.h +28 -0
  119. package/lib/clang/23/include/hlsl.h +38 -0
  120. package/lib/clang/{19 → 23}/include/hvx_hexagon_protos.h +1041 -803
  121. package/lib/clang/{19 → 23}/include/immintrin.h +35 -185
  122. package/lib/clang/{19 → 23}/include/intrin.h +62 -21
  123. package/lib/clang/{19 → 23}/include/intrin0.h +10 -1
  124. package/lib/clang/{19 → 23}/include/keylockerintrin.h +0 -9
  125. package/lib/clang/{19 → 23}/include/larchintrin.h +24 -8
  126. package/lib/clang/{19 → 23}/include/lasxintrin.h +140 -25
  127. package/lib/clang/{19 → 23}/include/limits.h +7 -4
  128. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
  129. package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
  130. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
  131. package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
  132. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/stdlib.h +3 -16
  133. package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
  134. package/lib/clang/{19 → 23}/include/llvm_libc_wrappers/time.h +4 -10
  135. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
  136. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
  137. package/lib/clang/23/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
  138. package/lib/clang/{19 → 23}/include/lsxintrin.h +27 -25
  139. package/lib/clang/{19 → 23}/include/lzcntintrin.h +13 -8
  140. package/lib/clang/{19 → 23}/include/mmintrin.h +241 -256
  141. package/lib/clang/{19 → 23}/include/module.modulemap +54 -9
  142. package/lib/clang/23/include/movrs_avx10_2_512intrin.h +98 -0
  143. package/lib/clang/23/include/movrs_avx10_2intrin.h +174 -0
  144. package/lib/clang/23/include/movrsintrin.h +59 -0
  145. package/lib/clang/23/include/nvptxintrin.h +208 -0
  146. package/lib/clang/{19 → 23}/include/opencl-c-base.h +28 -92
  147. package/lib/clang/{19 → 23}/include/opencl-c.h +506 -140
  148. package/lib/clang/{19 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +18 -5
  149. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex +7 -1
  150. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex.h +6 -0
  151. package/lib/clang/{19 → 23}/include/openmp_wrappers/complex_cmath.h +7 -2
  152. package/lib/clang/{19 → 23}/include/openmp_wrappers/math.h +10 -0
  153. package/lib/clang/{19 → 23}/include/pmmintrin.h +24 -23
  154. package/lib/clang/{19 → 23}/include/popcntintrin.h +7 -7
  155. package/lib/clang/{19 → 23}/include/prfchwintrin.h +10 -13
  156. package/lib/clang/{19 → 23}/include/ptrauth.h +169 -14
  157. package/lib/clang/{19 → 23}/include/riscv_bitmanip.h +7 -0
  158. package/lib/clang/23/include/riscv_corev_alu.h +130 -0
  159. package/lib/clang/{19 → 23}/include/riscv_crypto.h +8 -0
  160. package/lib/clang/23/include/riscv_mips.h +36 -0
  161. package/lib/clang/23/include/riscv_nds.h +92 -0
  162. package/lib/clang/{19 → 23}/include/riscv_ntlh.h +2 -0
  163. package/lib/clang/23/include/riscv_packed_simd.h +644 -0
  164. package/lib/clang/{19 → 23}/include/riscv_vector.h +43 -5
  165. package/lib/clang/{19 → 23}/include/shaintrin.h +3 -2
  166. package/lib/clang/{19 → 23}/include/sifive_vector.h +76 -2
  167. package/lib/clang/23/include/sm4evexintrin.h +32 -0
  168. package/lib/clang/{19 → 23}/include/smmintrin.h +80 -56
  169. package/lib/clang/23/include/spirvintrin.h +167 -0
  170. package/lib/clang/{19 → 23}/include/stdalign.h +0 -5
  171. package/lib/clang/23/include/stdcountof.h +15 -0
  172. package/lib/clang/23/include/stddefer.h +19 -0
  173. package/lib/clang/{19 → 23}/include/stdint.h +23 -143
  174. package/lib/clang/{19 → 23}/include/tbmintrin.h +25 -37
  175. package/lib/clang/{19 → 23}/include/tmmintrin.h +125 -130
  176. package/lib/clang/{19 → 23}/include/vaesintrin.h +1 -2
  177. package/lib/clang/{19 → 23}/include/vecintrin.h +1783 -60
  178. package/lib/clang/{19 → 23}/include/wasm_simd128.h +184 -21
  179. package/lib/clang/{19 → 23}/include/x86gprintrin.h +0 -14
  180. package/lib/clang/{19 → 23}/include/x86intrin.h +0 -18
  181. package/lib/clang/{19 → 23}/include/xmmintrin.h +190 -221
  182. package/lib/clang/{19 → 23}/include/xopintrin.h +20 -10
  183. package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
  184. package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
  185. package/lib/clang/23/include/zos_wrappers/math.h +31 -0
  186. package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
  187. package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
  188. package/lib/clang/23/include/zos_wrappers/string.h +19 -0
  189. package/lib/clang/23/include/zos_wrappers/time.h +19 -0
  190. package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
  191. package/package.json +6 -6
  192. package/lib/clang/19/include/__clang_cuda_complex_builtins.h +0 -285
  193. package/lib/clang/19/include/avx512cdintrin.h +0 -125
  194. package/lib/clang/19/include/avx512ifmaintrin.h +0 -70
  195. package/lib/clang/19/include/avx512ifmavlintrin.h +0 -111
  196. package/lib/clang/19/include/avx512vlcdintrin.h +0 -230
  197. package/lib/clang/19/include/cuda_wrappers/cmath +0 -90
  198. package/lib/clang/19/include/fma4intrin.h +0 -218
  199. package/lib/clang/19/include/hlsl/hlsl_basic_types.h +0 -74
  200. package/lib/clang/19/include/hlsl/hlsl_intrinsics.h +0 -1697
  201. package/lib/clang/19/include/hlsl.h +0 -15
  202. package/lib/clang/19/include/llvm_libc_wrappers/ctype.h +0 -102
  203. package/lib/clang/19/include/llvm_libc_wrappers/stdio.h +0 -80
  204. package/lib/clang/19/include/llvm_libc_wrappers/string.h +0 -96
  205. /package/lib/clang/{19 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
  206. /package/lib/clang/{19 → 23}/include/__clang_cuda_cmath.h +0 -0
  207. /package/lib/clang/{19 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
  208. /package/lib/clang/{19 → 23}/include/__clang_hip_stdlib.h +0 -0
  209. /package/lib/clang/{19 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
  210. /package/lib/clang/{19 → 23}/include/__stdarg___va_copy.h +0 -0
  211. /package/lib/clang/{19 → 23}/include/__stdarg_header_macro.h +0 -0
  212. /package/lib/clang/{19 → 23}/include/__stdarg_va_copy.h +0 -0
  213. /package/lib/clang/{19 → 23}/include/__stdarg_va_list.h +0 -0
  214. /package/lib/clang/{19 → 23}/include/__stddef_header_macro.h +0 -0
  215. /package/lib/clang/{19 → 23}/include/__stddef_max_align_t.h +0 -0
  216. /package/lib/clang/{19 → 23}/include/__stddef_null.h +0 -0
  217. /package/lib/clang/{19 → 23}/include/__stddef_nullptr_t.h +0 -0
  218. /package/lib/clang/{19 → 23}/include/__stddef_offsetof.h +0 -0
  219. /package/lib/clang/{19 → 23}/include/__stddef_ptrdiff_t.h +0 -0
  220. /package/lib/clang/{19 → 23}/include/__stddef_rsize_t.h +0 -0
  221. /package/lib/clang/{19 → 23}/include/__stddef_size_t.h +0 -0
  222. /package/lib/clang/{19 → 23}/include/__stddef_unreachable.h +0 -0
  223. /package/lib/clang/{19 → 23}/include/__stddef_wchar_t.h +0 -0
  224. /package/lib/clang/{19 → 23}/include/__stddef_wint_t.h +0 -0
  225. /package/lib/clang/{19 → 23}/include/__wmmintrin_aes.h +0 -0
  226. /package/lib/clang/{19 → 23}/include/__wmmintrin_pclmul.h +0 -0
  227. /package/lib/clang/{19 → 23}/include/ammintrin.h +0 -0
  228. /package/lib/clang/{19 → 23}/include/arm_bf16.h +0 -0
  229. /package/lib/clang/{19 → 23}/include/arm_cde.h +0 -0
  230. /package/lib/clang/{19 → 23}/include/arm_cmse.h +0 -0
  231. /package/lib/clang/{19 → 23}/include/arm_mve.h +0 -0
  232. /package/lib/clang/{19 → 23}/include/arm_neon_sve_bridge.h +0 -0
  233. /package/lib/clang/{19 → 23}/include/armintr.h +0 -0
  234. /package/lib/clang/{19 → 23}/include/avxneconvertintrin.h +0 -0
  235. /package/lib/clang/{19 → 23}/include/builtins.h +0 -0
  236. /package/lib/clang/{19 → 23}/include/cet.h +0 -0
  237. /package/lib/clang/{19 → 23}/include/cetintrin.h +0 -0
  238. /package/lib/clang/{19 → 23}/include/cldemoteintrin.h +0 -0
  239. /package/lib/clang/{19 → 23}/include/clflushoptintrin.h +0 -0
  240. /package/lib/clang/{19 → 23}/include/clwbintrin.h +0 -0
  241. /package/lib/clang/{19 → 23}/include/clzerointrin.h +0 -0
  242. /package/lib/clang/{19 → 23}/include/cuda_wrappers/algorithm +0 -0
  243. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
  244. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  245. /package/lib/clang/{19 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  246. /package/lib/clang/{19 → 23}/include/cuda_wrappers/complex +0 -0
  247. /package/lib/clang/{19 → 23}/include/enqcmdintrin.h +0 -0
  248. /package/lib/clang/{19 → 23}/include/fxsrintrin.h +0 -0
  249. /package/lib/clang/{19 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
  250. /package/lib/clang/{19 → 23}/include/hexagon_protos.h +0 -0
  251. /package/lib/clang/{19 → 23}/include/hresetintrin.h +0 -0
  252. /package/lib/clang/{19 → 23}/include/htmintrin.h +0 -0
  253. /package/lib/clang/{19 → 23}/include/htmxlintrin.h +0 -0
  254. /package/lib/clang/{19 → 23}/include/ia32intrin.h +0 -0
  255. /package/lib/clang/{19 → 23}/include/inttypes.h +0 -0
  256. /package/lib/clang/{19 → 23}/include/invpcidintrin.h +0 -0
  257. /package/lib/clang/{19 → 23}/include/iso646.h +0 -0
  258. /package/lib/clang/{19 → 23}/include/lwpintrin.h +0 -0
  259. /package/lib/clang/{19 → 23}/include/mm3dnow.h +0 -0
  260. /package/lib/clang/{19 → 23}/include/mm_malloc.h +0 -0
  261. /package/lib/clang/{19 → 23}/include/movdirintrin.h +0 -0
  262. /package/lib/clang/{19 → 23}/include/msa.h +0 -0
  263. /package/lib/clang/{19 → 23}/include/mwaitxintrin.h +0 -0
  264. /package/lib/clang/{19 → 23}/include/nmmintrin.h +0 -0
  265. /package/lib/clang/{19 → 23}/include/openmp_wrappers/cmath +0 -0
  266. /package/lib/clang/{19 → 23}/include/openmp_wrappers/new +0 -0
  267. /package/lib/clang/{19 → 23}/include/pconfigintrin.h +0 -0
  268. /package/lib/clang/{19 → 23}/include/pkuintrin.h +0 -0
  269. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
  270. /package/lib/clang/{19 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
  271. /package/lib/clang/{19 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
  272. /package/lib/clang/{19 → 23}/include/ppc_wrappers/immintrin.h +0 -0
  273. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
  274. /package/lib/clang/{19 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
  275. /package/lib/clang/{19 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
  276. /package/lib/clang/{19 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
  277. /package/lib/clang/{19 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
  278. /package/lib/clang/{19 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
  279. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
  280. /package/lib/clang/{19 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
  281. /package/lib/clang/{19 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
  282. /package/lib/clang/{19 → 23}/include/prfchiintrin.h +0 -0
  283. /package/lib/clang/{19 → 23}/include/ptwriteintrin.h +0 -0
  284. /package/lib/clang/{19 → 23}/include/raointintrin.h +0 -0
  285. /package/lib/clang/{19 → 23}/include/rdpruintrin.h +0 -0
  286. /package/lib/clang/{19 → 23}/include/rdseedintrin.h +0 -0
  287. /package/lib/clang/{19 → 23}/include/rtmintrin.h +0 -0
  288. /package/lib/clang/{19 → 23}/include/s390intrin.h +0 -0
  289. /package/lib/clang/{19 → 23}/include/serializeintrin.h +0 -0
  290. /package/lib/clang/{19 → 23}/include/sgxintrin.h +0 -0
  291. /package/lib/clang/{19 → 23}/include/sha512intrin.h +0 -0
  292. /package/lib/clang/{19 → 23}/include/sm3intrin.h +0 -0
  293. /package/lib/clang/{19 → 23}/include/sm4intrin.h +0 -0
  294. /package/lib/clang/{19 → 23}/include/stdarg.h +0 -0
  295. /package/lib/clang/{19 → 23}/include/stdatomic.h +0 -0
  296. /package/lib/clang/{19 → 23}/include/stdbool.h +0 -0
  297. /package/lib/clang/{19 → 23}/include/stdckdint.h +0 -0
  298. /package/lib/clang/{19 → 23}/include/stddef.h +0 -0
  299. /package/lib/clang/{19 → 23}/include/stdnoreturn.h +0 -0
  300. /package/lib/clang/{19 → 23}/include/tgmath.h +0 -0
  301. /package/lib/clang/{19 → 23}/include/tsxldtrkintrin.h +0 -0
  302. /package/lib/clang/{19 → 23}/include/uintrintrin.h +0 -0
  303. /package/lib/clang/{19 → 23}/include/unwind.h +0 -0
  304. /package/lib/clang/{19 → 23}/include/usermsrintrin.h +0 -0
  305. /package/lib/clang/{19 → 23}/include/vadefs.h +0 -0
  306. /package/lib/clang/{19 → 23}/include/varargs.h +0 -0
  307. /package/lib/clang/{19 → 23}/include/velintrin.h +0 -0
  308. /package/lib/clang/{19 → 23}/include/velintrin_approx.h +0 -0
  309. /package/lib/clang/{19 → 23}/include/velintrin_gen.h +0 -0
  310. /package/lib/clang/{19 → 23}/include/vpclmulqdqintrin.h +0 -0
  311. /package/lib/clang/{19 → 23}/include/waitpkgintrin.h +0 -0
  312. /package/lib/clang/{19 → 23}/include/wbnoinvdintrin.h +0 -0
  313. /package/lib/clang/{19 → 23}/include/wmmintrin.h +0 -0
  314. /package/lib/clang/{19 → 23}/include/xsavecintrin.h +0 -0
  315. /package/lib/clang/{19 → 23}/include/xsaveintrin.h +0 -0
  316. /package/lib/clang/{19 → 23}/include/xsaveoptintrin.h +0 -0
  317. /package/lib/clang/{19 → 23}/include/xsavesintrin.h +0 -0
  318. /package/lib/clang/{19 → 23}/include/xtestintrin.h +0 -0
  319. /package/lib/clang/{19 → 23}/include/yvals_core.h +0 -0
  320. /package/lib/clang/{19 → 23}/include/zos_wrappers/builtins.h +0 -0
@@ -395,7 +395,12 @@ template <class _Tp> struct __numeric_type {
395
395
  // No support for long double, use double instead.
396
396
  static double __test(long double);
397
397
 
398
- typedef decltype(__test(declval<_Tp>())) type;
398
+ template <typename _U>
399
+ static auto __test_impl(int) -> decltype(__test(declval<_U>()));
400
+
401
+ template <typename _U> static void __test_impl(...);
402
+
403
+ typedef decltype(__test_impl<_Tp>(0)) type;
399
404
  static const bool value = !is_same<type, void>::value;
400
405
  };
401
406
 
@@ -443,7 +448,7 @@ class __promote : public __promote_imp<_A1, _A2, _A3> {};
443
448
  } // namespace __hip
444
449
 
445
450
  // __HIP_OVERLOAD1 is used to resolve function calls with integer argument to
446
- // avoid compilation error due to ambibuity. e.g. floor(5) is resolved with
451
+ // avoid compilation error due to ambiguity. e.g. floor(5) is resolved with
447
452
  // floor(double).
448
453
  #define __HIP_OVERLOAD1(__retty, __fn) \
449
454
  template <typename __T> \
@@ -454,17 +459,18 @@ class __promote : public __promote_imp<_A1, _A2, _A3> {};
454
459
  }
455
460
 
456
461
  // __HIP_OVERLOAD2 is used to resolve function calls with mixed float/double
457
- // or integer argument to avoid compilation error due to ambibuity. e.g.
462
+ // or integer argument to avoid compilation error due to ambiguity. e.g.
458
463
  // max(5.0f, 6.0) is resolved with max(double, double).
459
464
  #if __cplusplus >= 201103L
460
465
  #define __HIP_OVERLOAD2(__retty, __fn) \
461
466
  template <typename __T1, typename __T2> \
462
- __DEVICE__ __CONSTEXPR__ typename __hip_enable_if< \
463
- __hip::is_arithmetic<__T1>::value && __hip::is_arithmetic<__T2>::value, \
464
- typename __hip::__promote<__T1, __T2>::type>::type \
465
- __fn(__T1 __x, __T2 __y) { \
466
- typedef typename __hip::__promote<__T1, __T2>::type __result_type; \
467
- return __fn((__result_type)__x, (__result_type)__y); \
467
+ __DEVICE__ __CONSTEXPR__ \
468
+ typename __hip_enable_if<__hip::is_arithmetic<__T1>::value && \
469
+ __hip::is_arithmetic<__T2>::value, \
470
+ __retty>::type \
471
+ __fn(__T1 __x, __T2 __y) { \
472
+ typedef typename __hip::__promote<__T1, __T2>::type __arg_type; \
473
+ return __fn((__arg_type)__x, (__arg_type)__y); \
468
474
  }
469
475
  #else
470
476
  #define __HIP_OVERLOAD2(__retty, __fn) \
@@ -14,6 +14,8 @@
14
14
  #include "hip/hip_version.h"
15
15
  #endif // __has_include("hip/hip_version.h")
16
16
 
17
+ #define __PRIVATE_AS __attribute__((opencl_private))
18
+
17
19
  #ifdef __cplusplus
18
20
  extern "C" {
19
21
  #endif
@@ -27,9 +29,6 @@ __device__ __attribute__((const)) float __ocml_atan2_f32(float, float);
27
29
  __device__ __attribute__((const)) float __ocml_atan_f32(float);
28
30
  __device__ __attribute__((pure)) float __ocml_atanh_f32(float);
29
31
  __device__ __attribute__((pure)) float __ocml_cbrt_f32(float);
30
- __device__ __attribute__((const)) float __ocml_ceil_f32(float);
31
- __device__ __attribute__((const)) __device__ float __ocml_copysign_f32(float,
32
- float);
33
32
  __device__ float __ocml_cos_f32(float);
34
33
  __device__ float __ocml_native_cos_f32(float);
35
34
  __device__ __attribute__((pure)) __device__ float __ocml_cosh_f32(float);
@@ -41,42 +40,17 @@ __device__ __attribute__((pure)) float __ocml_erfcinv_f32(float);
41
40
  __device__ __attribute__((pure)) float __ocml_erfcx_f32(float);
42
41
  __device__ __attribute__((pure)) float __ocml_erf_f32(float);
43
42
  __device__ __attribute__((pure)) float __ocml_erfinv_f32(float);
44
- __device__ __attribute__((pure)) float __ocml_exp10_f32(float);
45
- __device__ __attribute__((pure)) float __ocml_native_exp10_f32(float);
46
- __device__ __attribute__((pure)) float __ocml_exp2_f32(float);
47
- __device__ __attribute__((pure)) float __ocml_exp_f32(float);
48
- __device__ __attribute__((pure)) float __ocml_native_exp_f32(float);
49
43
  __device__ __attribute__((pure)) float __ocml_expm1_f32(float);
50
- __device__ __attribute__((const)) float __ocml_fabs_f32(float);
51
44
  __device__ __attribute__((const)) float __ocml_fdim_f32(float, float);
52
- __device__ __attribute__((const)) float __ocml_floor_f32(float);
53
- __device__ __attribute__((const)) float __ocml_fma_f32(float, float, float);
54
- __device__ __attribute__((const)) float __ocml_fmax_f32(float, float);
55
- __device__ __attribute__((const)) float __ocml_fmin_f32(float, float);
56
45
  __device__ __attribute__((const)) __device__ float __ocml_fmod_f32(float,
57
46
  float);
58
- __device__ float __ocml_frexp_f32(float,
59
- __attribute__((address_space(5))) int *);
60
47
  __device__ __attribute__((const)) float __ocml_hypot_f32(float, float);
61
48
  __device__ __attribute__((const)) int __ocml_ilogb_f32(float);
62
- __device__ __attribute__((const)) int __ocml_isfinite_f32(float);
63
- __device__ __attribute__((const)) int __ocml_isinf_f32(float);
64
- __device__ __attribute__((const)) int __ocml_isnan_f32(float);
65
49
  __device__ float __ocml_j0_f32(float);
66
50
  __device__ float __ocml_j1_f32(float);
67
- __device__ __attribute__((const)) float __ocml_ldexp_f32(float, int);
68
51
  __device__ float __ocml_lgamma_f32(float);
69
- __device__ __attribute__((pure)) float __ocml_log10_f32(float);
70
- __device__ __attribute__((pure)) float __ocml_native_log10_f32(float);
71
52
  __device__ __attribute__((pure)) float __ocml_log1p_f32(float);
72
- __device__ __attribute__((pure)) float __ocml_log2_f32(float);
73
- __device__ __attribute__((pure)) float __ocml_native_log2_f32(float);
74
- __device__ __attribute__((const)) float __ocml_logb_f32(float);
75
- __device__ __attribute__((pure)) float __ocml_log_f32(float);
76
- __device__ __attribute__((pure)) float __ocml_native_log_f32(float);
77
- __device__ float __ocml_modf_f32(float,
78
- __attribute__((address_space(5))) float *);
79
- __device__ __attribute__((const)) float __ocml_nearbyint_f32(float);
53
+ __device__ float __ocml_modf_f32(float, __PRIVATE_AS float *);
80
54
  __device__ __attribute__((const)) float __ocml_nextafter_f32(float, float);
81
55
  __device__ __attribute__((const)) float __ocml_len3_f32(float, float, float);
82
56
  __device__ __attribute__((const)) float __ocml_len4_f32(float, float, float,
@@ -87,22 +61,14 @@ __device__ __attribute__((pure)) float __ocml_pow_f32(float, float);
87
61
  __device__ __attribute__((pure)) float __ocml_pown_f32(float, int);
88
62
  __device__ __attribute__((pure)) float __ocml_rcbrt_f32(float);
89
63
  __device__ __attribute__((const)) float __ocml_remainder_f32(float, float);
90
- __device__ float __ocml_remquo_f32(float, float,
91
- __attribute__((address_space(5))) int *);
64
+ __device__ float __ocml_remquo_f32(float, float, __PRIVATE_AS int *);
92
65
  __device__ __attribute__((const)) float __ocml_rhypot_f32(float, float);
93
- __device__ __attribute__((const)) float __ocml_rint_f32(float);
94
66
  __device__ __attribute__((const)) float __ocml_rlen3_f32(float, float, float);
95
67
  __device__ __attribute__((const)) float __ocml_rlen4_f32(float, float, float,
96
68
  float);
97
- __device__ __attribute__((const)) float __ocml_round_f32(float);
98
69
  __device__ __attribute__((pure)) float __ocml_rsqrt_f32(float);
99
- __device__ __attribute__((const)) float __ocml_scalb_f32(float, float);
100
- __device__ __attribute__((const)) float __ocml_scalbn_f32(float, int);
101
- __device__ __attribute__((const)) int __ocml_signbit_f32(float);
102
- __device__ float __ocml_sincos_f32(float,
103
- __attribute__((address_space(5))) float *);
104
- __device__ float __ocml_sincospi_f32(float,
105
- __attribute__((address_space(5))) float *);
70
+ __device__ float __ocml_sincos_f32(float, __PRIVATE_AS float *);
71
+ __device__ float __ocml_sincospi_f32(float, __PRIVATE_AS float *);
106
72
  __device__ float __ocml_sin_f32(float);
107
73
  __device__ float __ocml_native_sin_f32(float);
108
74
  __device__ __attribute__((pure)) float __ocml_sinh_f32(float);
@@ -112,7 +78,6 @@ __device__ __attribute__((const)) float __ocml_native_sqrt_f32(float);
112
78
  __device__ float __ocml_tan_f32(float);
113
79
  __device__ __attribute__((pure)) float __ocml_tanh_f32(float);
114
80
  __device__ float __ocml_tgamma_f32(float);
115
- __device__ __attribute__((const)) float __ocml_trunc_f32(float);
116
81
  __device__ float __ocml_y0_f32(float);
117
82
  __device__ float __ocml_y1_f32(float);
118
83
 
@@ -153,8 +118,6 @@ __device__ __attribute__((const)) double __ocml_atan2_f64(double, double);
153
118
  __device__ __attribute__((const)) double __ocml_atan_f64(double);
154
119
  __device__ __attribute__((pure)) double __ocml_atanh_f64(double);
155
120
  __device__ __attribute__((pure)) double __ocml_cbrt_f64(double);
156
- __device__ __attribute__((const)) double __ocml_ceil_f64(double);
157
- __device__ __attribute__((const)) double __ocml_copysign_f64(double, double);
158
121
  __device__ double __ocml_cos_f64(double);
159
122
  __device__ __attribute__((pure)) double __ocml_cosh_f64(double);
160
123
  __device__ double __ocml_cospi_f64(double);
@@ -169,32 +132,18 @@ __device__ __attribute__((pure)) double __ocml_exp10_f64(double);
169
132
  __device__ __attribute__((pure)) double __ocml_exp2_f64(double);
170
133
  __device__ __attribute__((pure)) double __ocml_exp_f64(double);
171
134
  __device__ __attribute__((pure)) double __ocml_expm1_f64(double);
172
- __device__ __attribute__((const)) double __ocml_fabs_f64(double);
173
135
  __device__ __attribute__((const)) double __ocml_fdim_f64(double, double);
174
- __device__ __attribute__((const)) double __ocml_floor_f64(double);
175
- __device__ __attribute__((const)) double __ocml_fma_f64(double, double, double);
176
- __device__ __attribute__((const)) double __ocml_fmax_f64(double, double);
177
- __device__ __attribute__((const)) double __ocml_fmin_f64(double, double);
178
136
  __device__ __attribute__((const)) double __ocml_fmod_f64(double, double);
179
- __device__ double __ocml_frexp_f64(double,
180
- __attribute__((address_space(5))) int *);
181
137
  __device__ __attribute__((const)) double __ocml_hypot_f64(double, double);
182
138
  __device__ __attribute__((const)) int __ocml_ilogb_f64(double);
183
- __device__ __attribute__((const)) int __ocml_isfinite_f64(double);
184
- __device__ __attribute__((const)) int __ocml_isinf_f64(double);
185
- __device__ __attribute__((const)) int __ocml_isnan_f64(double);
186
139
  __device__ double __ocml_j0_f64(double);
187
140
  __device__ double __ocml_j1_f64(double);
188
- __device__ __attribute__((const)) double __ocml_ldexp_f64(double, int);
189
141
  __device__ double __ocml_lgamma_f64(double);
190
142
  __device__ __attribute__((pure)) double __ocml_log10_f64(double);
191
143
  __device__ __attribute__((pure)) double __ocml_log1p_f64(double);
192
144
  __device__ __attribute__((pure)) double __ocml_log2_f64(double);
193
- __device__ __attribute__((const)) double __ocml_logb_f64(double);
194
145
  __device__ __attribute__((pure)) double __ocml_log_f64(double);
195
- __device__ double __ocml_modf_f64(double,
196
- __attribute__((address_space(5))) double *);
197
- __device__ __attribute__((const)) double __ocml_nearbyint_f64(double);
146
+ __device__ double __ocml_modf_f64(double, __PRIVATE_AS double *);
198
147
  __device__ __attribute__((const)) double __ocml_nextafter_f64(double, double);
199
148
  __device__ __attribute__((const)) double __ocml_len3_f64(double, double,
200
149
  double);
@@ -206,31 +155,21 @@ __device__ __attribute__((pure)) double __ocml_pow_f64(double, double);
206
155
  __device__ __attribute__((pure)) double __ocml_pown_f64(double, int);
207
156
  __device__ __attribute__((pure)) double __ocml_rcbrt_f64(double);
208
157
  __device__ __attribute__((const)) double __ocml_remainder_f64(double, double);
209
- __device__ double __ocml_remquo_f64(double, double,
210
- __attribute__((address_space(5))) int *);
158
+ __device__ double __ocml_remquo_f64(double, double, __PRIVATE_AS int *);
211
159
  __device__ __attribute__((const)) double __ocml_rhypot_f64(double, double);
212
- __device__ __attribute__((const)) double __ocml_rint_f64(double);
213
160
  __device__ __attribute__((const)) double __ocml_rlen3_f64(double, double,
214
161
  double);
215
162
  __device__ __attribute__((const)) double __ocml_rlen4_f64(double, double,
216
163
  double, double);
217
- __device__ __attribute__((const)) double __ocml_round_f64(double);
218
164
  __device__ __attribute__((pure)) double __ocml_rsqrt_f64(double);
219
- __device__ __attribute__((const)) double __ocml_scalb_f64(double, double);
220
- __device__ __attribute__((const)) double __ocml_scalbn_f64(double, int);
221
- __device__ __attribute__((const)) int __ocml_signbit_f64(double);
222
- __device__ double __ocml_sincos_f64(double,
223
- __attribute__((address_space(5))) double *);
224
- __device__ double
225
- __ocml_sincospi_f64(double, __attribute__((address_space(5))) double *);
165
+ __device__ double __ocml_sincos_f64(double, __PRIVATE_AS double *);
166
+ __device__ double __ocml_sincospi_f64(double, __PRIVATE_AS double *);
226
167
  __device__ double __ocml_sin_f64(double);
227
168
  __device__ __attribute__((pure)) double __ocml_sinh_f64(double);
228
169
  __device__ double __ocml_sinpi_f64(double);
229
- __device__ __attribute__((const)) double __ocml_sqrt_f64(double);
230
170
  __device__ double __ocml_tan_f64(double);
231
171
  __device__ __attribute__((pure)) double __ocml_tanh_f64(double);
232
172
  __device__ double __ocml_tgamma_f64(double);
233
- __device__ __attribute__((const)) double __ocml_trunc_f64(double);
234
173
  __device__ double __ocml_y0_f64(double);
235
174
  __device__ double __ocml_y1_f64(double);
236
175
 
@@ -264,88 +203,34 @@ __device__ __attribute__((const)) double __ocml_fma_rtp_f64(double, double,
264
203
  __device__ __attribute__((const)) double __ocml_fma_rtz_f64(double, double,
265
204
  double);
266
205
 
267
- __device__ __attribute__((const)) _Float16 __ocml_ceil_f16(_Float16);
268
206
  __device__ _Float16 __ocml_cos_f16(_Float16);
269
207
  __device__ __attribute__((const)) _Float16 __ocml_cvtrtn_f16_f32(float);
270
208
  __device__ __attribute__((const)) _Float16 __ocml_cvtrtp_f16_f32(float);
271
209
  __device__ __attribute__((const)) _Float16 __ocml_cvtrtz_f16_f32(float);
272
- __device__ __attribute__((pure)) _Float16 __ocml_exp_f16(_Float16);
273
- __device__ __attribute__((pure)) _Float16 __ocml_exp10_f16(_Float16);
274
- __device__ __attribute__((pure)) _Float16 __ocml_exp2_f16(_Float16);
275
- __device__ __attribute__((const)) _Float16 __ocml_floor_f16(_Float16);
276
- __device__ __attribute__((const)) _Float16 __ocml_fma_f16(_Float16, _Float16,
277
- _Float16);
278
- __device__ __attribute__((const)) _Float16 __ocml_fmax_f16(_Float16, _Float16);
279
- __device__ __attribute__((const)) _Float16 __ocml_fmin_f16(_Float16, _Float16);
280
- __device__ __attribute__((const)) _Float16 __ocml_fabs_f16(_Float16);
281
- __device__ __attribute__((const)) int __ocml_isinf_f16(_Float16);
282
- __device__ __attribute__((const)) int __ocml_isnan_f16(_Float16);
283
- __device__ __attribute__((pure)) _Float16 __ocml_log_f16(_Float16);
284
- __device__ __attribute__((pure)) _Float16 __ocml_log10_f16(_Float16);
285
- __device__ __attribute__((pure)) _Float16 __ocml_log2_f16(_Float16);
286
- __device__ __attribute__((const)) _Float16 __ocml_rint_f16(_Float16);
287
210
  __device__ __attribute__((const)) _Float16 __ocml_rsqrt_f16(_Float16);
288
211
  __device__ _Float16 __ocml_sin_f16(_Float16);
289
- __device__ __attribute__((const)) _Float16 __ocml_sqrt_f16(_Float16);
290
- __device__ __attribute__((const)) _Float16 __ocml_trunc_f16(_Float16);
291
212
  __device__ __attribute__((pure)) _Float16 __ocml_pown_f16(_Float16, int);
292
213
 
293
214
  typedef _Float16 __2f16 __attribute__((ext_vector_type(2)));
294
215
  typedef short __2i16 __attribute__((ext_vector_type(2)));
295
216
 
296
- // We need to match C99's bool and get an i1 in the IR.
297
- #ifdef __cplusplus
298
- typedef bool __ockl_bool;
299
- #else
300
- typedef _Bool __ockl_bool;
301
- #endif
302
-
303
- __device__ __attribute__((const)) float __ockl_fdot2(__2f16 a, __2f16 b,
304
- float c, __ockl_bool s);
305
- __device__ __attribute__((const)) __2f16 __ocml_ceil_2f16(__2f16);
306
- __device__ __attribute__((const)) __2f16 __ocml_fabs_2f16(__2f16);
307
- __device__ __2f16 __ocml_cos_2f16(__2f16);
308
- __device__ __attribute__((pure)) __2f16 __ocml_exp_2f16(__2f16);
309
- __device__ __attribute__((pure)) __2f16 __ocml_exp10_2f16(__2f16);
310
- __device__ __attribute__((pure)) __2f16 __ocml_exp2_2f16(__2f16);
311
- __device__ __attribute__((const)) __2f16 __ocml_floor_2f16(__2f16);
312
- __device__ __attribute__((const))
313
- __2f16 __ocml_fma_2f16(__2f16, __2f16, __2f16);
314
- __device__ __attribute__((const)) __2i16 __ocml_isinf_2f16(__2f16);
315
- __device__ __attribute__((const)) __2i16 __ocml_isnan_2f16(__2f16);
316
- __device__ __attribute__((pure)) __2f16 __ocml_log_2f16(__2f16);
317
- __device__ __attribute__((pure)) __2f16 __ocml_log10_2f16(__2f16);
318
- __device__ __attribute__((pure)) __2f16 __ocml_log2_2f16(__2f16);
319
-
320
- #if HIP_VERSION_MAJOR * 100 + HIP_VERSION_MINOR >= 560
321
- #define __DEPRECATED_SINCE_HIP_560(X) __attribute__((deprecated(X)))
217
+ __device__ void __asan_poison_memory_region(const void *addr,
218
+ __SIZE_TYPE__ size);
219
+ __device__ void __asan_unpoison_memory_region(const void *addr,
220
+ __SIZE_TYPE__ size);
221
+ __device__ int __asan_address_is_poisoned(const void *addr);
222
+ __device__ void *__asan_region_is_poisoned(void *beg, __SIZE_TYPE__ size);
223
+
224
+ #if __has_feature(address_sanitizer)
225
+ #define ASAN_POISON_MEMORY_REGION(addr, size) \
226
+ __asan_poison_memory_region((addr), (size))
227
+ #define ASAN_UNPOISON_MEMORY_REGION(addr, size) \
228
+ __asan_unpoison_memory_region((addr), (size))
322
229
  #else
323
- #define __DEPRECATED_SINCE_HIP_560(X)
230
+ #define ASAN_POISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
231
+ #define ASAN_UNPOISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
324
232
  #endif
325
233
 
326
- // Deprecated, should be removed when rocm releases using it are no longer
327
- // relevant.
328
- __DEPRECATED_SINCE_HIP_560("use ((_Float16)1.0) / ")
329
- __device__ inline _Float16 __llvm_amdgcn_rcp_f16(_Float16 x) {
330
- return ((_Float16)1.0f) / x;
331
- }
332
-
333
- __DEPRECATED_SINCE_HIP_560("use ((__2f16)1.0) / ")
334
- __device__ inline __2f16
335
- __llvm_amdgcn_rcp_2f16(__2f16 __x)
336
- {
337
- return ((__2f16)1.0f) / __x;
338
- }
339
-
340
- #undef __DEPRECATED_SINCE_HIP_560
341
-
342
- __device__ __attribute__((const)) __2f16 __ocml_rint_2f16(__2f16);
343
- __device__ __attribute__((const)) __2f16 __ocml_rsqrt_2f16(__2f16);
344
- __device__ __2f16 __ocml_sin_2f16(__2f16);
345
- __device__ __attribute__((const)) __2f16 __ocml_sqrt_2f16(__2f16);
346
- __device__ __attribute__((const)) __2f16 __ocml_trunc_2f16(__2f16);
347
- __device__ __attribute__((const)) __2f16 __ocml_pown_2f16(__2f16, __2i16);
348
-
349
234
  #ifdef __cplusplus
350
235
  } // extern "C"
351
236
  #endif
@@ -13,6 +13,10 @@
13
13
  #error "This file is for HIP and OpenMP AMDGCN device compilation only."
14
14
  #endif
15
15
 
16
+ // The __CLANG_GPU_DISABLE_MATH_WRAPPERS macro provides a way to let standard
17
+ // libcalls reach the link step instead of being eagerly replaced.
18
+ #ifndef __CLANG_GPU_DISABLE_MATH_WRAPPERS
19
+
16
20
  #if !defined(__HIPCC_RTC__)
17
21
  #include <limits.h>
18
22
  #include <stdint.h>
@@ -29,6 +33,9 @@
29
33
  #define __DEVICE__ static __device__ inline __attribute__((always_inline))
30
34
  #endif
31
35
 
36
+ #pragma push_macro("__PRIVATE_AS")
37
+
38
+ #define __PRIVATE_AS __attribute__((opencl_private))
32
39
  // Device library provides fast low precision and slow full-recision
33
40
  // implementations for some functions. Which one gets selected depends on
34
41
  // __CLANG_GPU_APPROX_TRANSCENDENTALS__ which gets defined by clang if
@@ -385,7 +392,7 @@ __DEVICE__
385
392
  float erfinvf(float __x) { return __ocml_erfinv_f32(__x); }
386
393
 
387
394
  __DEVICE__
388
- float exp10f(float __x) { return __ocml_exp10_f32(__x); }
395
+ float exp10f(float __x) { return __builtin_exp10f(__x); }
389
396
 
390
397
  __DEVICE__
391
398
  float exp2f(float __x) { return __builtin_exp2f(__x); }
@@ -488,13 +495,13 @@ __DEVICE__
488
495
  float log1pf(float __x) { return __ocml_log1p_f32(__x); }
489
496
 
490
497
  __DEVICE__
491
- float log2f(float __x) { return __FAST_OR_SLOW(__log2f, __ocml_log2_f32)(__x); }
498
+ float log2f(float __x) { return __FAST_OR_SLOW(__log2f, __builtin_log2f)(__x); }
492
499
 
493
500
  __DEVICE__
494
- float logbf(float __x) { return __ocml_logb_f32(__x); }
501
+ float logbf(float __x) { return __builtin_logbf(__x); }
495
502
 
496
503
  __DEVICE__
497
- float logf(float __x) { return __FAST_OR_SLOW(__logf, __ocml_log_f32)(__x); }
504
+ float logf(float __x) { return __FAST_OR_SLOW(__logf, __builtin_logf)(__x); }
498
505
 
499
506
  __DEVICE__
500
507
  long int lrintf(float __x) { return __builtin_rintf(__x); }
@@ -508,8 +515,7 @@ float modff(float __x, float *__iptr) {
508
515
  #ifdef __OPENMP_AMDGCN__
509
516
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
510
517
  #endif
511
- float __r =
512
- __ocml_modf_f32(__x, (__attribute__((address_space(5))) float *)&__tmp);
518
+ float __r = __ocml_modf_f32(__x, (__PRIVATE_AS float *)&__tmp);
513
519
  *__iptr = __tmp;
514
520
  return __r;
515
521
  }
@@ -591,8 +597,7 @@ float remquof(float __x, float __y, int *__quo) {
591
597
  #ifdef __OPENMP_AMDGCN__
592
598
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
593
599
  #endif
594
- float __r = __ocml_remquo_f32(
595
- __x, __y, (__attribute__((address_space(5))) int *)&__tmp);
600
+ float __r = __ocml_remquo_f32(__x, __y, (__PRIVATE_AS int *)&__tmp);
596
601
  *__quo = __tmp;
597
602
 
598
603
  return __r;
@@ -634,8 +639,11 @@ float rsqrtf(float __x) { return __ocml_rsqrt_f32(__x); }
634
639
 
635
640
  __DEVICE__
636
641
  float scalblnf(float __x, long int __n) {
637
- return (__n < INT_MAX) ? __builtin_amdgcn_ldexpf(__x, __n)
638
- : __ocml_scalb_f32(__x, __n);
642
+ if (__n > INT_MAX)
643
+ __n = INT_MAX;
644
+ else if (__n < INT_MIN)
645
+ __n = INT_MIN;
646
+ return __builtin_ldexpf(__x, (int)__n);
639
647
  }
640
648
 
641
649
  __DEVICE__
@@ -653,8 +661,7 @@ void sincosf(float __x, float *__sinptr, float *__cosptr) {
653
661
  #ifdef __CLANG_CUDA_APPROX_TRANSCENDENTALS__
654
662
  __sincosf(__x, __sinptr, __cosptr);
655
663
  #else
656
- *__sinptr =
657
- __ocml_sincos_f32(__x, (__attribute__((address_space(5))) float *)&__tmp);
664
+ *__sinptr = __ocml_sincos_f32(__x, (__PRIVATE_AS float *)&__tmp);
658
665
  *__cosptr = __tmp;
659
666
  #endif
660
667
  }
@@ -665,8 +672,7 @@ void sincospif(float __x, float *__sinptr, float *__cosptr) {
665
672
  #ifdef __OPENMP_AMDGCN__
666
673
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
667
674
  #endif
668
- *__sinptr = __ocml_sincospi_f32(
669
- __x, (__attribute__((address_space(5))) float *)&__tmp);
675
+ *__sinptr = __ocml_sincospi_f32(__x, (__PRIVATE_AS float *)&__tmp);
670
676
  *__cosptr = __tmp;
671
677
  }
672
678
 
@@ -789,13 +795,13 @@ __DEVICE__
789
795
  double erfinv(double __x) { return __ocml_erfinv_f64(__x); }
790
796
 
791
797
  __DEVICE__
792
- double exp(double __x) { return __ocml_exp_f64(__x); }
798
+ double exp(double __x) { return __builtin_exp(__x); }
793
799
 
794
800
  __DEVICE__
795
- double exp10(double __x) { return __ocml_exp10_f64(__x); }
801
+ double exp10(double __x) { return __builtin_exp10(__x); }
796
802
 
797
803
  __DEVICE__
798
- double exp2(double __x) { return __ocml_exp2_f64(__x); }
804
+ double exp2(double __x) { return __builtin_exp2(__x); }
799
805
 
800
806
  __DEVICE__
801
807
  double expm1(double __x) { return __ocml_expm1_f64(__x); }
@@ -895,7 +901,7 @@ __DEVICE__
895
901
  double log2(double __x) { return __ocml_log2_f64(__x); }
896
902
 
897
903
  __DEVICE__
898
- double logb(double __x) { return __ocml_logb_f64(__x); }
904
+ double logb(double __x) { return __builtin_logb(__x); }
899
905
 
900
906
  __DEVICE__
901
907
  long int lrint(double __x) { return __builtin_rint(__x); }
@@ -909,8 +915,7 @@ double modf(double __x, double *__iptr) {
909
915
  #ifdef __OPENMP_AMDGCN__
910
916
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
911
917
  #endif
912
- double __r =
913
- __ocml_modf_f64(__x, (__attribute__((address_space(5))) double *)&__tmp);
918
+ double __r = __ocml_modf_f64(__x, (__PRIVATE_AS double *)&__tmp);
914
919
  *__iptr = __tmp;
915
920
 
916
921
  return __r;
@@ -1000,8 +1005,7 @@ double remquo(double __x, double __y, int *__quo) {
1000
1005
  #ifdef __OPENMP_AMDGCN__
1001
1006
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
1002
1007
  #endif
1003
- double __r = __ocml_remquo_f64(
1004
- __x, __y, (__attribute__((address_space(5))) int *)&__tmp);
1008
+ double __r = __ocml_remquo_f64(__x, __y, (__PRIVATE_AS int *)&__tmp);
1005
1009
  *__quo = __tmp;
1006
1010
 
1007
1011
  return __r;
@@ -1043,8 +1047,11 @@ double rsqrt(double __x) { return __ocml_rsqrt_f64(__x); }
1043
1047
 
1044
1048
  __DEVICE__
1045
1049
  double scalbln(double __x, long int __n) {
1046
- return (__n < INT_MAX) ? __builtin_amdgcn_ldexp(__x, __n)
1047
- : __ocml_scalb_f64(__x, __n);
1050
+ if (__n > INT_MAX)
1051
+ __n = INT_MAX;
1052
+ else if (__n < INT_MIN)
1053
+ __n = INT_MIN;
1054
+ return __builtin_ldexp(__x, (int)__n);
1048
1055
  }
1049
1056
  __DEVICE__
1050
1057
  double scalbn(double __x, int __n) { return __builtin_amdgcn_ldexp(__x, __n); }
@@ -1061,8 +1068,7 @@ void sincos(double __x, double *__sinptr, double *__cosptr) {
1061
1068
  #ifdef __OPENMP_AMDGCN__
1062
1069
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
1063
1070
  #endif
1064
- *__sinptr = __ocml_sincos_f64(
1065
- __x, (__attribute__((address_space(5))) double *)&__tmp);
1071
+ *__sinptr = __ocml_sincos_f64(__x, (__PRIVATE_AS double *)&__tmp);
1066
1072
  *__cosptr = __tmp;
1067
1073
  }
1068
1074
 
@@ -1072,8 +1078,7 @@ void sincospi(double __x, double *__sinptr, double *__cosptr) {
1072
1078
  #ifdef __OPENMP_AMDGCN__
1073
1079
  #pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
1074
1080
  #endif
1075
- *__sinptr = __ocml_sincospi_f64(
1076
- __x, (__attribute__((address_space(5))) double *)&__tmp);
1081
+ *__sinptr = __ocml_sincospi_f64(__x, (__PRIVATE_AS double *)&__tmp);
1077
1082
  *__cosptr = __tmp;
1078
1083
  }
1079
1084
 
@@ -1306,19 +1311,95 @@ float min(float __x, float __y) { return __builtin_fminf(__x, __y); }
1306
1311
  __DEVICE__
1307
1312
  double min(double __x, double __y) { return __builtin_fmin(__x, __y); }
1308
1313
 
1309
- #if !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__)
1310
- __host__ inline static int min(int __arg1, int __arg2) {
1311
- return __arg1 < __arg2 ? __arg1 : __arg2;
1314
+ // Define host min/max functions.
1315
+ #if !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__) && \
1316
+ !defined(__HIP_NO_HOST_MIN_MAX_IN_GLOBAL_NAMESPACE__)
1317
+
1318
+ // TODO: make this default to 1 after existing HIP apps adopting this change.
1319
+ #ifndef __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
1320
+ #define __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__ 0
1321
+ #endif
1322
+
1323
+ #ifndef __HIP_DEFINE_MIXED_HOST_MIN_MAX__
1324
+ #define __HIP_DEFINE_MIXED_HOST_MIN_MAX__ 0
1325
+ #endif
1326
+
1327
+ #pragma push_macro("DEFINE_MIN_MAX_FUNCTIONS")
1328
+ #pragma push_macro("DEFINE_MIN_MAX_FUNCTIONS")
1329
+ #define DEFINE_MIN_MAX_FUNCTIONS(ret_type, type1, type2) \
1330
+ inline ret_type min(const type1 __a, const type2 __b) { \
1331
+ return (__a < __b) ? __a : __b; \
1332
+ } \
1333
+ inline ret_type max(const type1 __a, const type2 __b) { \
1334
+ return (__a > __b) ? __a : __b; \
1335
+ }
1336
+
1337
+ // Define min and max functions for same type comparisons
1338
+ DEFINE_MIN_MAX_FUNCTIONS(int, int, int)
1339
+
1340
+ #if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
1341
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned int, unsigned int, unsigned int)
1342
+ DEFINE_MIN_MAX_FUNCTIONS(long, long, long)
1343
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long, unsigned long, unsigned long)
1344
+ DEFINE_MIN_MAX_FUNCTIONS(long long, long long, long long)
1345
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, unsigned long long,
1346
+ unsigned long long)
1347
+ #endif // if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
1348
+
1349
+ // The host min/max functions below accept mixed signed/unsigned integer
1350
+ // parameters and perform unsigned comparisons, which may produce unexpected
1351
+ // results if a signed integer was passed unintentionally. To avoid this
1352
+ // happening silently, these overloaded functions are not defined by default.
1353
+ // However, for compatibility with CUDA, they will be defined if users define
1354
+ // __HIP_DEFINE_MIXED_HOST_MIN_MAX__.
1355
+ #if __HIP_DEFINE_MIXED_HOST_MIN_MAX__
1356
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned int, int, unsigned int)
1357
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned int, unsigned int, int)
1358
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long, long, unsigned long)
1359
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long, unsigned long, long)
1360
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, long long, unsigned long long)
1361
+ DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, unsigned long long, long long)
1362
+ #endif // if __HIP_DEFINE_MIXED_HOST_MIN_MAX__
1363
+
1364
+ // Floating-point comparisons using built-in functions
1365
+ #if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
1366
+ inline float min(float const __a, float const __b) {
1367
+ return __builtin_fminf(__a, __b);
1368
+ }
1369
+ inline double min(double const __a, double const __b) {
1370
+ return __builtin_fmin(__a, __b);
1371
+ }
1372
+ inline double min(float const __a, double const __b) {
1373
+ return __builtin_fmin(__a, __b);
1374
+ }
1375
+ inline double min(double const __a, float const __b) {
1376
+ return __builtin_fmin(__a, __b);
1312
1377
  }
1313
1378
 
1314
- __host__ inline static int max(int __arg1, int __arg2) {
1315
- return __arg1 > __arg2 ? __arg1 : __arg2;
1379
+ inline float max(float const __a, float const __b) {
1380
+ return __builtin_fmaxf(__a, __b);
1316
1381
  }
1317
- #endif // !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__)
1382
+ inline double max(double const __a, double const __b) {
1383
+ return __builtin_fmax(__a, __b);
1384
+ }
1385
+ inline double max(float const __a, double const __b) {
1386
+ return __builtin_fmax(__a, __b);
1387
+ }
1388
+ inline double max(double const __a, float const __b) {
1389
+ return __builtin_fmax(__a, __b);
1390
+ }
1391
+ #endif // if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
1392
+
1393
+ #pragma pop_macro("DEFINE_MIN_MAX_FUNCTIONS")
1394
+
1395
+ #endif // !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__) &&
1396
+ // !defined(__HIP_NO_HOST_MIN_MAX_IN_GLOBAL_NAMESPACE__)
1318
1397
  #endif
1319
1398
 
1320
1399
  #pragma pop_macro("__DEVICE__")
1400
+ #pragma pop_macro("__PRIVATE_AS")
1321
1401
  #pragma pop_macro("__RETURN_TYPE")
1322
1402
  #pragma pop_macro("__FAST_OR_SLOW")
1323
1403
 
1404
+ #endif // __CLANG_GPU_DISABLE_MATH_WRAPPERS
1324
1405
  #endif // __CLANG_HIP_MATH_H__
@@ -25,6 +25,9 @@
25
25
  #define __constant__ __attribute__((constant))
26
26
  #define __managed__ __attribute__((managed))
27
27
 
28
+ #define __cluster_dims__(...) __attribute__((cluster_dims(__VA_ARGS__)))
29
+ #define __no_cluster__ __attribute__((no_cluster))
30
+
28
31
  #if !defined(__cplusplus) || __cplusplus < 201103L
29
32
  #define nullptr NULL;
30
33
  #endif
@@ -108,6 +111,12 @@ __attribute__((weak)) inline __device__ void free(void *__ptr) {
108
111
  #endif //__cplusplus
109
112
 
110
113
  #if !defined(__HIPCC_RTC__)
114
+ // We must include the forward declarations before cmath is included.
115
+ // Otherwise `constexpr` functions in <cmath> would be implicitely __host__
116
+ // __device__. Declaring the __device__ verison before allows us to overload
117
+ // them with __device__ versions (this behavour is only valid for system
118
+ // headers).
119
+ #include <__clang_cuda_math_forward_declares.h>
111
120
  #include <cmath>
112
121
  #include <cstdlib>
113
122
  #include <stdlib.h>
@@ -125,11 +134,13 @@ typedef __SIZE_TYPE__ size_t;
125
134
  #pragma push_macro("uint64_t")
126
135
  #pragma push_macro("CHAR_BIT")
127
136
  #pragma push_macro("INT_MAX")
137
+ #pragma push_macro("INT_MIN")
128
138
  #define NULL (void *)0
129
139
  #define uint32_t __UINT32_TYPE__
130
140
  #define uint64_t __UINT64_TYPE__
131
141
  #define CHAR_BIT __CHAR_BIT__
132
142
  #define INT_MAX __INTMAX_MAX__
143
+ #define INT_MIN (-__INT_MAX__ - 1)
133
144
  #endif // __HIPCC_RTC__
134
145
 
135
146
  #include <__clang_hip_libdevice_declares.h>
@@ -139,7 +150,6 @@ typedef __SIZE_TYPE__ size_t;
139
150
  #if defined(__HIPCC_RTC__)
140
151
  #include <__clang_hip_cmath.h>
141
152
  #else
142
- #include <__clang_cuda_math_forward_declares.h>
143
153
  #include <__clang_hip_cmath.h>
144
154
  #include <__clang_cuda_complex_builtins.h>
145
155
  #include <algorithm>
@@ -154,6 +164,7 @@ typedef __SIZE_TYPE__ size_t;
154
164
  #pragma pop_macro("uint64_t")
155
165
  #pragma pop_macro("CHAR_BIT")
156
166
  #pragma pop_macro("INT_MAX")
167
+ #pragma pop_macro("INT_MIN")
157
168
  #endif // __HIPCC_RTC__
158
169
  #endif // __HIP__
159
170
  #endif // __CLANG_HIP_RUNTIME_WRAPPER_H__