@cpp-linter/clang-tidy-darwin-arm64 20.1.8 → 21.1.8

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 (286) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{20 → 21}/include/__clang_cuda_intrinsics.h +287 -0
  4. package/lib/clang/{20 → 21}/include/__clang_cuda_runtime_wrapper.h +1 -0
  5. package/lib/clang/{20 → 21}/include/__clang_cuda_texture_intrinsics.h +437 -2
  6. package/lib/clang/{20 → 21}/include/__clang_hip_cmath.h +9 -8
  7. package/lib/clang/{20 → 21}/include/__clang_hip_libdevice_declares.h +12 -20
  8. package/lib/clang/{20 → 21}/include/__clang_hip_math.h +105 -29
  9. package/lib/clang/{20 → 21}/include/__clang_hip_runtime_wrapper.h +3 -0
  10. package/lib/clang/21/include/__clang_spirv_builtins.h +217 -0
  11. package/lib/clang/{20 → 21}/include/__stdarg_va_arg.h +2 -2
  12. package/lib/clang/{20 → 21}/include/altivec.h +82 -79
  13. package/lib/clang/{20 → 21}/include/amdgpuintrin.h +23 -26
  14. package/lib/clang/{20 → 21}/include/amxavx512intrin.h +1 -1
  15. package/lib/clang/{20 → 21}/include/amxcomplexintrin.h +4 -6
  16. package/lib/clang/{20 → 21}/include/amxmovrstransposeintrin.h +1 -1
  17. package/lib/clang/{20 → 21}/include/amxtf32transposeintrin.h +1 -1
  18. package/lib/clang/21/include/andes_vector.h +16 -0
  19. package/lib/clang/{20 → 21}/include/arm_acle.h +11 -41
  20. package/lib/clang/{20 → 21}/include/arm_fp16.h +89 -89
  21. package/lib/clang/{20 → 21}/include/arm_neon.h +22139 -19621
  22. package/lib/clang/{20 → 21}/include/arm_sme.h +694 -0
  23. package/lib/clang/{20 → 21}/include/arm_sve.h +5110 -4770
  24. package/lib/clang/{20 → 21}/include/avx10_2_512bf16intrin.h +8 -8
  25. package/lib/clang/{20 → 21}/include/avx10_2_512niintrin.h +6 -6
  26. package/lib/clang/{20 → 21}/include/avx10_2bf16intrin.h +34 -34
  27. package/lib/clang/21/include/avx10_2convertintrin.h +3257 -0
  28. package/lib/clang/{20 → 21}/include/avx10_2minmaxintrin.h +18 -18
  29. package/lib/clang/{20 → 21}/include/avx10_2niintrin.h +12 -12
  30. package/lib/clang/{20 → 21}/include/avx10_2satcvtdsintrin.h +48 -62
  31. package/lib/clang/{20 → 21}/include/avx10_2satcvtintrin.h +24 -44
  32. package/lib/clang/{20 → 21}/include/avx512fp16intrin.h +2 -1
  33. package/lib/clang/{20 → 21}/include/bmiintrin.h +0 -4
  34. package/lib/clang/{20 → 21}/include/cpuid.h +24 -22
  35. package/lib/clang/21/include/cuda_wrappers/bits/c++config.h +61 -0
  36. package/lib/clang/{20 → 21}/include/cuda_wrappers/cmath +0 -50
  37. package/lib/clang/{20 → 21}/include/float.h +2 -11
  38. package/lib/clang/{20 → 21}/include/gpuintrin.h +111 -7
  39. package/lib/clang/{20/include/hlsl/hlsl_intrinsics.h → 21/include/hlsl/hlsl_alias_intrinsics.h} +220 -223
  40. package/lib/clang/21/include/hlsl/hlsl_compat_overloads.h +427 -0
  41. package/lib/clang/21/include/hlsl/hlsl_detail.h +54 -0
  42. package/lib/clang/21/include/hlsl/hlsl_intrinsic_helpers.h +144 -0
  43. package/lib/clang/21/include/hlsl/hlsl_intrinsics.h +526 -0
  44. package/lib/clang/21/include/hlsl/hlsl_spirv.h +28 -0
  45. package/lib/clang/{20 → 21}/include/hlsl.h +12 -0
  46. package/lib/clang/{20 → 21}/include/immintrin.h +0 -224
  47. package/lib/clang/{20 → 21}/include/intrin.h +21 -4
  48. package/lib/clang/{20 → 21}/include/keylockerintrin.h +0 -9
  49. package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/stdlib.h +1 -1
  50. package/lib/clang/{20 → 21}/include/lzcntintrin.h +6 -4
  51. package/lib/clang/{20 → 21}/include/module.modulemap +13 -0
  52. package/lib/clang/{20 → 21}/include/movrsintrin.h +1 -1
  53. package/lib/clang/{20 → 21}/include/nvptxintrin.h +48 -32
  54. package/lib/clang/{20 → 21}/include/opencl-c-base.h +19 -1
  55. package/lib/clang/{20 → 21}/include/opencl-c.h +298 -39
  56. package/lib/clang/{20 → 21}/include/prfchwintrin.h +10 -13
  57. package/lib/clang/{20 → 21}/include/ptrauth.h +59 -2
  58. package/lib/clang/{20 → 21}/include/riscv_corev_alu.h +4 -4
  59. package/lib/clang/{20 → 21}/include/riscv_vector.h +0 -4
  60. package/lib/clang/{20 → 21}/include/shaintrin.h +3 -2
  61. package/lib/clang/21/include/stdcountof.h +15 -0
  62. package/lib/clang/{20 → 21}/include/stdint.h +18 -129
  63. package/lib/clang/{20 → 21}/include/x86gprintrin.h +0 -14
  64. package/lib/clang/{20 → 21}/include/x86intrin.h +0 -18
  65. package/lib/clang/{20 → 21}/include/xmmintrin.h +3 -2
  66. package/package.json +6 -6
  67. package/lib/clang/20/include/avx10_2convertintrin.h +0 -577
  68. package/lib/clang/20/include/hlsl/hlsl_detail.h +0 -84
  69. /package/lib/clang/{20 → 21}/include/__clang_cuda_builtin_vars.h +0 -0
  70. /package/lib/clang/{20 → 21}/include/__clang_cuda_cmath.h +0 -0
  71. /package/lib/clang/{20 → 21}/include/__clang_cuda_complex_builtins.h +0 -0
  72. /package/lib/clang/{20 → 21}/include/__clang_cuda_device_functions.h +0 -0
  73. /package/lib/clang/{20 → 21}/include/__clang_cuda_libdevice_declares.h +0 -0
  74. /package/lib/clang/{20 → 21}/include/__clang_cuda_math.h +0 -0
  75. /package/lib/clang/{20 → 21}/include/__clang_cuda_math_forward_declares.h +0 -0
  76. /package/lib/clang/{20 → 21}/include/__clang_hip_stdlib.h +0 -0
  77. /package/lib/clang/{20 → 21}/include/__stdarg___gnuc_va_list.h +0 -0
  78. /package/lib/clang/{20 → 21}/include/__stdarg___va_copy.h +0 -0
  79. /package/lib/clang/{20 → 21}/include/__stdarg_header_macro.h +0 -0
  80. /package/lib/clang/{20 → 21}/include/__stdarg_va_copy.h +0 -0
  81. /package/lib/clang/{20 → 21}/include/__stdarg_va_list.h +0 -0
  82. /package/lib/clang/{20 → 21}/include/__stddef_header_macro.h +0 -0
  83. /package/lib/clang/{20 → 21}/include/__stddef_max_align_t.h +0 -0
  84. /package/lib/clang/{20 → 21}/include/__stddef_null.h +0 -0
  85. /package/lib/clang/{20 → 21}/include/__stddef_nullptr_t.h +0 -0
  86. /package/lib/clang/{20 → 21}/include/__stddef_offsetof.h +0 -0
  87. /package/lib/clang/{20 → 21}/include/__stddef_ptrdiff_t.h +0 -0
  88. /package/lib/clang/{20 → 21}/include/__stddef_rsize_t.h +0 -0
  89. /package/lib/clang/{20 → 21}/include/__stddef_size_t.h +0 -0
  90. /package/lib/clang/{20 → 21}/include/__stddef_unreachable.h +0 -0
  91. /package/lib/clang/{20 → 21}/include/__stddef_wchar_t.h +0 -0
  92. /package/lib/clang/{20 → 21}/include/__stddef_wint_t.h +0 -0
  93. /package/lib/clang/{20 → 21}/include/__wmmintrin_aes.h +0 -0
  94. /package/lib/clang/{20 → 21}/include/__wmmintrin_pclmul.h +0 -0
  95. /package/lib/clang/{20 → 21}/include/adcintrin.h +0 -0
  96. /package/lib/clang/{20 → 21}/include/adxintrin.h +0 -0
  97. /package/lib/clang/{20 → 21}/include/ammintrin.h +0 -0
  98. /package/lib/clang/{20 → 21}/include/amxbf16transposeintrin.h +0 -0
  99. /package/lib/clang/{20 → 21}/include/amxcomplextransposeintrin.h +0 -0
  100. /package/lib/clang/{20 → 21}/include/amxfp16intrin.h +0 -0
  101. /package/lib/clang/{20 → 21}/include/amxfp16transposeintrin.h +0 -0
  102. /package/lib/clang/{20 → 21}/include/amxfp8intrin.h +0 -0
  103. /package/lib/clang/{20 → 21}/include/amxintrin.h +0 -0
  104. /package/lib/clang/{20 → 21}/include/amxmovrsintrin.h +0 -0
  105. /package/lib/clang/{20 → 21}/include/amxtf32intrin.h +0 -0
  106. /package/lib/clang/{20 → 21}/include/amxtransposeintrin.h +0 -0
  107. /package/lib/clang/{20 → 21}/include/arm64intr.h +0 -0
  108. /package/lib/clang/{20 → 21}/include/arm_bf16.h +0 -0
  109. /package/lib/clang/{20 → 21}/include/arm_cde.h +0 -0
  110. /package/lib/clang/{20 → 21}/include/arm_cmse.h +0 -0
  111. /package/lib/clang/{20 → 21}/include/arm_mve.h +0 -0
  112. /package/lib/clang/{20 → 21}/include/arm_neon_sve_bridge.h +0 -0
  113. /package/lib/clang/{20 → 21}/include/arm_vector_types.h +0 -0
  114. /package/lib/clang/{20 → 21}/include/armintr.h +0 -0
  115. /package/lib/clang/{20 → 21}/include/avx10_2_512convertintrin.h +0 -0
  116. /package/lib/clang/{20 → 21}/include/avx10_2_512minmaxintrin.h +0 -0
  117. /package/lib/clang/{20 → 21}/include/avx10_2_512satcvtdsintrin.h +0 -0
  118. /package/lib/clang/{20 → 21}/include/avx10_2_512satcvtintrin.h +0 -0
  119. /package/lib/clang/{20 → 21}/include/avx10_2copyintrin.h +0 -0
  120. /package/lib/clang/{20 → 21}/include/avx2intrin.h +0 -0
  121. /package/lib/clang/{20 → 21}/include/avx512bf16intrin.h +0 -0
  122. /package/lib/clang/{20 → 21}/include/avx512bitalgintrin.h +0 -0
  123. /package/lib/clang/{20 → 21}/include/avx512bwintrin.h +0 -0
  124. /package/lib/clang/{20 → 21}/include/avx512cdintrin.h +0 -0
  125. /package/lib/clang/{20 → 21}/include/avx512dqintrin.h +0 -0
  126. /package/lib/clang/{20 → 21}/include/avx512fintrin.h +0 -0
  127. /package/lib/clang/{20 → 21}/include/avx512ifmaintrin.h +0 -0
  128. /package/lib/clang/{20 → 21}/include/avx512ifmavlintrin.h +0 -0
  129. /package/lib/clang/{20 → 21}/include/avx512vbmi2intrin.h +0 -0
  130. /package/lib/clang/{20 → 21}/include/avx512vbmiintrin.h +0 -0
  131. /package/lib/clang/{20 → 21}/include/avx512vbmivlintrin.h +0 -0
  132. /package/lib/clang/{20 → 21}/include/avx512vlbf16intrin.h +0 -0
  133. /package/lib/clang/{20 → 21}/include/avx512vlbitalgintrin.h +0 -0
  134. /package/lib/clang/{20 → 21}/include/avx512vlbwintrin.h +0 -0
  135. /package/lib/clang/{20 → 21}/include/avx512vlcdintrin.h +0 -0
  136. /package/lib/clang/{20 → 21}/include/avx512vldqintrin.h +0 -0
  137. /package/lib/clang/{20 → 21}/include/avx512vlfp16intrin.h +0 -0
  138. /package/lib/clang/{20 → 21}/include/avx512vlintrin.h +0 -0
  139. /package/lib/clang/{20 → 21}/include/avx512vlvbmi2intrin.h +0 -0
  140. /package/lib/clang/{20 → 21}/include/avx512vlvnniintrin.h +0 -0
  141. /package/lib/clang/{20 → 21}/include/avx512vlvp2intersectintrin.h +0 -0
  142. /package/lib/clang/{20 → 21}/include/avx512vnniintrin.h +0 -0
  143. /package/lib/clang/{20 → 21}/include/avx512vp2intersectintrin.h +0 -0
  144. /package/lib/clang/{20 → 21}/include/avx512vpopcntdqintrin.h +0 -0
  145. /package/lib/clang/{20 → 21}/include/avx512vpopcntdqvlintrin.h +0 -0
  146. /package/lib/clang/{20 → 21}/include/avxifmaintrin.h +0 -0
  147. /package/lib/clang/{20 → 21}/include/avxintrin.h +0 -0
  148. /package/lib/clang/{20 → 21}/include/avxneconvertintrin.h +0 -0
  149. /package/lib/clang/{20 → 21}/include/avxvnniint16intrin.h +0 -0
  150. /package/lib/clang/{20 → 21}/include/avxvnniint8intrin.h +0 -0
  151. /package/lib/clang/{20 → 21}/include/avxvnniintrin.h +0 -0
  152. /package/lib/clang/{20 → 21}/include/bmi2intrin.h +0 -0
  153. /package/lib/clang/{20 → 21}/include/builtins.h +0 -0
  154. /package/lib/clang/{20 → 21}/include/cet.h +0 -0
  155. /package/lib/clang/{20 → 21}/include/cetintrin.h +0 -0
  156. /package/lib/clang/{20 → 21}/include/cldemoteintrin.h +0 -0
  157. /package/lib/clang/{20 → 21}/include/clflushoptintrin.h +0 -0
  158. /package/lib/clang/{20 → 21}/include/clwbintrin.h +0 -0
  159. /package/lib/clang/{20 → 21}/include/clzerointrin.h +0 -0
  160. /package/lib/clang/{20 → 21}/include/cmpccxaddintrin.h +0 -0
  161. /package/lib/clang/{20 → 21}/include/crc32intrin.h +0 -0
  162. /package/lib/clang/{20 → 21}/include/cuda_wrappers/algorithm +0 -0
  163. /package/lib/clang/{20 → 21}/include/cuda_wrappers/bits/basic_string.h +0 -0
  164. /package/lib/clang/{20 → 21}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  165. /package/lib/clang/{20 → 21}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  166. /package/lib/clang/{20 → 21}/include/cuda_wrappers/complex +0 -0
  167. /package/lib/clang/{20 → 21}/include/cuda_wrappers/new +0 -0
  168. /package/lib/clang/{20 → 21}/include/emmintrin.h +0 -0
  169. /package/lib/clang/{20 → 21}/include/enqcmdintrin.h +0 -0
  170. /package/lib/clang/{20 → 21}/include/f16cintrin.h +0 -0
  171. /package/lib/clang/{20 → 21}/include/fma4intrin.h +0 -0
  172. /package/lib/clang/{20 → 21}/include/fmaintrin.h +0 -0
  173. /package/lib/clang/{20 → 21}/include/fxsrintrin.h +0 -0
  174. /package/lib/clang/{20 → 21}/include/gfniintrin.h +0 -0
  175. /package/lib/clang/{20 → 21}/include/hexagon_circ_brev_intrinsics.h +0 -0
  176. /package/lib/clang/{20 → 21}/include/hexagon_protos.h +0 -0
  177. /package/lib/clang/{20 → 21}/include/hexagon_types.h +0 -0
  178. /package/lib/clang/{20 → 21}/include/hlsl/hlsl_basic_types.h +0 -0
  179. /package/lib/clang/{20 → 21}/include/hresetintrin.h +0 -0
  180. /package/lib/clang/{20 → 21}/include/htmintrin.h +0 -0
  181. /package/lib/clang/{20 → 21}/include/htmxlintrin.h +0 -0
  182. /package/lib/clang/{20 → 21}/include/hvx_hexagon_protos.h +0 -0
  183. /package/lib/clang/{20 → 21}/include/ia32intrin.h +0 -0
  184. /package/lib/clang/{20 → 21}/include/intrin0.h +0 -0
  185. /package/lib/clang/{20 → 21}/include/inttypes.h +0 -0
  186. /package/lib/clang/{20 → 21}/include/invpcidintrin.h +0 -0
  187. /package/lib/clang/{20 → 21}/include/iso646.h +0 -0
  188. /package/lib/clang/{20 → 21}/include/larchintrin.h +0 -0
  189. /package/lib/clang/{20 → 21}/include/lasxintrin.h +0 -0
  190. /package/lib/clang/{20 → 21}/include/limits.h +0 -0
  191. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/assert.h +0 -0
  192. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/ctype.h +0 -0
  193. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/inttypes.h +0 -0
  194. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/stdio.h +0 -0
  195. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/string.h +0 -0
  196. /package/lib/clang/{20 → 21}/include/llvm_libc_wrappers/time.h +0 -0
  197. /package/lib/clang/{20 → 21}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
  198. /package/lib/clang/{20 → 21}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
  199. /package/lib/clang/{20 → 21}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
  200. /package/lib/clang/{20 → 21}/include/lsxintrin.h +0 -0
  201. /package/lib/clang/{20 → 21}/include/lwpintrin.h +0 -0
  202. /package/lib/clang/{20 → 21}/include/mm3dnow.h +0 -0
  203. /package/lib/clang/{20 → 21}/include/mm_malloc.h +0 -0
  204. /package/lib/clang/{20 → 21}/include/mmintrin.h +0 -0
  205. /package/lib/clang/{20 → 21}/include/movdirintrin.h +0 -0
  206. /package/lib/clang/{20 → 21}/include/movrs_avx10_2_512intrin.h +0 -0
  207. /package/lib/clang/{20 → 21}/include/movrs_avx10_2intrin.h +0 -0
  208. /package/lib/clang/{20 → 21}/include/msa.h +0 -0
  209. /package/lib/clang/{20 → 21}/include/mwaitxintrin.h +0 -0
  210. /package/lib/clang/{20 → 21}/include/nmmintrin.h +0 -0
  211. /package/lib/clang/{20 → 21}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  212. /package/lib/clang/{20 → 21}/include/openmp_wrappers/cmath +0 -0
  213. /package/lib/clang/{20 → 21}/include/openmp_wrappers/complex +0 -0
  214. /package/lib/clang/{20 → 21}/include/openmp_wrappers/complex.h +0 -0
  215. /package/lib/clang/{20 → 21}/include/openmp_wrappers/complex_cmath.h +0 -0
  216. /package/lib/clang/{20 → 21}/include/openmp_wrappers/math.h +0 -0
  217. /package/lib/clang/{20 → 21}/include/openmp_wrappers/new +0 -0
  218. /package/lib/clang/{20 → 21}/include/pconfigintrin.h +0 -0
  219. /package/lib/clang/{20 → 21}/include/pkuintrin.h +0 -0
  220. /package/lib/clang/{20 → 21}/include/pmmintrin.h +0 -0
  221. /package/lib/clang/{20 → 21}/include/popcntintrin.h +0 -0
  222. /package/lib/clang/{20 → 21}/include/ppc_wrappers/bmi2intrin.h +0 -0
  223. /package/lib/clang/{20 → 21}/include/ppc_wrappers/bmiintrin.h +0 -0
  224. /package/lib/clang/{20 → 21}/include/ppc_wrappers/emmintrin.h +0 -0
  225. /package/lib/clang/{20 → 21}/include/ppc_wrappers/immintrin.h +0 -0
  226. /package/lib/clang/{20 → 21}/include/ppc_wrappers/mm_malloc.h +0 -0
  227. /package/lib/clang/{20 → 21}/include/ppc_wrappers/mmintrin.h +0 -0
  228. /package/lib/clang/{20 → 21}/include/ppc_wrappers/nmmintrin.h +0 -0
  229. /package/lib/clang/{20 → 21}/include/ppc_wrappers/pmmintrin.h +0 -0
  230. /package/lib/clang/{20 → 21}/include/ppc_wrappers/smmintrin.h +0 -0
  231. /package/lib/clang/{20 → 21}/include/ppc_wrappers/tmmintrin.h +0 -0
  232. /package/lib/clang/{20 → 21}/include/ppc_wrappers/x86gprintrin.h +0 -0
  233. /package/lib/clang/{20 → 21}/include/ppc_wrappers/x86intrin.h +0 -0
  234. /package/lib/clang/{20 → 21}/include/ppc_wrappers/xmmintrin.h +0 -0
  235. /package/lib/clang/{20 → 21}/include/prfchiintrin.h +0 -0
  236. /package/lib/clang/{20 → 21}/include/ptwriteintrin.h +0 -0
  237. /package/lib/clang/{20 → 21}/include/raointintrin.h +0 -0
  238. /package/lib/clang/{20 → 21}/include/rdpruintrin.h +0 -0
  239. /package/lib/clang/{20 → 21}/include/rdseedintrin.h +0 -0
  240. /package/lib/clang/{20 → 21}/include/riscv_bitmanip.h +0 -0
  241. /package/lib/clang/{20 → 21}/include/riscv_crypto.h +0 -0
  242. /package/lib/clang/{20 → 21}/include/riscv_ntlh.h +0 -0
  243. /package/lib/clang/{20 → 21}/include/rtmintrin.h +0 -0
  244. /package/lib/clang/{20 → 21}/include/s390intrin.h +0 -0
  245. /package/lib/clang/{20 → 21}/include/serializeintrin.h +0 -0
  246. /package/lib/clang/{20 → 21}/include/sgxintrin.h +0 -0
  247. /package/lib/clang/{20 → 21}/include/sha512intrin.h +0 -0
  248. /package/lib/clang/{20 → 21}/include/sifive_vector.h +0 -0
  249. /package/lib/clang/{20 → 21}/include/sm3intrin.h +0 -0
  250. /package/lib/clang/{20 → 21}/include/sm4evexintrin.h +0 -0
  251. /package/lib/clang/{20 → 21}/include/sm4intrin.h +0 -0
  252. /package/lib/clang/{20 → 21}/include/smmintrin.h +0 -0
  253. /package/lib/clang/{20 → 21}/include/stdalign.h +0 -0
  254. /package/lib/clang/{20 → 21}/include/stdarg.h +0 -0
  255. /package/lib/clang/{20 → 21}/include/stdatomic.h +0 -0
  256. /package/lib/clang/{20 → 21}/include/stdbool.h +0 -0
  257. /package/lib/clang/{20 → 21}/include/stdckdint.h +0 -0
  258. /package/lib/clang/{20 → 21}/include/stddef.h +0 -0
  259. /package/lib/clang/{20 → 21}/include/stdnoreturn.h +0 -0
  260. /package/lib/clang/{20 → 21}/include/tbmintrin.h +0 -0
  261. /package/lib/clang/{20 → 21}/include/tgmath.h +0 -0
  262. /package/lib/clang/{20 → 21}/include/tmmintrin.h +0 -0
  263. /package/lib/clang/{20 → 21}/include/tsxldtrkintrin.h +0 -0
  264. /package/lib/clang/{20 → 21}/include/uintrintrin.h +0 -0
  265. /package/lib/clang/{20 → 21}/include/unwind.h +0 -0
  266. /package/lib/clang/{20 → 21}/include/usermsrintrin.h +0 -0
  267. /package/lib/clang/{20 → 21}/include/vadefs.h +0 -0
  268. /package/lib/clang/{20 → 21}/include/vaesintrin.h +0 -0
  269. /package/lib/clang/{20 → 21}/include/varargs.h +0 -0
  270. /package/lib/clang/{20 → 21}/include/vecintrin.h +0 -0
  271. /package/lib/clang/{20 → 21}/include/velintrin.h +0 -0
  272. /package/lib/clang/{20 → 21}/include/velintrin_approx.h +0 -0
  273. /package/lib/clang/{20 → 21}/include/velintrin_gen.h +0 -0
  274. /package/lib/clang/{20 → 21}/include/vpclmulqdqintrin.h +0 -0
  275. /package/lib/clang/{20 → 21}/include/waitpkgintrin.h +0 -0
  276. /package/lib/clang/{20 → 21}/include/wasm_simd128.h +0 -0
  277. /package/lib/clang/{20 → 21}/include/wbnoinvdintrin.h +0 -0
  278. /package/lib/clang/{20 → 21}/include/wmmintrin.h +0 -0
  279. /package/lib/clang/{20 → 21}/include/xopintrin.h +0 -0
  280. /package/lib/clang/{20 → 21}/include/xsavecintrin.h +0 -0
  281. /package/lib/clang/{20 → 21}/include/xsaveintrin.h +0 -0
  282. /package/lib/clang/{20 → 21}/include/xsaveoptintrin.h +0 -0
  283. /package/lib/clang/{20 → 21}/include/xsavesintrin.h +0 -0
  284. /package/lib/clang/{20 → 21}/include/xtestintrin.h +0 -0
  285. /package/lib/clang/{20 → 21}/include/yvals_core.h +0 -0
  286. /package/lib/clang/{20 → 21}/include/zos_wrappers/builtins.h +0 -0
@@ -1,4 +1,4 @@
1
- //===----- hlsl_intrinsics.h - HLSL definitions for intrinsics ----------===//
1
+ //===--- hlsl_alias_intrinsics.h - HLSL alias definitions for intrinsics --===//
2
2
  //
3
3
  // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
4
  // See https://llvm.org/LICENSE.txt for license information.
@@ -6,10 +6,8 @@
6
6
  //
7
7
  //===----------------------------------------------------------------------===//
8
8
 
9
- #ifndef _HLSL_HLSL_INTRINSICS_H_
10
- #define _HLSL_HLSL_INTRINSICS_H_
11
-
12
- #include "hlsl_detail.h"
9
+ #ifndef _HLSL_HLSL_ALIAS_INTRINSICS_H_
10
+ #define _HLSL_HLSL_ALIAS_INTRINSICS_H_
13
11
 
14
12
  namespace hlsl {
15
13
 
@@ -58,6 +56,15 @@ int16_t3 abs(int16_t3);
58
56
  _HLSL_AVAILABILITY(shadermodel, 6.2)
59
57
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
60
58
  int16_t4 abs(int16_t4);
59
+
60
+ _HLSL_AVAILABILITY(shadermodel, 6.2)
61
+ constexpr uint16_t abs(uint16_t V) { return V; }
62
+ _HLSL_AVAILABILITY(shadermodel, 6.2)
63
+ constexpr uint16_t2 abs(uint16_t2 V) { return V; }
64
+ _HLSL_AVAILABILITY(shadermodel, 6.2)
65
+ constexpr uint16_t3 abs(uint16_t3 V) { return V; }
66
+ _HLSL_AVAILABILITY(shadermodel, 6.2)
67
+ constexpr uint16_t4 abs(uint16_t4 V) { return V; }
61
68
  #endif
62
69
 
63
70
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
@@ -82,6 +89,11 @@ int3 abs(int3);
82
89
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
83
90
  int4 abs(int4);
84
91
 
92
+ constexpr uint abs(uint V) { return V; }
93
+ constexpr uint2 abs(uint2 V) { return V; }
94
+ constexpr uint3 abs(uint3 V) { return V; }
95
+ constexpr uint4 abs(uint4 V) { return V; }
96
+
85
97
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
86
98
  float abs(float);
87
99
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
@@ -100,6 +112,11 @@ int64_t3 abs(int64_t3);
100
112
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
101
113
  int64_t4 abs(int64_t4);
102
114
 
115
+ constexpr uint64_t abs(uint64_t V) { return V; }
116
+ constexpr uint64_t2 abs(uint64_t2 V) { return V; }
117
+ constexpr uint64_t3 abs(uint64_t3 V) { return V; }
118
+ constexpr uint64_t4 abs(uint64_t4 V) { return V; }
119
+
103
120
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
104
121
  double abs(double);
105
122
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_abs)
@@ -117,16 +134,18 @@ double4 abs(double4);
117
134
  /// \brief Returns the arccosine of the input value, \a Val.
118
135
  /// \param Val The input value.
119
136
 
120
- #ifdef __HLSL_ENABLE_16_BIT
137
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
121
138
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
122
139
  half acos(half);
140
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
123
141
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
124
142
  half2 acos(half2);
143
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
125
144
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
126
145
  half3 acos(half3);
146
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
127
147
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
128
148
  half4 acos(half4);
129
- #endif
130
149
 
131
150
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
132
151
  float acos(float);
@@ -137,6 +156,27 @@ float3 acos(float3);
137
156
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_acos)
138
157
  float4 acos(float4);
139
158
 
159
+ //===----------------------------------------------------------------------===//
160
+ // AddUint64 builtins
161
+ //===----------------------------------------------------------------------===//
162
+
163
+ /// \fn T AddUint64(T a, T b)
164
+ /// \brief Implements unsigned 64-bit integer addition using pairs of unsigned
165
+ /// 32-bit integers.
166
+ /// \param x [in] The first unsigned 32-bit integer pair(s)
167
+ /// \param y [in] The second unsigned 32-bit integer pair(s)
168
+ ///
169
+ /// This function takes one or two pairs (low, high) of unsigned 32-bit integer
170
+ /// values and returns pairs (low, high) of unsigned 32-bit integer
171
+ /// values representing the result of unsigned 64-bit integer addition.
172
+
173
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
174
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_adduint64)
175
+ uint32_t2 AddUint64(uint32_t2, uint32_t2);
176
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
177
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_adduint64)
178
+ uint32_t4 AddUint64(uint32_t4, uint32_t4);
179
+
140
180
  //===----------------------------------------------------------------------===//
141
181
  // all builtins
142
182
  //===----------------------------------------------------------------------===//
@@ -249,6 +289,28 @@ bool all(double3);
249
289
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_all)
250
290
  bool all(double4);
251
291
 
292
+ //===----------------------------------------------------------------------===//
293
+ // and builtins
294
+ //===----------------------------------------------------------------------===//
295
+
296
+ /// \fn bool and(bool x, bool y)
297
+ /// \brief Logically ands two boolean vectors elementwise and produces a bool
298
+ /// vector output.
299
+
300
+ // TODO: Clean up clang-format marker once we've resolved
301
+ // https://github.com/llvm/llvm-project/issues/127851
302
+ //
303
+ // clang-format off
304
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
305
+ bool and(bool x, bool y);
306
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
307
+ bool2 and(bool2 x, bool2 y);
308
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
309
+ bool3 and(bool3 x, bool3 y);
310
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
311
+ bool4 and(bool4 x, bool4 y);
312
+ // clang-format on
313
+
252
314
  //===----------------------------------------------------------------------===//
253
315
  // any builtins
254
316
  //===----------------------------------------------------------------------===//
@@ -379,39 +441,6 @@ double3 asdouble(uint3, uint3);
379
441
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_asdouble)
380
442
  double4 asdouble(uint4, uint4);
381
443
 
382
- //===----------------------------------------------------------------------===//
383
- // asfloat builtins
384
- //===----------------------------------------------------------------------===//
385
-
386
- /// \fn float asfloat(T Val)
387
- /// \brief Interprets the bit pattern of x as float point number.
388
- /// \param Val The input value.
389
-
390
- template <typename T, int N>
391
- constexpr vector<float, N> asfloat(vector<T, N> V) {
392
- return __detail::bit_cast<float, T, N>(V);
393
- }
394
-
395
- template <typename T> constexpr float asfloat(T F) {
396
- return __detail::bit_cast<float, T>(F);
397
- }
398
-
399
- //===----------------------------------------------------------------------===//
400
- // asint builtins
401
- //===----------------------------------------------------------------------===//
402
-
403
- /// \fn int asint(T Val)
404
- /// \brief Interprets the bit pattern of x as an integer.
405
- /// \param Val The input value.
406
-
407
- template <typename T, int N> constexpr vector<int, N> asint(vector<T, N> V) {
408
- return __detail::bit_cast<int, T, N>(V);
409
- }
410
-
411
- template <typename T> constexpr int asint(T F) {
412
- return __detail::bit_cast<int, T>(F);
413
- }
414
-
415
444
  //===----------------------------------------------------------------------===//
416
445
  // asin builtins
417
446
  //===----------------------------------------------------------------------===//
@@ -420,16 +449,18 @@ template <typename T> constexpr int asint(T F) {
420
449
  /// \brief Returns the arcsine of the input value, \a Val.
421
450
  /// \param Val The input value.
422
451
 
423
- #ifdef __HLSL_ENABLE_16_BIT
452
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
424
453
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
425
454
  half asin(half);
455
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
426
456
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
427
457
  half2 asin(half2);
458
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
428
459
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
429
460
  half3 asin(half3);
461
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
430
462
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
431
463
  half4 asin(half4);
432
- #endif
433
464
 
434
465
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
435
466
  float asin(float);
@@ -440,40 +471,6 @@ float3 asin(float3);
440
471
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
441
472
  float4 asin(float4);
442
473
 
443
- //===----------------------------------------------------------------------===//
444
- // asuint builtins
445
- //===----------------------------------------------------------------------===//
446
-
447
- /// \fn uint asuint(T Val)
448
- /// \brief Interprets the bit pattern of x as an unsigned integer.
449
- /// \param Val The input value.
450
-
451
- template <typename T, int N> constexpr vector<uint, N> asuint(vector<T, N> V) {
452
- return __detail::bit_cast<uint, T, N>(V);
453
- }
454
-
455
- template <typename T> constexpr uint asuint(T F) {
456
- return __detail::bit_cast<uint, T>(F);
457
- }
458
-
459
- //===----------------------------------------------------------------------===//
460
- // asuint splitdouble builtins
461
- //===----------------------------------------------------------------------===//
462
-
463
- /// \fn void asuint(double D, out uint lowbits, out int highbits)
464
- /// \brief Split and interprets the lowbits and highbits of double D into uints.
465
- /// \param D The input double.
466
- /// \param lowbits The output lowbits of D.
467
- /// \param highbits The output highbits of D.
468
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_splitdouble)
469
- void asuint(double, out uint, out uint);
470
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_splitdouble)
471
- void asuint(double2, out uint2, out uint2);
472
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_splitdouble)
473
- void asuint(double3, out uint3, out uint3);
474
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_splitdouble)
475
- void asuint(double4, out uint4, out uint4);
476
-
477
474
  //===----------------------------------------------------------------------===//
478
475
  // atan builtins
479
476
  //===----------------------------------------------------------------------===//
@@ -482,16 +479,18 @@ void asuint(double4, out uint4, out uint4);
482
479
  /// \brief Returns the arctangent of the input value, \a Val.
483
480
  /// \param Val The input value.
484
481
 
485
- #ifdef __HLSL_ENABLE_16_BIT
482
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
486
483
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
487
484
  half atan(half);
485
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
488
486
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
489
487
  half2 atan(half2);
488
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
490
489
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
491
490
  half3 atan(half3);
491
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
492
492
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
493
493
  half4 atan(half4);
494
- #endif
495
494
 
496
495
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
497
496
  float atan(float);
@@ -512,16 +511,18 @@ float4 atan(float4);
512
511
  /// \param y The y-coordinate.
513
512
  /// \param x The x-coordinate.
514
513
 
515
- #ifdef __HLSL_ENABLE_16_BIT
514
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
516
515
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
517
516
  half atan2(half y, half x);
517
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
518
518
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
519
519
  half2 atan2(half2 y, half2 x);
520
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
520
521
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
521
522
  half3 atan2(half3 y, half3 x);
523
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
522
524
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
523
525
  half4 atan2(half4 y, half4 x);
524
- #endif
525
526
 
526
527
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
527
528
  float atan2(float y, float x);
@@ -728,16 +729,18 @@ float4 cos(float4);
728
729
  /// \brief Returns the hyperbolic cosine of the input value, \a Val.
729
730
  /// \param Val The input value.
730
731
 
731
- #ifdef __HLSL_ENABLE_16_BIT
732
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
732
733
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
733
734
  half cosh(half);
735
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
734
736
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
735
737
  half2 cosh(half2);
738
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
736
739
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
737
740
  half3 cosh(half3);
741
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
738
742
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
739
743
  half4 cosh(half4);
740
- #endif
741
744
 
742
745
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
743
746
  float cosh(float);
@@ -871,35 +874,6 @@ float3 degrees(float3);
871
874
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees)
872
875
  float4 degrees(float4);
873
876
 
874
- //===----------------------------------------------------------------------===//
875
- // distance builtins
876
- //===----------------------------------------------------------------------===//
877
-
878
- /// \fn K distance(T X, T Y)
879
- /// \brief Returns a distance scalar between \a X and \a Y.
880
- /// \param X The X input value.
881
- /// \param Y The Y input value.
882
-
883
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
884
- const inline half distance(half X, half Y) {
885
- return __detail::distance_impl(X, Y);
886
- }
887
-
888
- const inline float distance(float X, float Y) {
889
- return __detail::distance_impl(X, Y);
890
- }
891
-
892
- template <int N>
893
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
894
- const inline half distance(vector<half, N> X, vector<half, N> Y) {
895
- return __detail::distance_vec_impl(X, Y);
896
- }
897
-
898
- template <int N>
899
- const inline float distance(vector<float, N> X, vector<float, N> Y) {
900
- return __detail::distance_vec_impl(X, Y);
901
- }
902
-
903
877
  //===----------------------------------------------------------------------===//
904
878
  // dot product builtins
905
879
  //===----------------------------------------------------------------------===//
@@ -1253,40 +1227,6 @@ float3 floor(float3);
1253
1227
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor)
1254
1228
  float4 floor(float4);
1255
1229
 
1256
- //===----------------------------------------------------------------------===//
1257
- // fmod builtins
1258
- //===----------------------------------------------------------------------===//
1259
-
1260
- /// \fn T fmod(T x, T y)
1261
- /// \brief Returns the linear interpolation of x to y.
1262
- /// \param x [in] The dividend.
1263
- /// \param y [in] The divisor.
1264
- ///
1265
- /// Return the floating-point remainder of the x parameter divided by the y
1266
- /// parameter.
1267
-
1268
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1269
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1270
- half fmod(half, half);
1271
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1272
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1273
- half2 fmod(half2, half2);
1274
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1275
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1276
- half3 fmod(half3, half3);
1277
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1278
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1279
- half4 fmod(half4, half4);
1280
-
1281
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1282
- float fmod(float, float);
1283
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1284
- float2 fmod(float2, float2);
1285
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1286
- float3 fmod(float3, float3);
1287
- _HLSL_BUILTIN_ALIAS(__builtin_elementwise_fmod)
1288
- float4 fmod(float4, float4);
1289
-
1290
1230
  //===----------------------------------------------------------------------===//
1291
1231
  // frac builtins
1292
1232
  //===----------------------------------------------------------------------===//
@@ -1388,30 +1328,6 @@ float3 lerp(float3, float3, float3);
1388
1328
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp)
1389
1329
  float4 lerp(float4, float4, float4);
1390
1330
 
1391
- //===----------------------------------------------------------------------===//
1392
- // length builtins
1393
- //===----------------------------------------------------------------------===//
1394
-
1395
- /// \fn T length(T x)
1396
- /// \brief Returns the length of the specified floating-point vector.
1397
- /// \param x [in] The vector of floats, or a scalar float.
1398
- ///
1399
- /// Length is based on the following formula: sqrt(x[0]^2 + x[1]^2 + ...).
1400
-
1401
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1402
- const inline half length(half X) { return __detail::length_impl(X); }
1403
- const inline float length(float X) { return __detail::length_impl(X); }
1404
-
1405
- template <int N>
1406
- _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1407
- const inline half length(vector<half, N> X) {
1408
- return __detail::length_vec_impl(X);
1409
- }
1410
-
1411
- template <int N> const inline float length(vector<float, N> X) {
1412
- return __detail::length_vec_impl(X);
1413
- }
1414
-
1415
1331
  //===----------------------------------------------------------------------===//
1416
1332
  // log builtins
1417
1333
  //===----------------------------------------------------------------------===//
@@ -1856,6 +1772,28 @@ float3 normalize(float3);
1856
1772
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize)
1857
1773
  float4 normalize(float4);
1858
1774
 
1775
+ //===----------------------------------------------------------------------===//
1776
+ // or builtins
1777
+ //===----------------------------------------------------------------------===//
1778
+
1779
+ /// \fn bool or(bool x, bool y)
1780
+ /// \brief Logically ors two boolean vectors elementwise and produces a bool
1781
+ /// vector output.
1782
+
1783
+ // TODO: Clean up clang-format marker once we've resolved
1784
+ // https://github.com/llvm/llvm-project/issues/127851
1785
+ //
1786
+ // clang-format off
1787
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
1788
+ bool or(bool, bool);
1789
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
1790
+ bool2 or(bool2, bool2);
1791
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
1792
+ bool3 or(bool3, bool3);
1793
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
1794
+ bool4 or(bool4, bool4);
1795
+ // clang-format on
1796
+
1859
1797
  //===----------------------------------------------------------------------===//
1860
1798
  // pow builtins
1861
1799
  //===----------------------------------------------------------------------===//
@@ -1944,29 +1882,12 @@ uint64_t4 reversebits(uint64_t4);
1944
1882
  /// x[0] * y[1] - y[0] * x[1]
1945
1883
 
1946
1884
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
1947
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_cross)
1885
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_crossf16)
1948
1886
  half3 cross(half3, half3);
1949
1887
 
1950
- _HLSL_BUILTIN_ALIAS(__builtin_hlsl_cross)
1888
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_crossf32)
1951
1889
  float3 cross(float3, float3);
1952
1890
 
1953
- //===----------------------------------------------------------------------===//
1954
- // D3DCOLORtoUBYTE4 builtin
1955
- //===----------------------------------------------------------------------===//
1956
-
1957
- /// \fn T D3DCOLORtoUBYTE4(T x)
1958
- /// \brief Converts a floating-point, 4D vector set by a D3DCOLOR to a UBYTE4.
1959
- /// \param x [in] The floating-point vector4 to convert.
1960
- ///
1961
- /// The return value is the UBYTE4 representation of the \a x parameter.
1962
- ///
1963
- /// This function swizzles and scales components of the \a x parameter. Use this
1964
- /// function to compensate for the lack of UBYTE4 support in some hardware.
1965
-
1966
- constexpr vector<uint, 4> D3DCOLORtoUBYTE4(vector<float, 4> V) {
1967
- return __detail::d3d_color_to_ubyte4_impl(V);
1968
- }
1969
-
1970
1891
  //===----------------------------------------------------------------------===//
1971
1892
  // rcp builtins
1972
1893
  //===----------------------------------------------------------------------===//
@@ -2140,6 +2061,41 @@ template <typename T, int Sz>
2140
2061
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
2141
2062
  vector<T, Sz> select(vector<bool, Sz>, vector<T, Sz>, vector<T, Sz>);
2142
2063
 
2064
+ /// \fn vector<T,Sz> select(vector<bool,Sz> Conds, T TrueVal,
2065
+ /// vector<T,Sz> FalseVals)
2066
+ /// \brief ternary operator for vectors. All vectors must be the same size.
2067
+ /// \param Conds The Condition input values.
2068
+ /// \param TrueVal The scalar value to splat from when conditions are true.
2069
+ /// \param FalseVals The vector values are chosen from when conditions are
2070
+ /// false.
2071
+
2072
+ template <typename T, int Sz>
2073
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
2074
+ vector<T, Sz> select(vector<bool, Sz>, T, vector<T, Sz>);
2075
+
2076
+ /// \fn vector<T,Sz> select(vector<bool,Sz> Conds, vector<T,Sz> TrueVals,
2077
+ /// T FalseVal)
2078
+ /// \brief ternary operator for vectors. All vectors must be the same size.
2079
+ /// \param Conds The Condition input values.
2080
+ /// \param TrueVals The vector values are chosen from when conditions are true.
2081
+ /// \param FalseVal The scalar value to splat from when conditions are false.
2082
+
2083
+ template <typename T, int Sz>
2084
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
2085
+ vector<T, Sz> select(vector<bool, Sz>, vector<T, Sz>, T);
2086
+
2087
+ /// \fn vector<T,Sz> select(vector<bool,Sz> Conds, vector<T,Sz> TrueVals,
2088
+ /// T FalseVal)
2089
+ /// \brief ternary operator for vectors. All vectors must be the same size.
2090
+ /// \param Conds The Condition input values.
2091
+ /// \param TrueVal The scalar value to splat from when conditions are true.
2092
+ /// \param FalseVal The scalar value to splat from when conditions are false.
2093
+
2094
+ template <typename T, int Sz>
2095
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
2096
+ __detail::enable_if_t<__detail::is_arithmetic<T>::Value, vector<T, Sz>> select(
2097
+ vector<bool, Sz>, T, T);
2098
+
2143
2099
  //===----------------------------------------------------------------------===//
2144
2100
  // sin builtins
2145
2101
  //===----------------------------------------------------------------------===//
@@ -2178,16 +2134,18 @@ float4 sin(float4);
2178
2134
  /// \brief Returns the hyperbolic sine of the input value, \a Val.
2179
2135
  /// \param Val The input value.
2180
2136
 
2181
- #ifdef __HLSL_ENABLE_16_BIT
2137
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2182
2138
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
2183
2139
  half sinh(half);
2140
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2184
2141
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
2185
2142
  half2 sinh(half2);
2143
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2186
2144
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
2187
2145
  half3 sinh(half3);
2146
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2188
2147
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
2189
2148
  half4 sinh(half4);
2190
- #endif
2191
2149
 
2192
2150
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
2193
2151
  float sinh(float);
@@ -2269,16 +2227,18 @@ float4 step(float4, float4);
2269
2227
  /// \brief Returns the tangent of the input value, \a Val.
2270
2228
  /// \param Val The input value.
2271
2229
 
2272
- #ifdef __HLSL_ENABLE_16_BIT
2230
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2273
2231
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
2274
2232
  half tan(half);
2233
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2275
2234
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
2276
2235
  half2 tan(half2);
2236
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2277
2237
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
2278
2238
  half3 tan(half3);
2239
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2279
2240
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
2280
2241
  half4 tan(half4);
2281
- #endif
2282
2242
 
2283
2243
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
2284
2244
  float tan(float);
@@ -2297,16 +2257,18 @@ float4 tan(float4);
2297
2257
  /// \brief Returns the hyperbolic tangent of the input value, \a Val.
2298
2258
  /// \param Val The input value.
2299
2259
 
2300
- #ifdef __HLSL_ENABLE_16_BIT
2260
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2301
2261
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
2302
2262
  half tanh(half);
2263
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2303
2264
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
2304
2265
  half2 tanh(half2);
2266
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2305
2267
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
2306
2268
  half3 tanh(half3);
2269
+ _HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
2307
2270
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
2308
2271
  half4 tanh(half4);
2309
- #endif
2310
2272
 
2311
2273
  _HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
2312
2274
  float tanh(float);
@@ -2388,6 +2350,10 @@ _HLSL_AVAILABILITY(shadermodel, 6.0)
2388
2350
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_is_first_lane)
2389
2351
  __attribute__((convergent)) bool WaveIsFirstLane();
2390
2352
 
2353
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
2354
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_get_lane_count)
2355
+ __attribute__((convergent)) uint WaveGetLaneCount();
2356
+
2391
2357
  //===----------------------------------------------------------------------===//
2392
2358
  // WaveReadLaneAt builtins
2393
2359
  //===----------------------------------------------------------------------===//
@@ -2396,77 +2362,108 @@ __attribute__((convergent)) bool WaveIsFirstLane();
2396
2362
  // the specified wave.
2397
2363
 
2398
2364
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2399
- __attribute__((convergent)) bool WaveReadLaneAt(bool, int32_t);
2365
+ __attribute__((convergent)) bool WaveReadLaneAt(bool, uint32_t);
2400
2366
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2401
- __attribute__((convergent)) bool2 WaveReadLaneAt(bool2, int32_t);
2367
+ __attribute__((convergent)) bool2 WaveReadLaneAt(bool2, uint32_t);
2402
2368
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2403
- __attribute__((convergent)) bool3 WaveReadLaneAt(bool3, int32_t);
2369
+ __attribute__((convergent)) bool3 WaveReadLaneAt(bool3, uint32_t);
2404
2370
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2405
- __attribute__((convergent)) bool4 WaveReadLaneAt(bool4, int32_t);
2371
+ __attribute__((convergent)) bool4 WaveReadLaneAt(bool4, uint32_t);
2406
2372
 
2407
2373
  #ifdef __HLSL_ENABLE_16_BIT
2408
2374
  _HLSL_AVAILABILITY(shadermodel, 6.0)
2409
2375
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2410
- __attribute__((convergent)) int16_t WaveReadLaneAt(int16_t, int32_t);
2376
+ __attribute__((convergent)) int16_t WaveReadLaneAt(int16_t, uint32_t);
2377
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
2378
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2379
+ __attribute__((convergent)) int16_t2 WaveReadLaneAt(int16_t2, uint32_t);
2380
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
2381
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2382
+ __attribute__((convergent)) int16_t3 WaveReadLaneAt(int16_t3, uint32_t);
2383
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
2384
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2385
+ __attribute__((convergent)) int16_t4 WaveReadLaneAt(int16_t4, uint32_t);
2386
+
2387
+ _HLSL_AVAILABILITY(shadermodel, 6.0)
2388
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2389
+ __attribute__((convergent)) uint16_t WaveReadLaneAt(uint16_t, uint32_t);
2411
2390
  _HLSL_AVAILABILITY(shadermodel, 6.0)
2412
2391
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2413
- __attribute__((convergent)) int16_t2 WaveReadLaneAt(int16_t2, int32_t);
2392
+ __attribute__((convergent)) uint16_t2 WaveReadLaneAt(uint16_t2, uint32_t);
2414
2393
  _HLSL_AVAILABILITY(shadermodel, 6.0)
2415
2394
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2416
- __attribute__((convergent)) int16_t3 WaveReadLaneAt(int16_t3, int32_t);
2395
+ __attribute__((convergent)) uint16_t3 WaveReadLaneAt(uint16_t3, uint32_t);
2417
2396
  _HLSL_AVAILABILITY(shadermodel, 6.0)
2418
2397
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2419
- __attribute__((convergent)) int16_t4 WaveReadLaneAt(int16_t4, int32_t);
2398
+ __attribute__((convergent)) uint16_t4 WaveReadLaneAt(uint16_t4, uint32_t);
2420
2399
  #endif
2421
2400
 
2422
2401
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
2423
2402
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2424
- __attribute__((convergent)) half WaveReadLaneAt(half, int32_t);
2403
+ __attribute__((convergent)) half WaveReadLaneAt(half, uint32_t);
2425
2404
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
2426
2405
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2427
- __attribute__((convergent)) half2 WaveReadLaneAt(half2, int32_t);
2406
+ __attribute__((convergent)) half2 WaveReadLaneAt(half2, uint32_t);
2428
2407
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
2429
2408
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2430
- __attribute__((convergent)) half3 WaveReadLaneAt(half3, int32_t);
2409
+ __attribute__((convergent)) half3 WaveReadLaneAt(half3, uint32_t);
2431
2410
  _HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
2432
2411
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2433
- __attribute__((convergent)) half4 WaveReadLaneAt(half4, int32_t);
2412
+ __attribute__((convergent)) half4 WaveReadLaneAt(half4, uint32_t);
2413
+
2414
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2415
+ __attribute__((convergent)) int WaveReadLaneAt(int, uint32_t);
2416
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2417
+ __attribute__((convergent)) int2 WaveReadLaneAt(int2, uint32_t);
2418
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2419
+ __attribute__((convergent)) int3 WaveReadLaneAt(int3, uint32_t);
2420
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2421
+ __attribute__((convergent)) int4 WaveReadLaneAt(int4, uint32_t);
2422
+
2423
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2424
+ __attribute__((convergent)) uint WaveReadLaneAt(uint, uint32_t);
2425
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2426
+ __attribute__((convergent)) uint2 WaveReadLaneAt(uint2, uint32_t);
2427
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2428
+ __attribute__((convergent)) uint3 WaveReadLaneAt(uint3, uint32_t);
2429
+ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2430
+ __attribute__((convergent)) uint4 WaveReadLaneAt(uint4, uint32_t);
2434
2431
 
2435
2432
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2436
- __attribute__((convergent)) int WaveReadLaneAt(int, int32_t);
2433
+ __attribute__((convergent)) float WaveReadLaneAt(float, uint32_t);
2437
2434
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2438
- __attribute__((convergent)) int2 WaveReadLaneAt(int2, int32_t);
2435
+ __attribute__((convergent)) float2 WaveReadLaneAt(float2, uint32_t);
2439
2436
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2440
- __attribute__((convergent)) int3 WaveReadLaneAt(int3, int32_t);
2437
+ __attribute__((convergent)) float3 WaveReadLaneAt(float3, uint32_t);
2441
2438
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2442
- __attribute__((convergent)) int4 WaveReadLaneAt(int4, int32_t);
2439
+ __attribute__((convergent)) float4 WaveReadLaneAt(float4, uint32_t);
2443
2440
 
2444
2441
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2445
- __attribute__((convergent)) float WaveReadLaneAt(float, int32_t);
2442
+ __attribute__((convergent)) int64_t WaveReadLaneAt(int64_t, uint32_t);
2446
2443
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2447
- __attribute__((convergent)) float2 WaveReadLaneAt(float2, int32_t);
2444
+ __attribute__((convergent)) int64_t2 WaveReadLaneAt(int64_t2, uint32_t);
2448
2445
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2449
- __attribute__((convergent)) float3 WaveReadLaneAt(float3, int32_t);
2446
+ __attribute__((convergent)) int64_t3 WaveReadLaneAt(int64_t3, uint32_t);
2450
2447
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2451
- __attribute__((convergent)) float4 WaveReadLaneAt(float4, int32_t);
2448
+ __attribute__((convergent)) int64_t4 WaveReadLaneAt(int64_t4, uint32_t);
2452
2449
 
2453
2450
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2454
- __attribute__((convergent)) int64_t WaveReadLaneAt(int64_t, int32_t);
2451
+ __attribute__((convergent)) uint64_t WaveReadLaneAt(uint64_t, uint32_t);
2455
2452
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2456
- __attribute__((convergent)) int64_t2 WaveReadLaneAt(int64_t2, int32_t);
2453
+ __attribute__((convergent)) uint64_t2 WaveReadLaneAt(uint64_t2, uint32_t);
2457
2454
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2458
- __attribute__((convergent)) int64_t3 WaveReadLaneAt(int64_t3, int32_t);
2455
+ __attribute__((convergent)) uint64_t3 WaveReadLaneAt(uint64_t3, uint32_t);
2459
2456
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2460
- __attribute__((convergent)) int64_t4 WaveReadLaneAt(int64_t4, int32_t);
2457
+ __attribute__((convergent)) uint64_t4 WaveReadLaneAt(uint64_t4, uint32_t);
2461
2458
 
2462
2459
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2463
- __attribute__((convergent)) double WaveReadLaneAt(double, int32_t);
2460
+ __attribute__((convergent)) double WaveReadLaneAt(double, uint32_t);
2464
2461
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2465
- __attribute__((convergent)) double2 WaveReadLaneAt(double2, int32_t);
2462
+ __attribute__((convergent)) double2 WaveReadLaneAt(double2, uint32_t);
2466
2463
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2467
- __attribute__((convergent)) double3 WaveReadLaneAt(double3, int32_t);
2464
+ __attribute__((convergent)) double3 WaveReadLaneAt(double3, uint32_t);
2468
2465
  _HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
2469
- __attribute__((convergent)) double4 WaveReadLaneAt(double4, int32_t);
2466
+ __attribute__((convergent)) double4 WaveReadLaneAt(double4, uint32_t);
2470
2467
 
2471
2468
  //===----------------------------------------------------------------------===//
2472
2469
  // WaveActiveMax builtins
@@ -2811,4 +2808,4 @@ _HLSL_BUILTIN_ALIAS(__builtin_hlsl_group_memory_barrier_with_group_sync)
2811
2808
  void GroupMemoryBarrierWithGroupSync(void);
2812
2809
 
2813
2810
  } // namespace hlsl
2814
- #endif //_HLSL_HLSL_INTRINSICS_H_
2811
+ #endif //_HLSL_HLSL_ALIAS_INTRINSICS_H_