@cpp-linter/clang-tidy-win32-x64 13.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 (193) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy.exe +2 -2
  3. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_complex_builtins.h +3 -3
  4. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_intrinsics.h +38 -6
  5. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_libdevice_declares.h +6 -0
  6. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_math.h +1 -1
  7. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_runtime_wrapper.h +62 -7
  8. package/lib/clang/15.0.2/include/__clang_cuda_texture_intrinsics.h +740 -0
  9. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_hip_runtime_wrapper.h +17 -4
  10. package/lib/clang/{13.0.0 → 15.0.2}/include/__wmmintrin_aes.h +1 -1
  11. package/lib/clang/{13.0.0 → 15.0.2}/include/__wmmintrin_pclmul.h +10 -10
  12. package/lib/clang/{13.0.0 → 15.0.2}/include/altivec.h +677 -328
  13. package/lib/clang/{13.0.0 → 15.0.2}/include/ammintrin.h +4 -0
  14. package/lib/clang/{13.0.0 → 15.0.2}/include/amxintrin.h +17 -18
  15. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_acle.h +6 -0
  16. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_neon.h +8010 -8012
  17. package/lib/clang/15.0.2/include/arm_neon_sve_bridge.h +184 -0
  18. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_sve.h +65 -61
  19. package/lib/clang/{13.0.0 → 15.0.2}/include/avx2intrin.h +189 -189
  20. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512bf16intrin.h +3 -3
  21. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512bwintrin.h +83 -83
  22. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512dqintrin.h +365 -365
  23. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512erintrin.h +102 -102
  24. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512fintrin.h +1625 -1618
  25. package/lib/clang/15.0.2/include/avx512fp16intrin.h +3349 -0
  26. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vbmi2intrin.h +48 -48
  27. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlbf16intrin.h +52 -4
  28. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlbwintrin.h +102 -102
  29. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vldqintrin.h +134 -134
  30. package/lib/clang/15.0.2/include/avx512vlfp16intrin.h +2068 -0
  31. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlintrin.h +596 -610
  32. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlvbmi2intrin.h +96 -96
  33. package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlvnniintrin.h +24 -24
  34. package/lib/clang/{13.0.0 → 15.0.2}/include/avxintrin.h +254 -222
  35. package/lib/clang/{13.0.0 → 15.0.2}/include/avxvnniintrin.h +16 -16
  36. package/lib/clang/{13.0.0 → 15.0.2}/include/bmiintrin.h +6 -2
  37. package/lib/clang/{13.0.0 → 15.0.2}/include/cetintrin.h +20 -4
  38. package/lib/clang/{13.0.0 → 15.0.2}/include/cpuid.h +3 -1
  39. package/lib/clang/15.0.2/include/crc32intrin.h +100 -0
  40. package/lib/clang/{13.0.0 → 15.0.2}/include/emmintrin.h +563 -779
  41. package/lib/clang/{13.0.0 → 15.0.2}/include/f16cintrin.h +4 -4
  42. package/lib/clang/{13.0.0 → 15.0.2}/include/float.h +15 -6
  43. package/lib/clang/{13.0.0 → 15.0.2}/include/gfniintrin.h +47 -48
  44. package/lib/clang/{13.0.0 → 15.0.2}/include/hexagon_protos.h +0 -11
  45. package/lib/clang/{13.0.0 → 15.0.2}/include/hexagon_types.h +0 -32
  46. package/lib/clang/15.0.2/include/hlsl/hlsl_basic_types.h +64 -0
  47. package/lib/clang/15.0.2/include/hlsl/hlsl_intrinsics.h +15 -0
  48. package/lib/clang/15.0.2/include/hlsl.h +15 -0
  49. package/lib/clang/{13.0.0 → 15.0.2}/include/hresetintrin.h +2 -2
  50. package/lib/clang/{13.0.0 → 15.0.2}/include/hvx_hexagon_protos.h +1200 -409
  51. package/lib/clang/{13.0.0 → 15.0.2}/include/ia32intrin.h +17 -17
  52. package/lib/clang/{13.0.0 → 15.0.2}/include/immintrin.h +41 -23
  53. package/lib/clang/{13.0.0 → 15.0.2}/include/intrin.h +34 -35
  54. package/lib/clang/{13.0.0 → 15.0.2}/include/keylockerintrin.h +24 -30
  55. package/lib/clang/{13.0.0 → 15.0.2}/include/limits.h +20 -0
  56. package/lib/clang/{13.0.0 → 15.0.2}/include/mm_malloc.h +3 -3
  57. package/lib/clang/{13.0.0 → 15.0.2}/include/mmintrin.h +4 -0
  58. package/lib/clang/{13.0.0 → 15.0.2}/include/nmmintrin.h +4 -0
  59. package/lib/clang/{13.0.0 → 15.0.2}/include/opencl-c-base.h +79 -11
  60. package/lib/clang/{13.0.0 → 15.0.2}/include/opencl-c.h +7145 -6131
  61. package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/complex +10 -1
  62. package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/complex.h +9 -0
  63. package/lib/clang/{13.0.0 → 15.0.2}/include/pmmintrin.h +5 -1
  64. package/lib/clang/15.0.2/include/ppc_wrappers/bmi2intrin.h +134 -0
  65. package/lib/clang/15.0.2/include/ppc_wrappers/bmiintrin.h +165 -0
  66. package/lib/clang/15.0.2/include/ppc_wrappers/emmintrin.h +2268 -0
  67. package/lib/clang/15.0.2/include/ppc_wrappers/immintrin.h +27 -0
  68. package/lib/clang/{13.0.0 → 15.0.2}/include/ppc_wrappers/mm_malloc.h +12 -17
  69. package/lib/clang/{13.0.0 → 15.0.2}/include/ppc_wrappers/mmintrin.h +389 -386
  70. package/lib/clang/15.0.2/include/ppc_wrappers/pmmintrin.h +145 -0
  71. package/lib/clang/15.0.2/include/ppc_wrappers/smmintrin.h +663 -0
  72. package/lib/clang/15.0.2/include/ppc_wrappers/tmmintrin.h +453 -0
  73. package/lib/clang/{13.0.0/include/stdnoreturn.h → 15.0.2/include/ppc_wrappers/x86gprintrin.h} +7 -6
  74. package/lib/clang/15.0.2/include/ppc_wrappers/x86intrin.h +28 -0
  75. package/lib/clang/15.0.2/include/ppc_wrappers/xmmintrin.h +1827 -0
  76. package/lib/clang/{13.0.0 → 15.0.2}/include/prfchwintrin.h +5 -2
  77. package/lib/clang/15.0.2/include/rdpruintrin.h +57 -0
  78. package/lib/clang/{13.0.0 → 15.0.2}/include/rdseedintrin.h +3 -3
  79. package/lib/clang/15.0.2/include/riscv_vector.h +202 -0
  80. package/lib/clang/{13.0.0 → 15.0.2}/include/rtmintrin.h +1 -1
  81. package/lib/clang/{13.0.0 → 15.0.2}/include/smmintrin.h +258 -360
  82. package/lib/clang/{13.0.0 → 15.0.2}/include/stdatomic.h +11 -1
  83. package/lib/clang/{13.0.0 → 15.0.2}/include/stdbool.h +9 -6
  84. package/lib/clang/{13.0.0 → 15.0.2}/include/stddef.h +1 -1
  85. package/lib/clang/{13.0.0 → 15.0.2}/include/stdint.h +168 -0
  86. package/lib/clang/15.0.2/include/stdnoreturn.h +29 -0
  87. package/lib/clang/{13.0.0 → 15.0.2}/include/tmmintrin.h +10 -6
  88. package/lib/clang/{13.0.0 → 15.0.2}/include/uintrintrin.h +8 -8
  89. package/lib/clang/{13.0.0 → 15.0.2}/include/unwind.h +10 -6
  90. package/lib/clang/{13.0.0 → 15.0.2}/include/vaesintrin.h +1 -1
  91. package/lib/clang/15.0.2/include/velintrin.h +71 -0
  92. package/lib/clang/15.0.2/include/velintrin_approx.h +120 -0
  93. package/lib/clang/15.0.2/include/velintrin_gen.h +1257 -0
  94. package/lib/clang/{13.0.0 → 15.0.2}/include/vpclmulqdqintrin.h +6 -6
  95. package/lib/clang/{13.0.0 → 15.0.2}/include/wasm_simd128.h +169 -26
  96. package/lib/clang/{13.0.0 → 15.0.2}/include/wmmintrin.h +4 -0
  97. package/lib/clang/15.0.2/include/x86gprintrin.h +53 -0
  98. package/lib/clang/{13.0.0 → 15.0.2}/include/x86intrin.h +4 -0
  99. package/lib/clang/{13.0.0 → 15.0.2}/include/xmmintrin.h +18 -8
  100. package/lib/clang/{13.0.0 → 15.0.2}/include/xopintrin.h +31 -31
  101. package/package.json +6 -6
  102. package/lib/clang/13.0.0/include/ppc_wrappers/emmintrin.h +0 -2324
  103. package/lib/clang/13.0.0/include/ppc_wrappers/pmmintrin.h +0 -150
  104. package/lib/clang/13.0.0/include/ppc_wrappers/smmintrin.h +0 -109
  105. package/lib/clang/13.0.0/include/ppc_wrappers/tmmintrin.h +0 -495
  106. package/lib/clang/13.0.0/include/ppc_wrappers/xmmintrin.h +0 -1843
  107. package/lib/clang/13.0.0/include/riscv_vector.h +0 -123865
  108. package/lib/clang/13.0.0/include/x86gprintrin.h +0 -23
  109. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_builtin_vars.h +0 -0
  110. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_cmath.h +0 -0
  111. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_device_functions.h +0 -0
  112. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_cuda_math_forward_declares.h +0 -0
  113. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_hip_cmath.h +0 -0
  114. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_hip_libdevice_declares.h +0 -0
  115. package/lib/clang/{13.0.0 → 15.0.2}/include/__clang_hip_math.h +0 -0
  116. package/lib/clang/{13.0.0 → 15.0.2}/include/__stddef_max_align_t.h +0 -0
  117. package/lib/clang/{13.0.0 → 15.0.2}/include/adxintrin.h +0 -0
  118. package/lib/clang/{13.0.0 → 15.0.2}/include/arm64intr.h +0 -0
  119. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_bf16.h +0 -0
  120. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_cde.h +0 -0
  121. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_cmse.h +0 -0
  122. package/lib/clang/{13.0.0 → 15.0.2}/include/arm_fp16.h +89 -89
  123. /package/lib/clang/{13.0.0 → 15.0.2}/include/arm_mve.h +0 -0
  124. /package/lib/clang/{13.0.0 → 15.0.2}/include/armintr.h +0 -0
  125. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512bitalgintrin.h +0 -0
  126. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512cdintrin.h +0 -0
  127. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512ifmaintrin.h +0 -0
  128. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512ifmavlintrin.h +0 -0
  129. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512pfintrin.h +0 -0
  130. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vbmiintrin.h +0 -0
  131. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vbmivlintrin.h +0 -0
  132. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlbitalgintrin.h +0 -0
  133. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlcdintrin.h +0 -0
  134. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vlvp2intersectintrin.h +0 -0
  135. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vnniintrin.h +0 -0
  136. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vp2intersectintrin.h +0 -0
  137. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vpopcntdqintrin.h +0 -0
  138. /package/lib/clang/{13.0.0 → 15.0.2}/include/avx512vpopcntdqvlintrin.h +0 -0
  139. /package/lib/clang/{13.0.0 → 15.0.2}/include/bmi2intrin.h +0 -0
  140. /package/lib/clang/{13.0.0 → 15.0.2}/include/builtins.h +0 -0
  141. /package/lib/clang/{13.0.0 → 15.0.2}/include/cet.h +0 -0
  142. /package/lib/clang/{13.0.0 → 15.0.2}/include/cldemoteintrin.h +0 -0
  143. /package/lib/clang/{13.0.0 → 15.0.2}/include/clflushoptintrin.h +0 -0
  144. /package/lib/clang/{13.0.0 → 15.0.2}/include/clwbintrin.h +0 -0
  145. /package/lib/clang/{13.0.0 → 15.0.2}/include/clzerointrin.h +0 -0
  146. /package/lib/clang/{13.0.0 → 15.0.2}/include/cuda_wrappers/algorithm +0 -0
  147. /package/lib/clang/{13.0.0 → 15.0.2}/include/cuda_wrappers/complex +0 -0
  148. /package/lib/clang/{13.0.0 → 15.0.2}/include/cuda_wrappers/new +0 -0
  149. /package/lib/clang/{13.0.0 → 15.0.2}/include/enqcmdintrin.h +0 -0
  150. /package/lib/clang/{13.0.0 → 15.0.2}/include/fma4intrin.h +0 -0
  151. /package/lib/clang/{13.0.0 → 15.0.2}/include/fmaintrin.h +0 -0
  152. /package/lib/clang/{13.0.0 → 15.0.2}/include/fxsrintrin.h +0 -0
  153. /package/lib/clang/{13.0.0 → 15.0.2}/include/hexagon_circ_brev_intrinsics.h +0 -0
  154. /package/lib/clang/{13.0.0 → 15.0.2}/include/htmintrin.h +0 -0
  155. /package/lib/clang/{13.0.0 → 15.0.2}/include/htmxlintrin.h +0 -0
  156. /package/lib/clang/{13.0.0 → 15.0.2}/include/inttypes.h +0 -0
  157. /package/lib/clang/{13.0.0 → 15.0.2}/include/invpcidintrin.h +0 -0
  158. /package/lib/clang/{13.0.0 → 15.0.2}/include/iso646.h +0 -0
  159. /package/lib/clang/{13.0.0 → 15.0.2}/include/lwpintrin.h +0 -0
  160. /package/lib/clang/{13.0.0 → 15.0.2}/include/lzcntintrin.h +0 -0
  161. /package/lib/clang/{13.0.0 → 15.0.2}/include/mm3dnow.h +0 -0
  162. /package/lib/clang/{13.0.0 → 15.0.2}/include/module.modulemap +0 -0
  163. /package/lib/clang/{13.0.0 → 15.0.2}/include/movdirintrin.h +0 -0
  164. /package/lib/clang/{13.0.0 → 15.0.2}/include/msa.h +0 -0
  165. /package/lib/clang/{13.0.0 → 15.0.2}/include/mwaitxintrin.h +0 -0
  166. /package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  167. /package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/cmath +0 -0
  168. /package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/complex_cmath.h +0 -0
  169. /package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/math.h +0 -0
  170. /package/lib/clang/{13.0.0 → 15.0.2}/include/openmp_wrappers/new +0 -0
  171. /package/lib/clang/{13.0.0 → 15.0.2}/include/pconfigintrin.h +0 -0
  172. /package/lib/clang/{13.0.0 → 15.0.2}/include/pkuintrin.h +0 -0
  173. /package/lib/clang/{13.0.0 → 15.0.2}/include/popcntintrin.h +0 -0
  174. /package/lib/clang/{13.0.0 → 15.0.2}/include/ptwriteintrin.h +0 -0
  175. /package/lib/clang/{13.0.0 → 15.0.2}/include/s390intrin.h +0 -0
  176. /package/lib/clang/{13.0.0 → 15.0.2}/include/serializeintrin.h +0 -0
  177. /package/lib/clang/{13.0.0 → 15.0.2}/include/sgxintrin.h +0 -0
  178. /package/lib/clang/{13.0.0 → 15.0.2}/include/shaintrin.h +0 -0
  179. /package/lib/clang/{13.0.0 → 15.0.2}/include/stdalign.h +0 -0
  180. /package/lib/clang/{13.0.0 → 15.0.2}/include/stdarg.h +0 -0
  181. /package/lib/clang/{13.0.0 → 15.0.2}/include/tbmintrin.h +0 -0
  182. /package/lib/clang/{13.0.0 → 15.0.2}/include/tgmath.h +0 -0
  183. /package/lib/clang/{13.0.0 → 15.0.2}/include/tsxldtrkintrin.h +0 -0
  184. /package/lib/clang/{13.0.0 → 15.0.2}/include/vadefs.h +0 -0
  185. /package/lib/clang/{13.0.0 → 15.0.2}/include/varargs.h +0 -0
  186. /package/lib/clang/{13.0.0 → 15.0.2}/include/vecintrin.h +0 -0
  187. /package/lib/clang/{13.0.0 → 15.0.2}/include/waitpkgintrin.h +0 -0
  188. /package/lib/clang/{13.0.0 → 15.0.2}/include/wbnoinvdintrin.h +0 -0
  189. /package/lib/clang/{13.0.0 → 15.0.2}/include/xsavecintrin.h +0 -0
  190. /package/lib/clang/{13.0.0 → 15.0.2}/include/xsaveintrin.h +0 -0
  191. /package/lib/clang/{13.0.0 → 15.0.2}/include/xsaveoptintrin.h +0 -0
  192. /package/lib/clang/{13.0.0 → 15.0.2}/include/xsavesintrin.h +0 -0
  193. /package/lib/clang/{13.0.0 → 15.0.2}/include/xtestintrin.h +0 -0
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # @cpp-linter/clang-tidy-win32-x64
2
2
 
3
- The Windows x64 binary of clang-tidy from LLVM 13.0.0, for [`@cpp-linter/clang-tidy`](https://www.npmjs.com/package/@cpp-linter/clang-tidy).
3
+ The Windows x64 binary of clang-tidy from LLVM 15.0.2, for [`@cpp-linter/clang-tidy`](https://www.npmjs.com/package/@cpp-linter/clang-tidy).
4
4
 
5
5
  Install `@cpp-linter/clang-tidy` instead of this package: npm picks the binary for your platform.
6
6
 
7
- The binary is a static build from the release [`llvm-13.0.0-2`](https://github.com/cpp-linter/clang-tools-static-binaries/releases/tag/llvm-13.0.0-2) of [cpp-linter/clang-tools-static-binaries](https://github.com/cpp-linter/clang-tools-static-binaries). LLVM is licensed under the Apache License v2.0 with LLVM Exceptions (see `LICENSE.TXT`).
7
+ The binary is a static build from the release [`llvm-15.0.2-2`](https://github.com/cpp-linter/clang-tools-static-binaries/releases/tag/llvm-15.0.2-2) of [cpp-linter/clang-tools-static-binaries](https://github.com/cpp-linter/clang-tools-static-binaries). LLVM is licensed under the Apache License v2.0 with LLVM Exceptions (see `LICENSE.TXT`).
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/bin/clang-tidy.exe
3
- size: 45085696 bytes
4
- sha256: f7911e0d449b17f9d8c3bc2dec33f015775dd99d25c87056acd210e7830e70eb
3
+ size: 51731456 bytes
4
+ sha256: 18a01006e07c9ece3d8697f9233f4cda5ab17d8bb7c76f5600e2567bc1b19599
@@ -16,7 +16,7 @@
16
16
  // to work with CUDA and OpenMP target offloading [in C and C++ mode].)
17
17
 
18
18
  #pragma push_macro("__DEVICE__")
19
- #ifdef __OPENMP_NVPTX__
19
+ #if defined(__OPENMP_NVPTX__) || defined(__OPENMP_AMDGCN__)
20
20
  #pragma omp declare target
21
21
  #define __DEVICE__ __attribute__((noinline, nothrow, cold, weak))
22
22
  #else
@@ -26,7 +26,7 @@
26
26
  // To make the algorithms available for C and C++ in CUDA and OpenMP we select
27
27
  // different but equivalent function versions. TODO: For OpenMP we currently
28
28
  // select the native builtins as the overload support for templates is lacking.
29
- #if !defined(__OPENMP_NVPTX__)
29
+ #if !defined(__OPENMP_NVPTX__) && !defined(__OPENMP_AMDGCN__)
30
30
  #define _ISNANd std::isnan
31
31
  #define _ISNANf std::isnan
32
32
  #define _ISINFd std::isinf
@@ -276,7 +276,7 @@ __DEVICE__ float _Complex __divsc3(float __a, float __b, float __c, float __d) {
276
276
  #undef _fmaxd
277
277
  #undef _fmaxf
278
278
 
279
- #ifdef __OPENMP_NVPTX__
279
+ #if defined(__OPENMP_NVPTX__) || defined(__OPENMP_AMDGCN__)
280
280
  #pragma omp end declare target
281
281
  #endif
282
282
 
@@ -71,8 +71,8 @@
71
71
  } \
72
72
  inline __device__ unsigned long long __FnName( \
73
73
  unsigned long long __val, __Type __offset, int __width = warpSize) { \
74
- return static_cast<unsigned long long>(::__FnName( \
75
- static_cast<unsigned long long>(__val), __offset, __width)); \
74
+ return static_cast<unsigned long long>( \
75
+ ::__FnName(static_cast<long long>(__val), __offset, __width)); \
76
76
  } \
77
77
  inline __device__ double __FnName(double __val, __Type __offset, \
78
78
  int __width = warpSize) { \
@@ -139,8 +139,8 @@ __MAKE_SHUFFLES(__shfl_xor, __nvvm_shfl_bfly_i32, __nvvm_shfl_bfly_f32, 0x1f,
139
139
  inline __device__ unsigned long long __FnName( \
140
140
  unsigned int __mask, unsigned long long __val, __Type __offset, \
141
141
  int __width = warpSize) { \
142
- return static_cast<unsigned long long>(::__FnName( \
143
- __mask, static_cast<unsigned long long>(__val), __offset, __width)); \
142
+ return static_cast<unsigned long long>( \
143
+ ::__FnName(__mask, static_cast<long long>(__val), __offset, __width)); \
144
144
  } \
145
145
  inline __device__ long __FnName(unsigned int __mask, long __val, \
146
146
  __Type __offset, int __width = warpSize) { \
@@ -234,7 +234,7 @@ inline __device__ unsigned int __match32_any_sync(unsigned int mask,
234
234
  return __nvvm_match_any_sync_i32(mask, value);
235
235
  }
236
236
 
237
- inline __device__ unsigned long long
237
+ inline __device__ unsigned int
238
238
  __match64_any_sync(unsigned int mask, unsigned long long value) {
239
239
  return __nvvm_match_any_sync_i64(mask, value);
240
240
  }
@@ -244,7 +244,7 @@ __match32_all_sync(unsigned int mask, unsigned int value, int *pred) {
244
244
  return __nvvm_match_all_sync_i32p(mask, value, pred);
245
245
  }
246
246
 
247
- inline __device__ unsigned long long
247
+ inline __device__ unsigned int
248
248
  __match64_all_sync(unsigned int mask, unsigned long long value, int *pred) {
249
249
  return __nvvm_match_all_sync_i64p(mask, value, pred);
250
250
  }
@@ -483,4 +483,36 @@ inline __device__ unsigned __funnelshift_rc(unsigned low32, unsigned high32,
483
483
 
484
484
  #endif // !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 320
485
485
 
486
+ #if CUDA_VERSION >= 11000
487
+ extern "C" {
488
+ __device__ inline size_t __nv_cvta_generic_to_global_impl(const void *__ptr) {
489
+ return (size_t)(void __attribute__((address_space(1))) *)__ptr;
490
+ }
491
+ __device__ inline size_t __nv_cvta_generic_to_shared_impl(const void *__ptr) {
492
+ return (size_t)(void __attribute__((address_space(3))) *)__ptr;
493
+ }
494
+ __device__ inline size_t __nv_cvta_generic_to_constant_impl(const void *__ptr) {
495
+ return (size_t)(void __attribute__((address_space(4))) *)__ptr;
496
+ }
497
+ __device__ inline size_t __nv_cvta_generic_to_local_impl(const void *__ptr) {
498
+ return (size_t)(void __attribute__((address_space(5))) *)__ptr;
499
+ }
500
+ __device__ inline void *__nv_cvta_global_to_generic_impl(size_t __ptr) {
501
+ return (void *)(void __attribute__((address_space(1))) *)__ptr;
502
+ }
503
+ __device__ inline void *__nv_cvta_shared_to_generic_impl(size_t __ptr) {
504
+ return (void *)(void __attribute__((address_space(3))) *)__ptr;
505
+ }
506
+ __device__ inline void *__nv_cvta_constant_to_generic_impl(size_t __ptr) {
507
+ return (void *)(void __attribute__((address_space(4))) *)__ptr;
508
+ }
509
+ __device__ inline void *__nv_cvta_local_to_generic_impl(size_t __ptr) {
510
+ return (void *)(void __attribute__((address_space(5))) *)__ptr;
511
+ }
512
+ __device__ inline cuuint32_t __nvvm_get_smem_pointer(void *__ptr) {
513
+ return __nv_cvta_generic_to_shared_impl(__ptr);
514
+ }
515
+ } // extern "C"
516
+ #endif // CUDA_VERSION >= 11000
517
+
486
518
  #endif // defined(__CLANG_CUDA_INTRINSICS_H__)
@@ -16,6 +16,7 @@ extern "C" {
16
16
 
17
17
  #if defined(__OPENMP_NVPTX__)
18
18
  #define __DEVICE__
19
+ #pragma omp begin assumes ext_spmd_amenable no_openmp
19
20
  #elif defined(__CUDA__)
20
21
  #define __DEVICE__ __device__
21
22
  #endif
@@ -456,6 +457,11 @@ __DEVICE__ double __nv_y1(double __a);
456
457
  __DEVICE__ float __nv_y1f(float __a);
457
458
  __DEVICE__ float __nv_ynf(int __a, float __b);
458
459
  __DEVICE__ double __nv_yn(int __a, double __b);
460
+
461
+ #if defined(__OPENMP_NVPTX__)
462
+ #pragma omp end assumes ext_spmd_amenable no_openmp
463
+ #endif
464
+
459
465
  #if defined(__cplusplus)
460
466
  } // extern "C"
461
467
  #endif
@@ -345,4 +345,4 @@ __DEVICE__ float ynf(int __a, float __b) { return __nv_ynf(__a, __b); }
345
345
  #pragma pop_macro("__DEVICE_VOID__")
346
346
  #pragma pop_macro("__FAST_OR_SLOW")
347
347
 
348
- #endif // __CLANG_CUDA_DEVICE_FUNCTIONS_H__
348
+ #endif // __CLANG_CUDA_MATH_H__
@@ -41,6 +41,7 @@
41
41
  #include <cmath>
42
42
  #include <cstdlib>
43
43
  #include <stdlib.h>
44
+ #include <string.h>
44
45
  #undef __CUDACC__
45
46
 
46
47
  // Preserve common macros that will be changed below by us or by CUDA
@@ -64,9 +65,9 @@
64
65
  #endif
65
66
 
66
67
  // Make largest subset of device functions available during host
67
- // compilation -- SM_35 for the time being.
68
+ // compilation.
68
69
  #ifndef __CUDA_ARCH__
69
- #define __CUDA_ARCH__ 350
70
+ #define __CUDA_ARCH__ 9999
70
71
  #endif
71
72
 
72
73
  #include "__clang_cuda_builtin_vars.h"
@@ -205,11 +206,6 @@ inline __host__ double __signbitd(double x) {
205
206
  #endif
206
207
 
207
208
  #if CUDA_VERSION >= 9000
208
- // CUDA-9.2 needs host-side memcpy for some host functions in
209
- // device_functions.hpp
210
- #if CUDA_VERSION >= 9020
211
- #include <string.h>
212
- #endif
213
209
  #include "crt/math_functions.hpp"
214
210
  #else
215
211
  #include "math_functions.hpp"
@@ -275,7 +271,38 @@ static inline __device__ void __brkpt(int __c) { __brkpt(); }
275
271
  #undef __CUDABE__
276
272
  #endif
277
273
  #include "sm_20_atomic_functions.hpp"
274
+ // Predicate functions used in `__builtin_assume` need to have no side effect.
275
+ // However, sm_20_intrinsics.hpp doesn't define them with neither pure nor
276
+ // const attribute. Rename definitions from sm_20_intrinsics.hpp and re-define
277
+ // them as pure ones.
278
+ #pragma push_macro("__isGlobal")
279
+ #pragma push_macro("__isShared")
280
+ #pragma push_macro("__isConstant")
281
+ #pragma push_macro("__isLocal")
282
+ #define __isGlobal __ignored_cuda___isGlobal
283
+ #define __isShared __ignored_cuda___isShared
284
+ #define __isConstant __ignored_cuda___isConstant
285
+ #define __isLocal __ignored_cuda___isLocal
278
286
  #include "sm_20_intrinsics.hpp"
287
+ #pragma pop_macro("__isGlobal")
288
+ #pragma pop_macro("__isShared")
289
+ #pragma pop_macro("__isConstant")
290
+ #pragma pop_macro("__isLocal")
291
+ #pragma push_macro("__DEVICE__")
292
+ #define __DEVICE__ static __device__ __forceinline__ __attribute__((const))
293
+ __DEVICE__ unsigned int __isGlobal(const void *p) {
294
+ return __nvvm_isspacep_global(p);
295
+ }
296
+ __DEVICE__ unsigned int __isShared(const void *p) {
297
+ return __nvvm_isspacep_shared(p);
298
+ }
299
+ __DEVICE__ unsigned int __isConstant(const void *p) {
300
+ return __nvvm_isspacep_const(p);
301
+ }
302
+ __DEVICE__ unsigned int __isLocal(const void *p) {
303
+ return __nvvm_isspacep_local(p);
304
+ }
305
+ #pragma pop_macro("__DEVICE__")
279
306
  #include "sm_32_atomic_functions.hpp"
280
307
 
281
308
  // Don't include sm_30_intrinsics.h and sm_32_intrinsics.h. These define the
@@ -330,6 +357,34 @@ static inline __device__ void __brkpt(int __c) { __brkpt(); }
330
357
 
331
358
  #pragma pop_macro("__host__")
332
359
 
360
+ // __clang_cuda_texture_intrinsics.h must be included first in order to provide
361
+ // implementation for __nv_tex_surf_handler that CUDA's headers depend on.
362
+ // The implementation requires c++11 and only works with CUDA-9 or newer.
363
+ #if __cplusplus >= 201103L && CUDA_VERSION >= 9000
364
+ // clang-format off
365
+ #include <__clang_cuda_texture_intrinsics.h>
366
+ // clang-format on
367
+ #else
368
+ #if CUDA_VERSION >= 9000
369
+ // Provide a hint that texture support needs C++11.
370
+ template <typename T> struct __nv_tex_needs_cxx11 {
371
+ const static bool value = false;
372
+ };
373
+ template <class T>
374
+ __host__ __device__ void __nv_tex_surf_handler(const char *name, T *ptr,
375
+ cudaTextureObject_t obj,
376
+ float x) {
377
+ _Static_assert(__nv_tex_needs_cxx11<T>::value,
378
+ "Texture support requires C++11");
379
+ }
380
+ #else
381
+ // Textures in CUDA-8 and older are not supported by clang.There's no
382
+ // convenient way to intercept texture use in these versions, so we can't
383
+ // produce a meaningful error. The source code that attempts to use textures
384
+ // will continue to fail as it does now.
385
+ #endif // CUDA_VERSION
386
+ #endif // __cplusplus >= 201103L && CUDA_VERSION >= 9000
387
+ #include "texture_fetch_functions.h"
333
388
  #include "texture_indirect_functions.h"
334
389
 
335
390
  // Restore state of __CUDA_ARCH__ and __THROW we had on entry.