@cpp-linter/clang-tidy-win32-x64 21.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 (326) 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/{21 → 23}/include/__clang_cuda_device_functions.h +1 -1
  5. package/lib/clang/{21 → 23}/include/__clang_cuda_intrinsics.h +207 -226
  6. package/lib/clang/{21 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
  7. package/lib/clang/{21 → 23}/include/__clang_cuda_runtime_wrapper.h +27 -5
  8. package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
  9. package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
  10. package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
  11. package/lib/clang/{21 → 23}/include/__clang_hip_libdevice_declares.h +14 -121
  12. package/lib/clang/{21 → 23}/include/__clang_hip_math.h +5 -5
  13. package/lib/clang/{21 → 23}/include/__clang_hip_runtime_wrapper.h +9 -1
  14. package/lib/clang/{21 → 23}/include/__clang_spirv_builtins.h +12 -12
  15. package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
  16. package/lib/clang/23/include/__clang_spirv_math.h +719 -0
  17. package/lib/clang/{21/include/float.h → 23/include/__float_float.h} +13 -24
  18. package/lib/clang/23/include/__float_header_macro.h +12 -0
  19. package/lib/clang/23/include/__float_infinity_nan.h +20 -0
  20. package/lib/clang/{21 → 23}/include/altivec.h +79 -9
  21. package/lib/clang/{21 → 23}/include/amdgpuintrin.h +2 -29
  22. package/lib/clang/23/include/amdhsa_abi.h +83 -0
  23. package/lib/clang/23/include/amo.h +220 -0
  24. package/lib/clang/{21 → 23}/include/amxavx512intrin.h +215 -1
  25. package/lib/clang/{21 → 23}/include/amxintrin.h +0 -2
  26. package/lib/clang/{21 → 23}/include/andes_vector.h +5 -0
  27. package/lib/clang/23/include/arm64_neon.h +21 -0
  28. package/lib/clang/{21 → 23}/include/arm64intr.h +10 -0
  29. package/lib/clang/{21 → 23}/include/arm_acle.h +38 -27
  30. package/lib/clang/{21 → 23}/include/arm_neon.h +4140 -3836
  31. package/lib/clang/{21 → 23}/include/arm_sme.h +20 -8
  32. package/lib/clang/{21 → 23}/include/arm_sve.h +4582 -3782
  33. package/lib/clang/{21 → 23}/include/avx10_2_512bf16intrin.h +19 -12
  34. package/lib/clang/{21 → 23}/include/avx10_2_512convertintrin.h +1 -1
  35. package/lib/clang/{21 → 23}/include/avx10_2_512niintrin.h +25 -25
  36. package/lib/clang/{21 → 23}/include/avx10_2_512satcvtdsintrin.h +1 -1
  37. package/lib/clang/{21 → 23}/include/avx10_2bf16intrin.h +54 -45
  38. package/lib/clang/{21 → 23}/include/avx10_2convertintrin.h +2 -2
  39. package/lib/clang/{21 → 23}/include/avx10_2copyintrin.h +1 -1
  40. package/lib/clang/{21 → 23}/include/avx10_2niintrin.h +2 -2
  41. package/lib/clang/{21 → 23}/include/avx10_2satcvtdsintrin.h +2 -2
  42. package/lib/clang/{21 → 23}/include/avx2intrin.h +279 -382
  43. package/lib/clang/{21 → 23}/include/avx512bf16intrin.h +25 -16
  44. package/lib/clang/{21 → 23}/include/avx512bitalgintrin.h +19 -30
  45. package/lib/clang/23/include/avx512bmmintrin.h +174 -0
  46. package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
  47. package/lib/clang/{21 → 23}/include/avx512bwintrin.h +405 -534
  48. package/lib/clang/23/include/avx512cdintrin.h +112 -0
  49. package/lib/clang/{21 → 23}/include/avx512dqintrin.h +132 -161
  50. package/lib/clang/{21 → 23}/include/avx512fintrin.h +1049 -1485
  51. package/lib/clang/{21 → 23}/include/avx512fp16intrin.h +124 -128
  52. package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
  53. package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
  54. package/lib/clang/{21 → 23}/include/avx512vbmi2intrin.h +55 -48
  55. package/lib/clang/{21 → 23}/include/avx512vbmiintrin.h +19 -27
  56. package/lib/clang/{21 → 23}/include/avx512vbmivlintrin.h +35 -49
  57. package/lib/clang/{21 → 23}/include/avx512vlbf16intrin.h +32 -22
  58. package/lib/clang/{21 → 23}/include/avx512vlbitalgintrin.h +37 -53
  59. package/lib/clang/{21 → 23}/include/avx512vlbwintrin.h +494 -609
  60. package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
  61. package/lib/clang/{21 → 23}/include/avx512vldqintrin.h +110 -127
  62. package/lib/clang/{21 → 23}/include/avx512vlfp16intrin.h +130 -111
  63. package/lib/clang/{21 → 23}/include/avx512vlintrin.h +1025 -1395
  64. package/lib/clang/{21 → 23}/include/avx512vlvbmi2intrin.h +102 -95
  65. package/lib/clang/{21 → 23}/include/avx512vlvnniintrin.h +50 -52
  66. package/lib/clang/{21 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
  67. package/lib/clang/{21 → 23}/include/avx512vnniintrin.h +42 -45
  68. package/lib/clang/{21 → 23}/include/avx512vp2intersectintrin.h +2 -3
  69. package/lib/clang/{21 → 23}/include/avx512vpopcntdqintrin.h +8 -10
  70. package/lib/clang/{21 → 23}/include/avx512vpopcntdqvlintrin.h +17 -15
  71. package/lib/clang/{21 → 23}/include/avxifmaintrin.h +16 -0
  72. package/lib/clang/{21 → 23}/include/avxintrin.h +165 -241
  73. package/lib/clang/{21 → 23}/include/avxvnniint16intrin.h +118 -99
  74. package/lib/clang/{21 → 23}/include/avxvnniint8intrin.h +56 -32
  75. package/lib/clang/{21 → 23}/include/avxvnniintrin.h +39 -26
  76. package/lib/clang/{21 → 23}/include/cpuid.h +101 -4
  77. package/lib/clang/{21 → 23}/include/crc32intrin.h +10 -8
  78. package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
  79. package/lib/clang/{21 → 23}/include/emmintrin.h +176 -176
  80. package/lib/clang/23/include/endian.h +91 -0
  81. package/lib/clang/{21 → 23}/include/f16cintrin.h +23 -9
  82. package/lib/clang/23/include/float.h +48 -0
  83. package/lib/clang/23/include/fma4intrin.h +220 -0
  84. package/lib/clang/{21 → 23}/include/fmaintrin.h +96 -66
  85. package/lib/clang/{21 → 23}/include/gfniintrin.h +21 -16
  86. package/lib/clang/{21 → 23}/include/gpuintrin.h +129 -109
  87. package/lib/clang/{21 → 23}/include/hexagon_types.h +23 -20
  88. package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
  89. package/lib/clang/{21/include/hlsl/hlsl_alias_intrinsics.h → 23/include/hlsl/hlsl_alias_intrinsics_gen.inc} +2090 -1032
  90. package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
  91. package/lib/clang/{21 → 23}/include/hlsl/hlsl_compat_overloads.h +150 -18
  92. package/lib/clang/{21 → 23}/include/hlsl/hlsl_detail.h +6 -4
  93. package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
  94. package/lib/clang/{21 → 23}/include/hlsl/hlsl_intrinsic_helpers.h +71 -45
  95. package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
  96. package/lib/clang/{21 → 23}/include/hvx_hexagon_protos.h +724 -913
  97. package/lib/clang/{21 → 23}/include/immintrin.h +4 -14
  98. package/lib/clang/{21 → 23}/include/intrin.h +24 -10
  99. package/lib/clang/{21 → 23}/include/larchintrin.h +2 -0
  100. package/lib/clang/{21 → 23}/include/lasxintrin.h +113 -0
  101. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
  102. package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
  103. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
  104. package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
  105. package/lib/clang/23/include/llvm_libc_wrappers/stdlib.h +32 -0
  106. package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
  107. package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/time.h +4 -10
  108. package/lib/clang/{21 → 23}/include/mmintrin.h +188 -257
  109. package/lib/clang/{21 → 23}/include/module.modulemap +39 -5
  110. package/lib/clang/{21 → 23}/include/movrs_avx10_2_512intrin.h +2 -2
  111. package/lib/clang/{21 → 23}/include/movrs_avx10_2intrin.h +4 -4
  112. package/lib/clang/{21 → 23}/include/nvptxintrin.h +15 -26
  113. package/lib/clang/{21 → 23}/include/opencl-c-base.h +7 -93
  114. package/lib/clang/{21 → 23}/include/opencl-c.h +225 -118
  115. package/lib/clang/{21 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +14 -0
  116. package/lib/clang/{21 → 23}/include/openmp_wrappers/complex +7 -1
  117. package/lib/clang/{21 → 23}/include/openmp_wrappers/complex.h +6 -0
  118. package/lib/clang/{21 → 23}/include/openmp_wrappers/math.h +10 -0
  119. package/lib/clang/{21 → 23}/include/pmmintrin.h +12 -24
  120. package/lib/clang/{21 → 23}/include/ptrauth.h +104 -12
  121. package/lib/clang/{21 → 23}/include/riscv_bitmanip.h +7 -0
  122. package/lib/clang/{21 → 23}/include/riscv_corev_alu.h +2 -0
  123. package/lib/clang/{21 → 23}/include/riscv_crypto.h +8 -0
  124. package/lib/clang/23/include/riscv_mips.h +36 -0
  125. package/lib/clang/23/include/riscv_nds.h +92 -0
  126. package/lib/clang/{21 → 23}/include/riscv_ntlh.h +2 -0
  127. package/lib/clang/23/include/riscv_packed_simd.h +644 -0
  128. package/lib/clang/{21 → 23}/include/riscv_vector.h +43 -0
  129. package/lib/clang/{21 → 23}/include/sifive_vector.h +76 -2
  130. package/lib/clang/{21 → 23}/include/sm4evexintrin.h +2 -2
  131. package/lib/clang/{21 → 23}/include/smmintrin.h +77 -59
  132. package/lib/clang/23/include/spirvintrin.h +167 -0
  133. package/lib/clang/23/include/stddefer.h +19 -0
  134. package/lib/clang/{21 → 23}/include/stdint.h +5 -14
  135. package/lib/clang/{21 → 23}/include/tmmintrin.h +116 -147
  136. package/lib/clang/{21 → 23}/include/vaesintrin.h +1 -2
  137. package/lib/clang/{21 → 23}/include/vecintrin.h +1 -1
  138. package/lib/clang/{21 → 23}/include/wasm_simd128.h +17 -0
  139. package/lib/clang/{21 → 23}/include/xmmintrin.h +50 -75
  140. package/lib/clang/{21 → 23}/include/xopintrin.h +20 -10
  141. package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
  142. package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
  143. package/lib/clang/23/include/zos_wrappers/math.h +31 -0
  144. package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
  145. package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
  146. package/lib/clang/23/include/zos_wrappers/string.h +19 -0
  147. package/lib/clang/23/include/zos_wrappers/time.h +19 -0
  148. package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
  149. package/package.json +6 -6
  150. package/lib/clang/21/include/__clang_cuda_complex_builtins.h +0 -285
  151. package/lib/clang/21/include/amxbf16transposeintrin.h +0 -94
  152. package/lib/clang/21/include/amxcomplextransposeintrin.h +0 -303
  153. package/lib/clang/21/include/amxfp16transposeintrin.h +0 -94
  154. package/lib/clang/21/include/amxmovrstransposeintrin.h +0 -200
  155. package/lib/clang/21/include/amxtf32intrin.h +0 -108
  156. package/lib/clang/21/include/amxtf32transposeintrin.h +0 -105
  157. package/lib/clang/21/include/amxtransposeintrin.h +0 -248
  158. package/lib/clang/21/include/avx512cdintrin.h +0 -125
  159. package/lib/clang/21/include/avx512ifmaintrin.h +0 -70
  160. package/lib/clang/21/include/avx512ifmavlintrin.h +0 -111
  161. package/lib/clang/21/include/avx512vlcdintrin.h +0 -230
  162. package/lib/clang/21/include/fma4intrin.h +0 -218
  163. package/lib/clang/21/include/hlsl/hlsl_basic_types.h +0 -120
  164. package/lib/clang/21/include/hlsl/hlsl_intrinsics.h +0 -526
  165. package/lib/clang/21/include/llvm_libc_wrappers/ctype.h +0 -140
  166. package/lib/clang/21/include/llvm_libc_wrappers/stdio.h +0 -80
  167. package/lib/clang/21/include/llvm_libc_wrappers/stdlib.h +0 -53
  168. package/lib/clang/21/include/llvm_libc_wrappers/string.h +0 -96
  169. /package/lib/clang/{21 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
  170. /package/lib/clang/{21 → 23}/include/__clang_cuda_cmath.h +0 -0
  171. /package/lib/clang/{21 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
  172. /package/lib/clang/{21 → 23}/include/__clang_cuda_math.h +0 -0
  173. /package/lib/clang/{21 → 23}/include/__clang_cuda_texture_intrinsics.h +0 -0
  174. /package/lib/clang/{21 → 23}/include/__clang_hip_cmath.h +0 -0
  175. /package/lib/clang/{21 → 23}/include/__clang_hip_stdlib.h +0 -0
  176. /package/lib/clang/{21 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
  177. /package/lib/clang/{21 → 23}/include/__stdarg___va_copy.h +0 -0
  178. /package/lib/clang/{21 → 23}/include/__stdarg_header_macro.h +0 -0
  179. /package/lib/clang/{21 → 23}/include/__stdarg_va_arg.h +0 -0
  180. /package/lib/clang/{21 → 23}/include/__stdarg_va_copy.h +0 -0
  181. /package/lib/clang/{21 → 23}/include/__stdarg_va_list.h +0 -0
  182. /package/lib/clang/{21 → 23}/include/__stddef_header_macro.h +0 -0
  183. /package/lib/clang/{21 → 23}/include/__stddef_max_align_t.h +0 -0
  184. /package/lib/clang/{21 → 23}/include/__stddef_null.h +0 -0
  185. /package/lib/clang/{21 → 23}/include/__stddef_nullptr_t.h +0 -0
  186. /package/lib/clang/{21 → 23}/include/__stddef_offsetof.h +0 -0
  187. /package/lib/clang/{21 → 23}/include/__stddef_ptrdiff_t.h +0 -0
  188. /package/lib/clang/{21 → 23}/include/__stddef_rsize_t.h +0 -0
  189. /package/lib/clang/{21 → 23}/include/__stddef_size_t.h +0 -0
  190. /package/lib/clang/{21 → 23}/include/__stddef_unreachable.h +0 -0
  191. /package/lib/clang/{21 → 23}/include/__stddef_wchar_t.h +0 -0
  192. /package/lib/clang/{21 → 23}/include/__stddef_wint_t.h +0 -0
  193. /package/lib/clang/{21 → 23}/include/__wmmintrin_aes.h +0 -0
  194. /package/lib/clang/{21 → 23}/include/__wmmintrin_pclmul.h +0 -0
  195. /package/lib/clang/{21 → 23}/include/adcintrin.h +0 -0
  196. /package/lib/clang/{21 → 23}/include/adxintrin.h +0 -0
  197. /package/lib/clang/{21 → 23}/include/ammintrin.h +0 -0
  198. /package/lib/clang/{21 → 23}/include/amxcomplexintrin.h +0 -0
  199. /package/lib/clang/{21 → 23}/include/amxfp16intrin.h +0 -0
  200. /package/lib/clang/{21 → 23}/include/amxfp8intrin.h +0 -0
  201. /package/lib/clang/{21 → 23}/include/amxmovrsintrin.h +0 -0
  202. /package/lib/clang/{21 → 23}/include/arm_bf16.h +0 -0
  203. /package/lib/clang/{21 → 23}/include/arm_cde.h +0 -0
  204. /package/lib/clang/{21 → 23}/include/arm_cmse.h +0 -0
  205. /package/lib/clang/{21 → 23}/include/arm_fp16.h +0 -0
  206. /package/lib/clang/{21 → 23}/include/arm_mve.h +0 -0
  207. /package/lib/clang/{21 → 23}/include/arm_neon_sve_bridge.h +0 -0
  208. /package/lib/clang/{21 → 23}/include/arm_vector_types.h +0 -0
  209. /package/lib/clang/{21 → 23}/include/armintr.h +0 -0
  210. /package/lib/clang/{21 → 23}/include/avx10_2_512minmaxintrin.h +0 -0
  211. /package/lib/clang/{21 → 23}/include/avx10_2_512satcvtintrin.h +0 -0
  212. /package/lib/clang/{21 → 23}/include/avx10_2minmaxintrin.h +0 -0
  213. /package/lib/clang/{21 → 23}/include/avx10_2satcvtintrin.h +0 -0
  214. /package/lib/clang/{21 → 23}/include/avxneconvertintrin.h +0 -0
  215. /package/lib/clang/{21 → 23}/include/bmi2intrin.h +0 -0
  216. /package/lib/clang/{21 → 23}/include/bmiintrin.h +0 -0
  217. /package/lib/clang/{21 → 23}/include/builtins.h +0 -0
  218. /package/lib/clang/{21 → 23}/include/cet.h +0 -0
  219. /package/lib/clang/{21 → 23}/include/cetintrin.h +0 -0
  220. /package/lib/clang/{21 → 23}/include/cldemoteintrin.h +0 -0
  221. /package/lib/clang/{21 → 23}/include/clflushoptintrin.h +0 -0
  222. /package/lib/clang/{21 → 23}/include/clwbintrin.h +0 -0
  223. /package/lib/clang/{21 → 23}/include/clzerointrin.h +0 -0
  224. /package/lib/clang/{21 → 23}/include/cmpccxaddintrin.h +0 -0
  225. /package/lib/clang/{21 → 23}/include/cuda_wrappers/algorithm +0 -0
  226. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
  227. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
  228. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/c++config.h +0 -0
  229. /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
  230. /package/lib/clang/{21 → 23}/include/cuda_wrappers/cmath +0 -0
  231. /package/lib/clang/{21 → 23}/include/cuda_wrappers/complex +0 -0
  232. /package/lib/clang/{21 → 23}/include/cuda_wrappers/new +0 -0
  233. /package/lib/clang/{21 → 23}/include/enqcmdintrin.h +0 -0
  234. /package/lib/clang/{21 → 23}/include/fxsrintrin.h +0 -0
  235. /package/lib/clang/{21 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
  236. /package/lib/clang/{21 → 23}/include/hexagon_protos.h +0 -0
  237. /package/lib/clang/{21 → 23}/include/hlsl/hlsl_spirv.h +0 -0
  238. /package/lib/clang/{21 → 23}/include/hlsl.h +0 -0
  239. /package/lib/clang/{21 → 23}/include/hresetintrin.h +0 -0
  240. /package/lib/clang/{21 → 23}/include/htmintrin.h +0 -0
  241. /package/lib/clang/{21 → 23}/include/htmxlintrin.h +0 -0
  242. /package/lib/clang/{21 → 23}/include/ia32intrin.h +0 -0
  243. /package/lib/clang/{21 → 23}/include/intrin0.h +0 -0
  244. /package/lib/clang/{21 → 23}/include/inttypes.h +0 -0
  245. /package/lib/clang/{21 → 23}/include/invpcidintrin.h +0 -0
  246. /package/lib/clang/{21 → 23}/include/iso646.h +0 -0
  247. /package/lib/clang/{21 → 23}/include/keylockerintrin.h +0 -0
  248. /package/lib/clang/{21 → 23}/include/limits.h +0 -0
  249. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
  250. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
  251. /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
  252. /package/lib/clang/{21 → 23}/include/lsxintrin.h +0 -0
  253. /package/lib/clang/{21 → 23}/include/lwpintrin.h +0 -0
  254. /package/lib/clang/{21 → 23}/include/lzcntintrin.h +0 -0
  255. /package/lib/clang/{21 → 23}/include/mm3dnow.h +0 -0
  256. /package/lib/clang/{21 → 23}/include/mm_malloc.h +0 -0
  257. /package/lib/clang/{21 → 23}/include/movdirintrin.h +0 -0
  258. /package/lib/clang/{21 → 23}/include/movrsintrin.h +0 -0
  259. /package/lib/clang/{21 → 23}/include/msa.h +0 -0
  260. /package/lib/clang/{21 → 23}/include/mwaitxintrin.h +0 -0
  261. /package/lib/clang/{21 → 23}/include/nmmintrin.h +0 -0
  262. /package/lib/clang/{21 → 23}/include/openmp_wrappers/cmath +0 -0
  263. /package/lib/clang/{21 → 23}/include/openmp_wrappers/complex_cmath.h +0 -0
  264. /package/lib/clang/{21 → 23}/include/openmp_wrappers/new +0 -0
  265. /package/lib/clang/{21 → 23}/include/pconfigintrin.h +0 -0
  266. /package/lib/clang/{21 → 23}/include/pkuintrin.h +0 -0
  267. /package/lib/clang/{21 → 23}/include/popcntintrin.h +0 -0
  268. /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
  269. /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
  270. /package/lib/clang/{21 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
  271. /package/lib/clang/{21 → 23}/include/ppc_wrappers/immintrin.h +0 -0
  272. /package/lib/clang/{21 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
  273. /package/lib/clang/{21 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
  274. /package/lib/clang/{21 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
  275. /package/lib/clang/{21 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
  276. /package/lib/clang/{21 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
  277. /package/lib/clang/{21 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
  278. /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
  279. /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
  280. /package/lib/clang/{21 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
  281. /package/lib/clang/{21 → 23}/include/prfchiintrin.h +0 -0
  282. /package/lib/clang/{21 → 23}/include/prfchwintrin.h +0 -0
  283. /package/lib/clang/{21 → 23}/include/ptwriteintrin.h +0 -0
  284. /package/lib/clang/{21 → 23}/include/raointintrin.h +0 -0
  285. /package/lib/clang/{21 → 23}/include/rdpruintrin.h +0 -0
  286. /package/lib/clang/{21 → 23}/include/rdseedintrin.h +0 -0
  287. /package/lib/clang/{21 → 23}/include/rtmintrin.h +0 -0
  288. /package/lib/clang/{21 → 23}/include/s390intrin.h +0 -0
  289. /package/lib/clang/{21 → 23}/include/serializeintrin.h +0 -0
  290. /package/lib/clang/{21 → 23}/include/sgxintrin.h +0 -0
  291. /package/lib/clang/{21 → 23}/include/sha512intrin.h +0 -0
  292. /package/lib/clang/{21 → 23}/include/shaintrin.h +0 -0
  293. /package/lib/clang/{21 → 23}/include/sm3intrin.h +0 -0
  294. /package/lib/clang/{21 → 23}/include/sm4intrin.h +0 -0
  295. /package/lib/clang/{21 → 23}/include/stdalign.h +0 -0
  296. /package/lib/clang/{21 → 23}/include/stdarg.h +0 -0
  297. /package/lib/clang/{21 → 23}/include/stdatomic.h +0 -0
  298. /package/lib/clang/{21 → 23}/include/stdbool.h +0 -0
  299. /package/lib/clang/{21 → 23}/include/stdckdint.h +0 -0
  300. /package/lib/clang/{21 → 23}/include/stdcountof.h +0 -0
  301. /package/lib/clang/{21 → 23}/include/stddef.h +0 -0
  302. /package/lib/clang/{21 → 23}/include/stdnoreturn.h +0 -0
  303. /package/lib/clang/{21 → 23}/include/tbmintrin.h +0 -0
  304. /package/lib/clang/{21 → 23}/include/tgmath.h +0 -0
  305. /package/lib/clang/{21 → 23}/include/tsxldtrkintrin.h +0 -0
  306. /package/lib/clang/{21 → 23}/include/uintrintrin.h +0 -0
  307. /package/lib/clang/{21 → 23}/include/unwind.h +0 -0
  308. /package/lib/clang/{21 → 23}/include/usermsrintrin.h +0 -0
  309. /package/lib/clang/{21 → 23}/include/vadefs.h +0 -0
  310. /package/lib/clang/{21 → 23}/include/varargs.h +0 -0
  311. /package/lib/clang/{21 → 23}/include/velintrin.h +0 -0
  312. /package/lib/clang/{21 → 23}/include/velintrin_approx.h +0 -0
  313. /package/lib/clang/{21 → 23}/include/velintrin_gen.h +0 -0
  314. /package/lib/clang/{21 → 23}/include/vpclmulqdqintrin.h +0 -0
  315. /package/lib/clang/{21 → 23}/include/waitpkgintrin.h +0 -0
  316. /package/lib/clang/{21 → 23}/include/wbnoinvdintrin.h +0 -0
  317. /package/lib/clang/{21 → 23}/include/wmmintrin.h +0 -0
  318. /package/lib/clang/{21 → 23}/include/x86gprintrin.h +0 -0
  319. /package/lib/clang/{21 → 23}/include/x86intrin.h +0 -0
  320. /package/lib/clang/{21 → 23}/include/xsavecintrin.h +0 -0
  321. /package/lib/clang/{21 → 23}/include/xsaveintrin.h +0 -0
  322. /package/lib/clang/{21 → 23}/include/xsaveoptintrin.h +0 -0
  323. /package/lib/clang/{21 → 23}/include/xsavesintrin.h +0 -0
  324. /package/lib/clang/{21 → 23}/include/xtestintrin.h +0 -0
  325. /package/lib/clang/{21 → 23}/include/yvals_core.h +0 -0
  326. /package/lib/clang/{21 → 23}/include/zos_wrappers/builtins.h +0 -0
@@ -7,157 +7,266 @@
7
7
  //===----------------------------------------------------------------------===//
8
8
 
9
9
  #ifndef _HLSL_COMPAT_OVERLOADS_H_
10
- #define _HLSl_COMPAT_OVERLOADS_H_
10
+ #define _HLSL_COMPAT_OVERLOADS_H_
11
11
 
12
12
  namespace hlsl {
13
13
 
14
14
  // Note: Functions in this file are sorted alphabetically, then grouped by base
15
- // element type, and the element types are sorted by size, then singed integer,
15
+ // element type, and the element types are sorted by size, then signed integer,
16
16
  // unsigned integer and floating point. Keeping this ordering consistent will
17
17
  // help keep this file manageable as it grows.
18
18
 
19
+ #define _DXC_DEPRECATED_64BIT_FN(fn) \
20
+ [[deprecated("In 202x 64 bit API lowering for " #fn " is deprecated. " \
21
+ "Explicitly cast parameters to 32 or 16 bit types.")]]
22
+
23
+ #define _DXC_DEPRECATED_INT_FN(fn) \
24
+ [[deprecated("In 202x int lowering for " #fn " is deprecated. " \
25
+ "Explicitly cast parameters to float types.")]]
26
+
27
+ #define _DXC_DEPRECATED_VEC_SCALAR_FN(fn) \
28
+ [[deprecated("In 202x mismatched vector/scalar lowering for " #fn " is " \
29
+ "deprecated. Explicitly cast parameters.")]]
30
+
19
31
  #define _DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(fn) \
32
+ _DXC_DEPRECATED_64BIT_FN(fn) \
20
33
  constexpr float fn(double V) { return fn((float)V); } \
34
+ _DXC_DEPRECATED_64BIT_FN(fn) \
21
35
  constexpr float2 fn(double2 V) { return fn((float2)V); } \
36
+ _DXC_DEPRECATED_64BIT_FN(fn) \
22
37
  constexpr float3 fn(double3 V) { return fn((float3)V); } \
38
+ _DXC_DEPRECATED_64BIT_FN(fn) \
23
39
  constexpr float4 fn(double4 V) { return fn((float4)V); }
24
40
 
25
41
  #define _DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(fn) \
42
+ _DXC_DEPRECATED_64BIT_FN(fn) \
26
43
  constexpr float fn(double V1, double V2) { \
27
44
  return fn((float)V1, (float)V2); \
28
45
  } \
46
+ _DXC_DEPRECATED_64BIT_FN(fn) \
29
47
  constexpr float2 fn(double2 V1, double2 V2) { \
30
48
  return fn((float2)V1, (float2)V2); \
31
49
  } \
50
+ _DXC_DEPRECATED_64BIT_FN(fn) \
32
51
  constexpr float3 fn(double3 V1, double3 V2) { \
33
52
  return fn((float3)V1, (float3)V2); \
34
53
  } \
54
+ _DXC_DEPRECATED_64BIT_FN(fn) \
35
55
  constexpr float4 fn(double4 V1, double4 V2) { \
36
56
  return fn((float4)V1, (float4)V2); \
37
57
  }
38
58
 
39
59
  #define _DXC_COMPAT_TERNARY_DOUBLE_OVERLOADS(fn) \
60
+ _DXC_DEPRECATED_64BIT_FN(fn) \
40
61
  constexpr float fn(double V1, double V2, double V3) { \
41
62
  return fn((float)V1, (float)V2, (float)V3); \
42
63
  } \
64
+ _DXC_DEPRECATED_64BIT_FN(fn) \
43
65
  constexpr float2 fn(double2 V1, double2 V2, double2 V3) { \
44
66
  return fn((float2)V1, (float2)V2, (float2)V3); \
45
67
  } \
68
+ _DXC_DEPRECATED_64BIT_FN(fn) \
46
69
  constexpr float3 fn(double3 V1, double3 V2, double3 V3) { \
47
70
  return fn((float3)V1, (float3)V2, (float3)V3); \
48
71
  } \
72
+ _DXC_DEPRECATED_64BIT_FN(fn) \
49
73
  constexpr float4 fn(double4 V1, double4 V2, double4 V3) { \
50
74
  return fn((float4)V1, (float4)V2, (float4)V3); \
51
75
  }
52
76
 
53
77
  #define _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(fn) \
78
+ _DXC_DEPRECATED_INT_FN(fn) \
54
79
  constexpr float fn(int V) { return fn((float)V); } \
80
+ _DXC_DEPRECATED_INT_FN(fn) \
55
81
  constexpr float2 fn(int2 V) { return fn((float2)V); } \
82
+ _DXC_DEPRECATED_INT_FN(fn) \
56
83
  constexpr float3 fn(int3 V) { return fn((float3)V); } \
84
+ _DXC_DEPRECATED_INT_FN(fn) \
57
85
  constexpr float4 fn(int4 V) { return fn((float4)V); } \
86
+ _DXC_DEPRECATED_INT_FN(fn) \
58
87
  constexpr float fn(uint V) { return fn((float)V); } \
88
+ _DXC_DEPRECATED_INT_FN(fn) \
59
89
  constexpr float2 fn(uint2 V) { return fn((float2)V); } \
90
+ _DXC_DEPRECATED_INT_FN(fn) \
60
91
  constexpr float3 fn(uint3 V) { return fn((float3)V); } \
92
+ _DXC_DEPRECATED_INT_FN(fn) \
61
93
  constexpr float4 fn(uint4 V) { return fn((float4)V); } \
94
+ _DXC_DEPRECATED_INT_FN(fn) \
62
95
  constexpr float fn(int64_t V) { return fn((float)V); } \
96
+ _DXC_DEPRECATED_INT_FN(fn) \
63
97
  constexpr float2 fn(int64_t2 V) { return fn((float2)V); } \
98
+ _DXC_DEPRECATED_INT_FN(fn) \
64
99
  constexpr float3 fn(int64_t3 V) { return fn((float3)V); } \
100
+ _DXC_DEPRECATED_INT_FN(fn) \
65
101
  constexpr float4 fn(int64_t4 V) { return fn((float4)V); } \
102
+ _DXC_DEPRECATED_INT_FN(fn) \
66
103
  constexpr float fn(uint64_t V) { return fn((float)V); } \
104
+ _DXC_DEPRECATED_INT_FN(fn) \
67
105
  constexpr float2 fn(uint64_t2 V) { return fn((float2)V); } \
106
+ _DXC_DEPRECATED_INT_FN(fn) \
68
107
  constexpr float3 fn(uint64_t3 V) { return fn((float3)V); } \
108
+ _DXC_DEPRECATED_INT_FN(fn) \
69
109
  constexpr float4 fn(uint64_t4 V) { return fn((float4)V); }
70
110
 
71
111
  #define _DXC_COMPAT_BINARY_INTEGER_OVERLOADS(fn) \
112
+ _DXC_DEPRECATED_INT_FN(fn) \
72
113
  constexpr float fn(int V1, int V2) { return fn((float)V1, (float)V2); } \
114
+ _DXC_DEPRECATED_INT_FN(fn) \
73
115
  constexpr float2 fn(int2 V1, int2 V2) { return fn((float2)V1, (float2)V2); } \
116
+ _DXC_DEPRECATED_INT_FN(fn) \
74
117
  constexpr float3 fn(int3 V1, int3 V2) { return fn((float3)V1, (float3)V2); } \
118
+ _DXC_DEPRECATED_INT_FN(fn) \
75
119
  constexpr float4 fn(int4 V1, int4 V2) { return fn((float4)V1, (float4)V2); } \
120
+ _DXC_DEPRECATED_INT_FN(fn) \
76
121
  constexpr float fn(uint V1, uint V2) { return fn((float)V1, (float)V2); } \
122
+ _DXC_DEPRECATED_INT_FN(fn) \
77
123
  constexpr float2 fn(uint2 V1, uint2 V2) { \
78
124
  return fn((float2)V1, (float2)V2); \
79
125
  } \
126
+ _DXC_DEPRECATED_INT_FN(fn) \
80
127
  constexpr float3 fn(uint3 V1, uint3 V2) { \
81
128
  return fn((float3)V1, (float3)V2); \
82
129
  } \
130
+ _DXC_DEPRECATED_INT_FN(fn) \
83
131
  constexpr float4 fn(uint4 V1, uint4 V2) { \
84
132
  return fn((float4)V1, (float4)V2); \
85
133
  } \
134
+ _DXC_DEPRECATED_INT_FN(fn) \
86
135
  constexpr float fn(int64_t V1, int64_t V2) { \
87
136
  return fn((float)V1, (float)V2); \
88
137
  } \
138
+ _DXC_DEPRECATED_INT_FN(fn) \
89
139
  constexpr float2 fn(int64_t2 V1, int64_t2 V2) { \
90
140
  return fn((float2)V1, (float2)V2); \
91
141
  } \
142
+ _DXC_DEPRECATED_INT_FN(fn) \
92
143
  constexpr float3 fn(int64_t3 V1, int64_t3 V2) { \
93
144
  return fn((float3)V1, (float3)V2); \
94
145
  } \
146
+ _DXC_DEPRECATED_INT_FN(fn) \
95
147
  constexpr float4 fn(int64_t4 V1, int64_t4 V2) { \
96
148
  return fn((float4)V1, (float4)V2); \
97
149
  } \
150
+ _DXC_DEPRECATED_INT_FN(fn) \
98
151
  constexpr float fn(uint64_t V1, uint64_t V2) { \
99
152
  return fn((float)V1, (float)V2); \
100
153
  } \
154
+ _DXC_DEPRECATED_INT_FN(fn) \
101
155
  constexpr float2 fn(uint64_t2 V1, uint64_t2 V2) { \
102
156
  return fn((float2)V1, (float2)V2); \
103
157
  } \
158
+ _DXC_DEPRECATED_INT_FN(fn) \
104
159
  constexpr float3 fn(uint64_t3 V1, uint64_t3 V2) { \
105
160
  return fn((float3)V1, (float3)V2); \
106
161
  } \
162
+ _DXC_DEPRECATED_INT_FN(fn) \
107
163
  constexpr float4 fn(uint64_t4 V1, uint64_t4 V2) { \
108
164
  return fn((float4)V1, (float4)V2); \
109
165
  }
110
166
 
111
167
  #define _DXC_COMPAT_TERNARY_INTEGER_OVERLOADS(fn) \
168
+ _DXC_DEPRECATED_INT_FN(fn) \
112
169
  constexpr float fn(int V1, int V2, int V3) { \
113
170
  return fn((float)V1, (float)V2, (float)V3); \
114
171
  } \
172
+ _DXC_DEPRECATED_INT_FN(fn) \
115
173
  constexpr float2 fn(int2 V1, int2 V2, int2 V3) { \
116
174
  return fn((float2)V1, (float2)V2, (float2)V3); \
117
175
  } \
176
+ _DXC_DEPRECATED_INT_FN(fn) \
118
177
  constexpr float3 fn(int3 V1, int3 V2, int3 V3) { \
119
178
  return fn((float3)V1, (float3)V2, (float3)V3); \
120
179
  } \
180
+ _DXC_DEPRECATED_INT_FN(fn) \
121
181
  constexpr float4 fn(int4 V1, int4 V2, int4 V3) { \
122
182
  return fn((float4)V1, (float4)V2, (float4)V3); \
123
183
  } \
184
+ _DXC_DEPRECATED_INT_FN(fn) \
124
185
  constexpr float fn(uint V1, uint V2, uint V3) { \
125
186
  return fn((float)V1, (float)V2, (float)V3); \
126
187
  } \
188
+ _DXC_DEPRECATED_INT_FN(fn) \
127
189
  constexpr float2 fn(uint2 V1, uint2 V2, uint2 V3) { \
128
190
  return fn((float2)V1, (float2)V2, (float2)V3); \
129
191
  } \
192
+ _DXC_DEPRECATED_INT_FN(fn) \
130
193
  constexpr float3 fn(uint3 V1, uint3 V2, uint3 V3) { \
131
194
  return fn((float3)V1, (float3)V2, (float3)V3); \
132
195
  } \
196
+ _DXC_DEPRECATED_INT_FN(fn) \
133
197
  constexpr float4 fn(uint4 V1, uint4 V2, uint4 V3) { \
134
198
  return fn((float4)V1, (float4)V2, (float4)V3); \
135
199
  } \
200
+ _DXC_DEPRECATED_INT_FN(fn) \
136
201
  constexpr float fn(int64_t V1, int64_t V2, int64_t V3) { \
137
202
  return fn((float)V1, (float)V2, (float)V3); \
138
203
  } \
204
+ _DXC_DEPRECATED_INT_FN(fn) \
139
205
  constexpr float2 fn(int64_t2 V1, int64_t2 V2, int64_t2 V3) { \
140
206
  return fn((float2)V1, (float2)V2, (float2)V3); \
141
207
  } \
208
+ _DXC_DEPRECATED_INT_FN(fn) \
142
209
  constexpr float3 fn(int64_t3 V1, int64_t3 V2, int64_t3 V3) { \
143
210
  return fn((float3)V1, (float3)V2, (float3)V3); \
144
211
  } \
212
+ _DXC_DEPRECATED_INT_FN(fn) \
145
213
  constexpr float4 fn(int64_t4 V1, int64_t4 V2, int64_t4 V3) { \
146
214
  return fn((float4)V1, (float4)V2, (float4)V3); \
147
215
  } \
216
+ _DXC_DEPRECATED_INT_FN(fn) \
148
217
  constexpr float fn(uint64_t V1, uint64_t V2, uint64_t V3) { \
149
218
  return fn((float)V1, (float)V2, (float)V3); \
150
219
  } \
220
+ _DXC_DEPRECATED_INT_FN(fn) \
151
221
  constexpr float2 fn(uint64_t2 V1, uint64_t2 V2, uint64_t2 V3) { \
152
222
  return fn((float2)V1, (float2)V2, (float2)V3); \
153
223
  } \
224
+ _DXC_DEPRECATED_INT_FN(fn) \
154
225
  constexpr float3 fn(uint64_t3 V1, uint64_t3 V2, uint64_t3 V3) { \
155
226
  return fn((float3)V1, (float3)V2, (float3)V3); \
156
227
  } \
228
+ _DXC_DEPRECATED_INT_FN(fn) \
157
229
  constexpr float4 fn(uint64_t4 V1, uint64_t4 V2, uint64_t4 V3) { \
158
230
  return fn((float4)V1, (float4)V2, (float4)V3); \
159
231
  }
160
232
 
233
+ #define _DXC_COMPAT_BINARY_DOUBLE_MATRIX_OVERLOADS(fn) \
234
+ template <uint R, uint C> \
235
+ _DXC_DEPRECATED_64BIT_FN(fn) \
236
+ constexpr matrix<float, R, C> fn(matrix<double, R, C> V1, \
237
+ matrix<double, R, C> V2) { \
238
+ return fn((matrix<float, R, C>)V1, (matrix<float, R, C>)V2); \
239
+ }
240
+
241
+ #define _DXC_COMPAT_BINARY_INTEGER_MATRIX_OVERLOADS(fn) \
242
+ template <uint R, uint C> \
243
+ _DXC_DEPRECATED_INT_FN(fn) \
244
+ constexpr matrix<float, R, C> fn(matrix<int, R, C> V1, \
245
+ matrix<int, R, C> V2) { \
246
+ return fn((matrix<float, R, C>)V1, (matrix<float, R, C>)V2); \
247
+ } \
248
+ \
249
+ template <uint R, uint C> \
250
+ _DXC_DEPRECATED_INT_FN(fn) \
251
+ constexpr matrix<float, R, C> fn(matrix<uint, R, C> V1, \
252
+ matrix<uint, R, C> V2) { \
253
+ return fn((matrix<float, R, C>)V1, (matrix<float, R, C>)V2); \
254
+ } \
255
+ \
256
+ template <uint R, uint C> \
257
+ _DXC_DEPRECATED_INT_FN(fn) \
258
+ constexpr matrix<float, R, C> fn(matrix<int64_t, R, C> V1, \
259
+ matrix<int64_t, R, C> V2) { \
260
+ return fn((matrix<float, R, C>)V1, (matrix<float, R, C>)V2); \
261
+ } \
262
+ \
263
+ template <uint R, uint C> \
264
+ _DXC_DEPRECATED_INT_FN(fn) \
265
+ constexpr matrix<float, R, C> fn(matrix<uint64_t, R, C> V1, \
266
+ matrix<uint64_t, R, C> V2) { \
267
+ return fn((matrix<float, R, C>)V1, (matrix<float, R, C>)V2); \
268
+ }
269
+
161
270
  //===----------------------------------------------------------------------===//
162
271
  // acos builtins overloads
163
272
  //===----------------------------------------------------------------------===//
@@ -185,6 +294,8 @@ _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(atan)
185
294
 
186
295
  _DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(atan2)
187
296
  _DXC_COMPAT_BINARY_INTEGER_OVERLOADS(atan2)
297
+ _DXC_COMPAT_BINARY_DOUBLE_MATRIX_OVERLOADS(atan2)
298
+ _DXC_COMPAT_BINARY_INTEGER_MATRIX_OVERLOADS(atan2)
188
299
 
189
300
  //===----------------------------------------------------------------------===//
190
301
  // ceil builtins overloads
@@ -198,20 +309,23 @@ _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(ceil)
198
309
  //===----------------------------------------------------------------------===//
199
310
 
200
311
  template <typename T, uint N>
201
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
202
- clamp(vector<T, N> p0, vector<T, N> p1, T p2) {
312
+ _DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
313
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
314
+ vector<T, N> p0, vector<T, N> p1, T p2) {
203
315
  return clamp(p0, p1, (vector<T, N>)p2);
204
316
  }
205
317
 
206
318
  template <typename T, uint N>
207
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
208
- clamp(vector<T, N> p0, T p1, vector<T, N> p2) {
319
+ _DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
320
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
321
+ vector<T, N> p0, T p1, vector<T, N> p2) {
209
322
  return clamp(p0, (vector<T, N>)p1, p2);
210
323
  }
211
324
 
212
325
  template <typename T, uint N>
213
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
214
- clamp(vector<T, N> p0, T p1, T p2) {
326
+ _DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
327
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
328
+ vector<T, N> p0, T p1, T p2) {
215
329
  return clamp(p0, (vector<T, N>)p1, (vector<T, N>)p2);
216
330
  }
217
331
 
@@ -268,18 +382,32 @@ _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(frac)
268
382
  // isinf builtins overloads
269
383
  //===----------------------------------------------------------------------===//
270
384
 
385
+ _DXC_DEPRECATED_64BIT_FN(fn)
271
386
  constexpr bool isinf(double V) { return isinf((float)V); }
387
+ _DXC_DEPRECATED_64BIT_FN(fn)
272
388
  constexpr bool2 isinf(double2 V) { return isinf((float2)V); }
389
+ _DXC_DEPRECATED_64BIT_FN(fn)
273
390
  constexpr bool3 isinf(double3 V) { return isinf((float3)V); }
391
+ _DXC_DEPRECATED_64BIT_FN(fn)
274
392
  constexpr bool4 isinf(double4 V) { return isinf((float4)V); }
275
393
 
394
+ //===----------------------------------------------------------------------===//
395
+ // isnan builtins overloads
396
+ //===----------------------------------------------------------------------===//
397
+
398
+ constexpr bool isnan(double V) { return isnan((float)V); }
399
+ constexpr bool2 isnan(double2 V) { return isnan((float2)V); }
400
+ constexpr bool3 isnan(double3 V) { return isnan((float3)V); }
401
+ constexpr bool4 isnan(double4 V) { return isnan((float4)V); }
402
+
276
403
  //===----------------------------------------------------------------------===//
277
404
  // lerp builtins overloads
278
405
  //===----------------------------------------------------------------------===//
279
406
 
280
407
  template <typename T, uint N>
281
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
282
- lerp(vector<T, N> x, vector<T, N> y, T s) {
408
+ _DXC_DEPRECATED_VEC_SCALAR_FN(lerp)
409
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> lerp(
410
+ vector<T, N> x, vector<T, N> y, T s) {
283
411
  return lerp(x, y, (vector<T, N>)s);
284
412
  }
285
413
 
@@ -312,14 +440,16 @@ _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(log2)
312
440
  //===----------------------------------------------------------------------===//
313
441
 
314
442
  template <typename T, uint N>
315
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
316
- max(vector<T, N> p0, T p1) {
443
+ _DXC_DEPRECATED_VEC_SCALAR_FN(max)
444
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> max(
445
+ vector<T, N> p0, T p1) {
317
446
  return max(p0, (vector<T, N>)p1);
318
447
  }
319
448
 
320
449
  template <typename T, uint N>
321
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
322
- max(T p0, vector<T, N> p1) {
450
+ _DXC_DEPRECATED_VEC_SCALAR_FN(max)
451
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> max(
452
+ T p0, vector<T, N> p1) {
323
453
  return max((vector<T, N>)p0, p1);
324
454
  }
325
455
 
@@ -328,14 +458,16 @@ max(T p0, vector<T, N> p1) {
328
458
  //===----------------------------------------------------------------------===//
329
459
 
330
460
  template <typename T, uint N>
331
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
332
- min(vector<T, N> p0, T p1) {
461
+ _DXC_DEPRECATED_VEC_SCALAR_FN(min)
462
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> min(
463
+ vector<T, N> p0, T p1) {
333
464
  return min(p0, (vector<T, N>)p1);
334
465
  }
335
466
 
336
467
  template <typename T, uint N>
337
- constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>>
338
- min(T p0, vector<T, N> p1) {
468
+ _DXC_DEPRECATED_VEC_SCALAR_FN(min)
469
+ constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> min(
470
+ T p0, vector<T, N> p1) {
339
471
  return min((vector<T, N>)p0, p1);
340
472
  }
341
473
 
@@ -30,6 +30,12 @@ template <typename T> struct enable_if<true, T> {
30
30
  template <bool B, class T = void>
31
31
  using enable_if_t = typename enable_if<B, T>::Type;
32
32
 
33
+ template <typename U, typename T, int R, int C>
34
+ constexpr enable_if_t<sizeof(U) == sizeof(T), matrix<U, R, C>>
35
+ bit_cast(matrix<T, R, C> M) {
36
+ return __builtin_bit_cast(matrix<U, R, C>, M);
37
+ }
38
+
33
39
  template <typename U, typename T, int N>
34
40
  constexpr enable_if_t<sizeof(U) == sizeof(T), vector<U, N>>
35
41
  bit_cast(vector<T, N> V) {
@@ -45,10 +51,6 @@ template <typename T> struct is_arithmetic {
45
51
  static const bool Value = __is_arithmetic(T);
46
52
  };
47
53
 
48
- template <typename T, int N>
49
- using HLSL_FIXED_VECTOR =
50
- vector<__detail::enable_if_t<(N > 1 && N <= 4), T>, N>;
51
-
52
54
  } // namespace __detail
53
55
  } // namespace hlsl
54
56
  #endif //_HLSL_HLSL_DETAILS_H_