@cpp-linter/clang-tidy-win32-x64 20.1.0 → 22.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.
- package/README.md +2 -2
- package/bin/clang-tidy.exe +2 -2
- package/lib/clang/22/include/__clang_cuda_complex_builtins.h +229 -0
- package/lib/clang/{20 → 22}/include/__clang_cuda_device_functions.h +1 -1
- package/lib/clang/{20 → 22}/include/__clang_cuda_intrinsics.h +295 -8
- package/lib/clang/{20 → 22}/include/__clang_cuda_runtime_wrapper.h +19 -0
- package/lib/clang/{20 → 22}/include/__clang_cuda_texture_intrinsics.h +437 -2
- package/lib/clang/{20 → 22}/include/__clang_hip_cmath.h +9 -8
- package/lib/clang/{20 → 22}/include/__clang_hip_libdevice_declares.h +29 -42
- package/lib/clang/{20 → 22}/include/__clang_hip_math.h +107 -31
- package/lib/clang/{20 → 22}/include/__clang_hip_runtime_wrapper.h +6 -0
- package/lib/clang/22/include/__clang_spirv_builtins.h +217 -0
- package/lib/clang/{20/include/float.h → 22/include/__float_float.h} +14 -34
- package/lib/clang/22/include/__float_header_macro.h +12 -0
- package/lib/clang/22/include/__float_infinity_nan.h +20 -0
- package/lib/clang/{20 → 22}/include/__stdarg_va_arg.h +2 -2
- package/lib/clang/{20 → 22}/include/altivec.h +82 -79
- package/lib/clang/{20 → 22}/include/amdgpuintrin.h +23 -26
- package/lib/clang/22/include/amo.h +131 -0
- package/lib/clang/{20 → 22}/include/amxavx512intrin.h +216 -2
- package/lib/clang/{20 → 22}/include/amxcomplexintrin.h +4 -6
- package/lib/clang/{20 → 22}/include/amxintrin.h +0 -2
- package/lib/clang/22/include/andes_vector.h +16 -0
- package/lib/clang/{20 → 22}/include/arm_acle.h +48 -68
- package/lib/clang/{20 → 22}/include/arm_fp16.h +89 -89
- package/lib/clang/{20 → 22}/include/arm_neon.h +22413 -19759
- package/lib/clang/{20 → 22}/include/arm_sme.h +702 -8
- package/lib/clang/{20 → 22}/include/arm_sve.h +6346 -5626
- package/lib/clang/{20 → 22}/include/avx10_2_512bf16intrin.h +19 -12
- package/lib/clang/{20 → 22}/include/avx10_2_512convertintrin.h +25 -23
- package/lib/clang/{20 → 22}/include/avx10_2_512niintrin.h +31 -31
- package/lib/clang/{20 → 22}/include/avx10_2_512satcvtdsintrin.h +29 -25
- package/lib/clang/{20 → 22}/include/avx10_2_512satcvtintrin.h +84 -84
- package/lib/clang/{20 → 22}/include/avx10_2bf16intrin.h +54 -45
- package/lib/clang/22/include/avx10_2convertintrin.h +3257 -0
- package/lib/clang/{20 → 22}/include/avx10_2copyintrin.h +1 -1
- package/lib/clang/{20 → 22}/include/avx10_2minmaxintrin.h +18 -63
- package/lib/clang/22/include/avx10_2niintrin.h +409 -0
- package/lib/clang/22/include/avx10_2satcvtdsintrin.h +376 -0
- package/lib/clang/22/include/avx10_2satcvtintrin.h +312 -0
- package/lib/clang/{20 → 22}/include/avx2intrin.h +275 -377
- package/lib/clang/{20 → 22}/include/avx512bf16intrin.h +25 -16
- package/lib/clang/{20 → 22}/include/avx512bitalgintrin.h +19 -30
- package/lib/clang/{20 → 22}/include/avx512bwintrin.h +386 -505
- package/lib/clang/22/include/avx512cdintrin.h +112 -0
- package/lib/clang/{20 → 22}/include/avx512dqintrin.h +132 -161
- package/lib/clang/{20 → 22}/include/avx512fintrin.h +1015 -1424
- package/lib/clang/{20 → 22}/include/avx512fp16intrin.h +114 -111
- package/lib/clang/22/include/avx512ifmaintrin.h +68 -0
- package/lib/clang/22/include/avx512ifmavlintrin.h +138 -0
- package/lib/clang/{20 → 22}/include/avx512vbmi2intrin.h +43 -32
- package/lib/clang/{20 → 22}/include/avx512vbmiintrin.h +19 -27
- package/lib/clang/{20 → 22}/include/avx512vbmivlintrin.h +35 -49
- package/lib/clang/{20 → 22}/include/avx512vlbf16intrin.h +32 -22
- package/lib/clang/{20 → 22}/include/avx512vlbitalgintrin.h +37 -53
- package/lib/clang/{20 → 22}/include/avx512vlbwintrin.h +470 -573
- package/lib/clang/22/include/avx512vlcdintrin.h +202 -0
- package/lib/clang/{20 → 22}/include/avx512vldqintrin.h +110 -127
- package/lib/clang/{20 → 22}/include/avx512vlfp16intrin.h +130 -111
- package/lib/clang/{20 → 22}/include/avx512vlintrin.h +945 -1299
- package/lib/clang/{20 → 22}/include/avx512vlvbmi2intrin.h +78 -63
- package/lib/clang/{20 → 22}/include/avx512vlvnniintrin.h +21 -18
- package/lib/clang/{20 → 22}/include/avx512vlvp2intersectintrin.h +2 -2
- package/lib/clang/{20 → 22}/include/avx512vnniintrin.h +10 -10
- package/lib/clang/{20 → 22}/include/avx512vp2intersectintrin.h +1 -2
- package/lib/clang/{20 → 22}/include/avx512vpopcntdqintrin.h +8 -10
- package/lib/clang/{20 → 22}/include/avx512vpopcntdqvlintrin.h +17 -15
- package/lib/clang/{20 → 22}/include/avxifmaintrin.h +16 -0
- package/lib/clang/{20 → 22}/include/avxintrin.h +165 -241
- package/lib/clang/{20 → 22}/include/avxvnniint16intrin.h +118 -99
- package/lib/clang/{20 → 22}/include/avxvnniint8intrin.h +56 -32
- package/lib/clang/{20 → 22}/include/avxvnniintrin.h +16 -8
- package/lib/clang/{20 → 22}/include/bmiintrin.h +0 -4
- package/lib/clang/{20 → 22}/include/cpuid.h +125 -26
- package/lib/clang/22/include/cuda_wrappers/__utility/declval.h +28 -0
- package/lib/clang/22/include/cuda_wrappers/bits/c++config.h +61 -0
- package/lib/clang/{20 → 22}/include/cuda_wrappers/cmath +0 -50
- package/lib/clang/{20 → 22}/include/emmintrin.h +168 -168
- package/lib/clang/{20 → 22}/include/f16cintrin.h +23 -9
- package/lib/clang/22/include/float.h +48 -0
- package/lib/clang/22/include/fma4intrin.h +220 -0
- package/lib/clang/{20 → 22}/include/fmaintrin.h +96 -66
- package/lib/clang/{20 → 22}/include/gfniintrin.h +21 -16
- package/lib/clang/{20 → 22}/include/gpuintrin.h +117 -11
- package/lib/clang/{20 → 22}/include/hexagon_types.h +23 -20
- package/lib/clang/{20/include/hlsl/hlsl_intrinsics.h → 22/include/hlsl/hlsl_alias_intrinsics.h} +643 -296
- package/lib/clang/22/include/hlsl/hlsl_basic_types.h +370 -0
- package/lib/clang/22/include/hlsl/hlsl_compat_overloads.h +520 -0
- package/lib/clang/22/include/hlsl/hlsl_detail.h +54 -0
- package/lib/clang/22/include/hlsl/hlsl_intrinsic_helpers.h +190 -0
- package/lib/clang/22/include/hlsl/hlsl_intrinsics.h +794 -0
- package/lib/clang/22/include/hlsl/hlsl_spirv.h +28 -0
- package/lib/clang/{20 → 22}/include/hlsl.h +12 -0
- package/lib/clang/{20 → 22}/include/hvx_hexagon_protos.h +649 -860
- package/lib/clang/{20 → 22}/include/immintrin.h +0 -236
- package/lib/clang/{20 → 22}/include/intrin.h +25 -4
- package/lib/clang/{20 → 22}/include/keylockerintrin.h +0 -9
- package/lib/clang/{20 → 22}/include/lasxintrin.h +113 -0
- package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/assert.h +3 -5
- package/lib/clang/22/include/llvm_libc_wrappers/ctype.h +28 -0
- package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/inttypes.h +3 -5
- package/lib/clang/22/include/llvm_libc_wrappers/stdio.h +52 -0
- package/lib/clang/22/include/llvm_libc_wrappers/stdlib.h +32 -0
- package/lib/clang/22/include/llvm_libc_wrappers/string.h +28 -0
- package/lib/clang/{20 → 22}/include/llvm_libc_wrappers/time.h +4 -10
- package/lib/clang/{20 → 22}/include/lzcntintrin.h +6 -4
- package/lib/clang/{20 → 22}/include/mmintrin.h +188 -257
- package/lib/clang/{20 → 22}/include/module.modulemap +36 -4
- package/lib/clang/{20 → 22}/include/movrs_avx10_2_512intrin.h +2 -2
- package/lib/clang/{20 → 22}/include/movrs_avx10_2intrin.h +4 -4
- package/lib/clang/{20 → 22}/include/movrsintrin.h +1 -1
- package/lib/clang/{20 → 22}/include/nvptxintrin.h +48 -31
- package/lib/clang/{20 → 22}/include/opencl-c-base.h +18 -93
- package/lib/clang/{20 → 22}/include/opencl-c.h +360 -55
- package/lib/clang/{20 → 22}/include/pmmintrin.h +12 -24
- package/lib/clang/{20 → 22}/include/prfchwintrin.h +10 -13
- package/lib/clang/{20 → 22}/include/ptrauth.h +73 -2
- package/lib/clang/{20 → 22}/include/riscv_corev_alu.h +4 -4
- package/lib/clang/22/include/riscv_mips.h +34 -0
- package/lib/clang/22/include/riscv_nds.h +89 -0
- package/lib/clang/{20 → 22}/include/riscv_vector.h +0 -4
- package/lib/clang/{20 → 22}/include/shaintrin.h +3 -2
- package/lib/clang/{20 → 22}/include/sifive_vector.h +58 -2
- package/lib/clang/{20 → 22}/include/sm4evexintrin.h +2 -2
- package/lib/clang/{20 → 22}/include/smmintrin.h +77 -59
- package/lib/clang/22/include/spirvintrin.h +194 -0
- package/lib/clang/22/include/stdcountof.h +15 -0
- package/lib/clang/22/include/stddefer.h +19 -0
- package/lib/clang/{20 → 22}/include/stdint.h +18 -129
- package/lib/clang/{20 → 22}/include/tmmintrin.h +116 -147
- package/lib/clang/{20 → 22}/include/vaesintrin.h +1 -2
- package/lib/clang/{20 → 22}/include/vecintrin.h +5 -0
- package/lib/clang/{20 → 22}/include/x86gprintrin.h +0 -14
- package/lib/clang/{20 → 22}/include/x86intrin.h +0 -18
- package/lib/clang/{20 → 22}/include/xmmintrin.h +47 -72
- package/lib/clang/{20 → 22}/include/xopintrin.h +20 -10
- package/package.json +6 -6
- package/lib/clang/20/include/__clang_cuda_complex_builtins.h +0 -285
- package/lib/clang/20/include/amxbf16transposeintrin.h +0 -94
- package/lib/clang/20/include/amxcomplextransposeintrin.h +0 -303
- package/lib/clang/20/include/amxfp16transposeintrin.h +0 -94
- package/lib/clang/20/include/amxmovrstransposeintrin.h +0 -200
- package/lib/clang/20/include/amxtf32transposeintrin.h +0 -105
- package/lib/clang/20/include/amxtransposeintrin.h +0 -248
- package/lib/clang/20/include/avx10_2convertintrin.h +0 -589
- package/lib/clang/20/include/avx10_2niintrin.h +0 -2075
- package/lib/clang/20/include/avx10_2satcvtdsintrin.h +0 -496
- package/lib/clang/20/include/avx10_2satcvtintrin.h +0 -444
- package/lib/clang/20/include/avx512cdintrin.h +0 -125
- package/lib/clang/20/include/avx512ifmaintrin.h +0 -70
- package/lib/clang/20/include/avx512ifmavlintrin.h +0 -111
- package/lib/clang/20/include/avx512vlcdintrin.h +0 -230
- package/lib/clang/20/include/fma4intrin.h +0 -218
- package/lib/clang/20/include/hlsl/hlsl_basic_types.h +0 -120
- package/lib/clang/20/include/hlsl/hlsl_detail.h +0 -84
- package/lib/clang/20/include/llvm_libc_wrappers/ctype.h +0 -140
- package/lib/clang/20/include/llvm_libc_wrappers/stdio.h +0 -80
- package/lib/clang/20/include/llvm_libc_wrappers/stdlib.h +0 -53
- package/lib/clang/20/include/llvm_libc_wrappers/string.h +0 -96
- /package/lib/clang/{20 → 22}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{20 → 22}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{20 → 22}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{20 → 22}/include/__clang_cuda_math.h +0 -0
- /package/lib/clang/{20 → 22}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{20 → 22}/include/__clang_hip_stdlib.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stdarg___gnuc_va_list.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stdarg___va_copy.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stdarg_header_macro.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stdarg_va_copy.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stdarg_va_list.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_header_macro.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_null.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_nullptr_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_offsetof.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_ptrdiff_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_rsize_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_size_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_unreachable.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_wchar_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__stddef_wint_t.h +0 -0
- /package/lib/clang/{20 → 22}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{20 → 22}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{20 → 22}/include/adcintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/adxintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ammintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/amxfp16intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/amxfp8intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/amxmovrsintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/amxtf32intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm64intr.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_bf16.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_cde.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_cmse.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_mve.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_neon_sve_bridge.h +0 -0
- /package/lib/clang/{20 → 22}/include/arm_vector_types.h +0 -0
- /package/lib/clang/{20 → 22}/include/armintr.h +0 -0
- /package/lib/clang/{20 → 22}/include/avx10_2_512minmaxintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/avxneconvertintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/bmi2intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/builtins.h +0 -0
- /package/lib/clang/{20 → 22}/include/cet.h +0 -0
- /package/lib/clang/{20 → 22}/include/cetintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/clwbintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/clzerointrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/cmpccxaddintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/crc32intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/basic_string.h +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{20 → 22}/include/cuda_wrappers/new +0 -0
- /package/lib/clang/{20 → 22}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{20 → 22}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{20 → 22}/include/hresetintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/htmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ia32intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/intrin0.h +0 -0
- /package/lib/clang/{20 → 22}/include/inttypes.h +0 -0
- /package/lib/clang/{20 → 22}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/iso646.h +0 -0
- /package/lib/clang/{20 → 22}/include/larchintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/limits.h +0 -0
- /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
- /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
- /package/lib/clang/{20 → 22}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
- /package/lib/clang/{20 → 22}/include/lsxintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/lwpintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/mm3dnow.h +0 -0
- /package/lib/clang/{20 → 22}/include/mm_malloc.h +0 -0
- /package/lib/clang/{20 → 22}/include/movdirintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/msa.h +0 -0
- /package/lib/clang/{20 → 22}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/nmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/complex_cmath.h +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{20 → 22}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{20 → 22}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/pkuintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/popcntintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/emmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/mm_malloc.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/mmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/nmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/pmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/smmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/tmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ppc_wrappers/xmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/prfchiintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/raointintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/riscv_bitmanip.h +0 -0
- /package/lib/clang/{20 → 22}/include/riscv_crypto.h +0 -0
- /package/lib/clang/{20 → 22}/include/riscv_ntlh.h +0 -0
- /package/lib/clang/{20 → 22}/include/rtmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/s390intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/serializeintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/sgxintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/sha512intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/sm3intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/sm4intrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdalign.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdarg.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdatomic.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdbool.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdckdint.h +0 -0
- /package/lib/clang/{20 → 22}/include/stddef.h +0 -0
- /package/lib/clang/{20 → 22}/include/stdnoreturn.h +0 -0
- /package/lib/clang/{20 → 22}/include/tbmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/tgmath.h +0 -0
- /package/lib/clang/{20 → 22}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/uintrintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/unwind.h +0 -0
- /package/lib/clang/{20 → 22}/include/usermsrintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/vadefs.h +0 -0
- /package/lib/clang/{20 → 22}/include/varargs.h +0 -0
- /package/lib/clang/{20 → 22}/include/velintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{20 → 22}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{20 → 22}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/wasm_simd128.h +0 -0
- /package/lib/clang/{20 → 22}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/wmmintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/xtestintrin.h +0 -0
- /package/lib/clang/{20 → 22}/include/yvals_core.h +0 -0
- /package/lib/clang/{20 → 22}/include/zos_wrappers/builtins.h +0 -0
package/lib/clang/{20/include/hlsl/hlsl_intrinsics.h → 22/include/hlsl/hlsl_alias_intrinsics.h}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
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
|
|
10
|
-
#define
|
|
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
|
-
|
|
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,60 @@ 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 or matrices elementwise and
|
|
298
|
+
/// produces a bool vector or matrix 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
|
+
|
|
313
|
+
|
|
314
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
315
|
+
bool1x2 and(bool1x2 x, bool1x2 y);
|
|
316
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
317
|
+
bool1x3 and(bool1x3 x, bool1x3 y);
|
|
318
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
319
|
+
bool1x4 and(bool1x4 x, bool1x4 y);
|
|
320
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
321
|
+
bool2x1 and(bool2x1 x, bool2x1 y);
|
|
322
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
323
|
+
bool2x2 and(bool2x2 x, bool2x2 y);
|
|
324
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
325
|
+
bool2x3 and(bool2x3 x, bool2x3 y);
|
|
326
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
327
|
+
bool2x4 and(bool2x4 x, bool2x4 y);
|
|
328
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
329
|
+
bool3x1 and(bool3x1 x, bool3x1 y);
|
|
330
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
331
|
+
bool3x2 and(bool3x2 x, bool3x2 y);
|
|
332
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
333
|
+
bool3x3 and(bool3x3 x, bool3x3 y);
|
|
334
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
335
|
+
bool3x4 and(bool3x4 x, bool3x4 y);
|
|
336
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
337
|
+
bool4x1 and(bool4x1 x, bool4x1 y);
|
|
338
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
339
|
+
bool4x2 and(bool4x2 x, bool4x2 y);
|
|
340
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
341
|
+
bool4x3 and(bool4x3 x, bool4x3 y);
|
|
342
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_and)
|
|
343
|
+
bool4x4 and(bool4x4 x, bool4x4 y);
|
|
344
|
+
// clang-format on
|
|
345
|
+
|
|
252
346
|
//===----------------------------------------------------------------------===//
|
|
253
347
|
// any builtins
|
|
254
348
|
//===----------------------------------------------------------------------===//
|
|
@@ -379,39 +473,6 @@ double3 asdouble(uint3, uint3);
|
|
|
379
473
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_asdouble)
|
|
380
474
|
double4 asdouble(uint4, uint4);
|
|
381
475
|
|
|
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
476
|
//===----------------------------------------------------------------------===//
|
|
416
477
|
// asin builtins
|
|
417
478
|
//===----------------------------------------------------------------------===//
|
|
@@ -420,16 +481,18 @@ template <typename T> constexpr int asint(T F) {
|
|
|
420
481
|
/// \brief Returns the arcsine of the input value, \a Val.
|
|
421
482
|
/// \param Val The input value.
|
|
422
483
|
|
|
423
|
-
|
|
484
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
424
485
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
425
486
|
half asin(half);
|
|
487
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
426
488
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
427
489
|
half2 asin(half2);
|
|
490
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
428
491
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
429
492
|
half3 asin(half3);
|
|
493
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
430
494
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
431
495
|
half4 asin(half4);
|
|
432
|
-
#endif
|
|
433
496
|
|
|
434
497
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
435
498
|
float asin(float);
|
|
@@ -440,40 +503,6 @@ float3 asin(float3);
|
|
|
440
503
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_asin)
|
|
441
504
|
float4 asin(float4);
|
|
442
505
|
|
|
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
506
|
//===----------------------------------------------------------------------===//
|
|
478
507
|
// atan builtins
|
|
479
508
|
//===----------------------------------------------------------------------===//
|
|
@@ -482,16 +511,18 @@ void asuint(double4, out uint4, out uint4);
|
|
|
482
511
|
/// \brief Returns the arctangent of the input value, \a Val.
|
|
483
512
|
/// \param Val The input value.
|
|
484
513
|
|
|
485
|
-
|
|
514
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
486
515
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
|
|
487
516
|
half atan(half);
|
|
517
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
488
518
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
|
|
489
519
|
half2 atan(half2);
|
|
520
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
490
521
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
|
|
491
522
|
half3 atan(half3);
|
|
523
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
492
524
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
|
|
493
525
|
half4 atan(half4);
|
|
494
|
-
#endif
|
|
495
526
|
|
|
496
527
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan)
|
|
497
528
|
float atan(float);
|
|
@@ -512,16 +543,18 @@ float4 atan(float4);
|
|
|
512
543
|
/// \param y The y-coordinate.
|
|
513
544
|
/// \param x The x-coordinate.
|
|
514
545
|
|
|
515
|
-
|
|
546
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
516
547
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
|
|
517
548
|
half atan2(half y, half x);
|
|
549
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
518
550
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
|
|
519
551
|
half2 atan2(half2 y, half2 x);
|
|
552
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
520
553
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
|
|
521
554
|
half3 atan2(half3 y, half3 x);
|
|
555
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
522
556
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
|
|
523
557
|
half4 atan2(half4 y, half4 x);
|
|
524
|
-
#endif
|
|
525
558
|
|
|
526
559
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_atan2)
|
|
527
560
|
float atan2(float y, float x);
|
|
@@ -728,16 +761,18 @@ float4 cos(float4);
|
|
|
728
761
|
/// \brief Returns the hyperbolic cosine of the input value, \a Val.
|
|
729
762
|
/// \param Val The input value.
|
|
730
763
|
|
|
731
|
-
|
|
764
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
732
765
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
|
|
733
766
|
half cosh(half);
|
|
767
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
734
768
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
|
|
735
769
|
half2 cosh(half2);
|
|
770
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
736
771
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
|
|
737
772
|
half3 cosh(half3);
|
|
773
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
738
774
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
|
|
739
775
|
half4 cosh(half4);
|
|
740
|
-
#endif
|
|
741
776
|
|
|
742
777
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_cosh)
|
|
743
778
|
float cosh(float);
|
|
@@ -871,35 +906,6 @@ float3 degrees(float3);
|
|
|
871
906
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_degrees)
|
|
872
907
|
float4 degrees(float4);
|
|
873
908
|
|
|
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
909
|
//===----------------------------------------------------------------------===//
|
|
904
910
|
// dot product builtins
|
|
905
911
|
//===----------------------------------------------------------------------===//
|
|
@@ -1079,76 +1085,25 @@ _HLSL_BUILTIN_ALIAS(__builtin_elementwise_exp2)
|
|
|
1079
1085
|
float4 exp2(float4);
|
|
1080
1086
|
|
|
1081
1087
|
//===----------------------------------------------------------------------===//
|
|
1082
|
-
//
|
|
1088
|
+
// f16tof32 builtins
|
|
1083
1089
|
//===----------------------------------------------------------------------===//
|
|
1084
1090
|
|
|
1085
|
-
/// \fn
|
|
1086
|
-
/// \brief Returns the
|
|
1087
|
-
///
|
|
1088
|
-
/// \param
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1093
|
-
uint firstbithigh(int16_t);
|
|
1094
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1095
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1096
|
-
uint2 firstbithigh(int16_t2);
|
|
1097
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1098
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1099
|
-
uint3 firstbithigh(int16_t3);
|
|
1100
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1101
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1102
|
-
uint4 firstbithigh(int16_t4);
|
|
1103
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1104
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1105
|
-
uint firstbithigh(uint16_t);
|
|
1106
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1107
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1108
|
-
uint2 firstbithigh(uint16_t2);
|
|
1109
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1110
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1111
|
-
uint3 firstbithigh(uint16_t3);
|
|
1112
|
-
_HLSL_AVAILABILITY(shadermodel, 6.2)
|
|
1113
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1114
|
-
uint4 firstbithigh(uint16_t4);
|
|
1115
|
-
#endif
|
|
1091
|
+
/// \fn float f16tof32(uint x)
|
|
1092
|
+
/// \brief Returns the half value stored in the low 16 bits of the uint arg
|
|
1093
|
+
/// converted to a float.
|
|
1094
|
+
/// \param x The uint containing two half values.
|
|
1095
|
+
///
|
|
1096
|
+
/// The float value of the half value found in the low 16 bits of the \a xi
|
|
1097
|
+
/// parameter.
|
|
1116
1098
|
|
|
1117
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1118
|
-
|
|
1119
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1120
|
-
|
|
1121
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1122
|
-
|
|
1123
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1127
|
-
uint firstbithigh(uint);
|
|
1128
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1129
|
-
uint2 firstbithigh(uint2);
|
|
1130
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1131
|
-
uint3 firstbithigh(uint3);
|
|
1132
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1133
|
-
uint4 firstbithigh(uint4);
|
|
1134
|
-
|
|
1135
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1136
|
-
uint firstbithigh(int64_t);
|
|
1137
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1138
|
-
uint2 firstbithigh(int64_t2);
|
|
1139
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1140
|
-
uint3 firstbithigh(int64_t3);
|
|
1141
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1142
|
-
uint4 firstbithigh(int64_t4);
|
|
1143
|
-
|
|
1144
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1145
|
-
uint firstbithigh(uint64_t);
|
|
1146
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1147
|
-
uint2 firstbithigh(uint64_t2);
|
|
1148
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1149
|
-
uint3 firstbithigh(uint64_t3);
|
|
1150
|
-
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_firstbithigh)
|
|
1151
|
-
uint4 firstbithigh(uint64_t4);
|
|
1099
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_f16tof32)
|
|
1100
|
+
float f16tof32(uint);
|
|
1101
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_f16tof32)
|
|
1102
|
+
float2 f16tof32(uint2);
|
|
1103
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_f16tof32)
|
|
1104
|
+
float3 f16tof32(uint3);
|
|
1105
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_f16tof32)
|
|
1106
|
+
float4 f16tof32(uint4);
|
|
1152
1107
|
|
|
1153
1108
|
//===----------------------------------------------------------------------===//
|
|
1154
1109
|
// firstbitlow builtins
|
|
@@ -1253,40 +1208,6 @@ float3 floor(float3);
|
|
|
1253
1208
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_floor)
|
|
1254
1209
|
float4 floor(float4);
|
|
1255
1210
|
|
|
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
1211
|
//===----------------------------------------------------------------------===//
|
|
1291
1212
|
// frac builtins
|
|
1292
1213
|
//===----------------------------------------------------------------------===//
|
|
@@ -1352,6 +1273,39 @@ bool3 isinf(float3);
|
|
|
1352
1273
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isinf)
|
|
1353
1274
|
bool4 isinf(float4);
|
|
1354
1275
|
|
|
1276
|
+
//===----------------------------------------------------------------------===//
|
|
1277
|
+
// isnan builtins
|
|
1278
|
+
//===----------------------------------------------------------------------===//
|
|
1279
|
+
|
|
1280
|
+
/// \fn T isnan(T x)
|
|
1281
|
+
/// \brief Determines if the specified value \a x is Not a Number.
|
|
1282
|
+
/// \param x The specified input value.
|
|
1283
|
+
///
|
|
1284
|
+
/// Returns a value of the same size as the input, with a value set
|
|
1285
|
+
/// to True if the x parameter is NaN or QNaN. Otherwise, False.
|
|
1286
|
+
|
|
1287
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
1288
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1289
|
+
bool isnan(half);
|
|
1290
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
1291
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1292
|
+
bool2 isnan(half2);
|
|
1293
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
1294
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1295
|
+
bool3 isnan(half3);
|
|
1296
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
1297
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1298
|
+
bool4 isnan(half4);
|
|
1299
|
+
|
|
1300
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1301
|
+
bool isnan(float);
|
|
1302
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1303
|
+
bool2 isnan(float2);
|
|
1304
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1305
|
+
bool3 isnan(float3);
|
|
1306
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_isnan)
|
|
1307
|
+
bool4 isnan(float4);
|
|
1308
|
+
|
|
1355
1309
|
//===----------------------------------------------------------------------===//
|
|
1356
1310
|
// lerp builtins
|
|
1357
1311
|
//===----------------------------------------------------------------------===//
|
|
@@ -1388,30 +1342,6 @@ float3 lerp(float3, float3, float3);
|
|
|
1388
1342
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_lerp)
|
|
1389
1343
|
float4 lerp(float4, float4, float4);
|
|
1390
1344
|
|
|
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
1345
|
//===----------------------------------------------------------------------===//
|
|
1416
1346
|
// log builtins
|
|
1417
1347
|
//===----------------------------------------------------------------------===//
|
|
@@ -1856,6 +1786,59 @@ float3 normalize(float3);
|
|
|
1856
1786
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_normalize)
|
|
1857
1787
|
float4 normalize(float4);
|
|
1858
1788
|
|
|
1789
|
+
//===----------------------------------------------------------------------===//
|
|
1790
|
+
// or builtins
|
|
1791
|
+
//===----------------------------------------------------------------------===//
|
|
1792
|
+
|
|
1793
|
+
/// \fn bool or(bool x, bool y)
|
|
1794
|
+
/// \brief Logically ors two boolean vectors or matrices elementwise and
|
|
1795
|
+
/// produces a bool vector or matrix output.
|
|
1796
|
+
|
|
1797
|
+
// TODO: Clean up clang-format marker once we've resolved
|
|
1798
|
+
// https://github.com/llvm/llvm-project/issues/127851
|
|
1799
|
+
//
|
|
1800
|
+
// clang-format off
|
|
1801
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1802
|
+
bool or(bool, bool);
|
|
1803
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1804
|
+
bool2 or(bool2, bool2);
|
|
1805
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1806
|
+
bool3 or(bool3, bool3);
|
|
1807
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1808
|
+
bool4 or(bool4, bool4);
|
|
1809
|
+
|
|
1810
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1811
|
+
bool1x2 or(bool1x2 x, bool1x2 y);
|
|
1812
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1813
|
+
bool1x3 or(bool1x3 x, bool1x3 y);
|
|
1814
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1815
|
+
bool1x4 or(bool1x4 x, bool1x4 y);
|
|
1816
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1817
|
+
bool2x1 or(bool2x1 x, bool2x1 y);
|
|
1818
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1819
|
+
bool2x2 or(bool2x2 x, bool2x2 y);
|
|
1820
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1821
|
+
bool2x3 or(bool2x3 x, bool2x3 y);
|
|
1822
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1823
|
+
bool2x4 or(bool2x4 x, bool2x4 y);
|
|
1824
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1825
|
+
bool3x1 or(bool3x1 x, bool3x1 y);
|
|
1826
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1827
|
+
bool3x2 or(bool3x2 x, bool3x2 y);
|
|
1828
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1829
|
+
bool3x3 or(bool3x3 x, bool3x3 y);
|
|
1830
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1831
|
+
bool3x4 or(bool3x4 x, bool3x4 y);
|
|
1832
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1833
|
+
bool4x1 or(bool4x1 x, bool4x1 y);
|
|
1834
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1835
|
+
bool4x2 or(bool4x2 x, bool4x2 y);
|
|
1836
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1837
|
+
bool4x3 or(bool4x3 x, bool4x3 y);
|
|
1838
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_or)
|
|
1839
|
+
bool4x4 or(bool4x4 x, bool4x4 y);
|
|
1840
|
+
// clang-format on
|
|
1841
|
+
|
|
1859
1842
|
//===----------------------------------------------------------------------===//
|
|
1860
1843
|
// pow builtins
|
|
1861
1844
|
//===----------------------------------------------------------------------===//
|
|
@@ -1944,29 +1927,12 @@ uint64_t4 reversebits(uint64_t4);
|
|
|
1944
1927
|
/// x[0] * y[1] - y[0] * x[1]
|
|
1945
1928
|
|
|
1946
1929
|
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
1947
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1930
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_crossf16)
|
|
1948
1931
|
half3 cross(half3, half3);
|
|
1949
1932
|
|
|
1950
|
-
_HLSL_BUILTIN_ALIAS(
|
|
1933
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_crossf32)
|
|
1951
1934
|
float3 cross(float3, float3);
|
|
1952
1935
|
|
|
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
1936
|
//===----------------------------------------------------------------------===//
|
|
1971
1937
|
// rcp builtins
|
|
1972
1938
|
//===----------------------------------------------------------------------===//
|
|
@@ -2136,9 +2102,78 @@ T select(bool, T, T);
|
|
|
2136
2102
|
/// \param FalseVals The vector values are chosen from when conditions are
|
|
2137
2103
|
/// false.
|
|
2138
2104
|
|
|
2139
|
-
template <typename T
|
|
2105
|
+
template <typename T>
|
|
2106
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2107
|
+
vector<T, 2> select(vector<bool, 2>, vector<T, 2>, vector<T, 2>);
|
|
2108
|
+
|
|
2109
|
+
template <typename T>
|
|
2110
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2111
|
+
vector<T, 3> select(vector<bool, 3>, vector<T, 3>, vector<T, 3>);
|
|
2112
|
+
|
|
2113
|
+
template <typename T>
|
|
2114
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2115
|
+
vector<T, 4> select(vector<bool, 4>, vector<T, 4>, vector<T, 4>);
|
|
2116
|
+
|
|
2117
|
+
/// \fn vector<T,Sz> select(vector<bool,Sz> Conds, T TrueVal,
|
|
2118
|
+
/// vector<T,Sz> FalseVals)
|
|
2119
|
+
/// \brief ternary operator for vectors. All vectors must be the same size.
|
|
2120
|
+
/// \param Conds The Condition input values.
|
|
2121
|
+
/// \param TrueVal The scalar value to splat from when conditions are true.
|
|
2122
|
+
/// \param FalseVals The vector values are chosen from when conditions are
|
|
2123
|
+
/// false.
|
|
2124
|
+
|
|
2125
|
+
template <typename T>
|
|
2126
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2127
|
+
vector<T, 2> select(vector<bool, 2>, T, vector<T, 2>);
|
|
2128
|
+
|
|
2129
|
+
template <typename T>
|
|
2130
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2131
|
+
vector<T, 3> select(vector<bool, 3>, T, vector<T, 3>);
|
|
2132
|
+
|
|
2133
|
+
template <typename T>
|
|
2134
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2135
|
+
vector<T, 4> select(vector<bool, 4>, T, vector<T, 4>);
|
|
2136
|
+
|
|
2137
|
+
/// \fn vector<T,Sz> select(vector<bool,Sz> Conds, vector<T,Sz> TrueVals,
|
|
2138
|
+
/// T FalseVal)
|
|
2139
|
+
/// \brief ternary operator for vectors. All vectors must be the same size.
|
|
2140
|
+
/// \param Conds The Condition input values.
|
|
2141
|
+
/// \param TrueVals The vector values are chosen from when conditions are true.
|
|
2142
|
+
/// \param FalseVal The scalar value to splat from when conditions are false.
|
|
2143
|
+
|
|
2144
|
+
template <typename T>
|
|
2145
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2146
|
+
vector<T, 2> select(vector<bool, 2>, vector<T, 2>, T);
|
|
2147
|
+
|
|
2148
|
+
template <typename T>
|
|
2149
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2150
|
+
vector<T, 3> select(vector<bool, 3>, vector<T, 3>, T);
|
|
2151
|
+
|
|
2152
|
+
template <typename T>
|
|
2153
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2154
|
+
vector<T, 4> select(vector<bool, 4>, vector<T, 4>, T);
|
|
2155
|
+
|
|
2156
|
+
/// \fn vector<T,Sz> select(vector<bool,Sz> Conds, vector<T,Sz> TrueVals,
|
|
2157
|
+
/// T FalseVal)
|
|
2158
|
+
/// \brief ternary operator for vectors. All vectors must be the same size.
|
|
2159
|
+
/// \param Conds The Condition input values.
|
|
2160
|
+
/// \param TrueVal The scalar value to splat from when conditions are true.
|
|
2161
|
+
/// \param FalseVal The scalar value to splat from when conditions are false.
|
|
2162
|
+
|
|
2163
|
+
template <typename T>
|
|
2164
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2165
|
+
__detail::enable_if_t<__detail::is_arithmetic<T>::Value, vector<T, 2>> select(
|
|
2166
|
+
vector<bool, 2>, T, T);
|
|
2167
|
+
|
|
2168
|
+
template <typename T>
|
|
2169
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2170
|
+
__detail::enable_if_t<__detail::is_arithmetic<T>::Value, vector<T, 3>> select(
|
|
2171
|
+
vector<bool, 3>, T, T);
|
|
2172
|
+
|
|
2173
|
+
template <typename T>
|
|
2140
2174
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_select)
|
|
2141
|
-
|
|
2175
|
+
__detail::enable_if_t<__detail::is_arithmetic<T>::Value, vector<T, 4>> select(
|
|
2176
|
+
vector<bool, 4>, T, T);
|
|
2142
2177
|
|
|
2143
2178
|
//===----------------------------------------------------------------------===//
|
|
2144
2179
|
// sin builtins
|
|
@@ -2178,16 +2213,18 @@ float4 sin(float4);
|
|
|
2178
2213
|
/// \brief Returns the hyperbolic sine of the input value, \a Val.
|
|
2179
2214
|
/// \param Val The input value.
|
|
2180
2215
|
|
|
2181
|
-
|
|
2216
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2182
2217
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
|
|
2183
2218
|
half sinh(half);
|
|
2219
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2184
2220
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
|
|
2185
2221
|
half2 sinh(half2);
|
|
2222
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2186
2223
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
|
|
2187
2224
|
half3 sinh(half3);
|
|
2225
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2188
2226
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
|
|
2189
2227
|
half4 sinh(half4);
|
|
2190
|
-
#endif
|
|
2191
2228
|
|
|
2192
2229
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_sinh)
|
|
2193
2230
|
float sinh(float);
|
|
@@ -2232,10 +2269,10 @@ float4 sqrt(float4);
|
|
|
2232
2269
|
// step builtins
|
|
2233
2270
|
//===----------------------------------------------------------------------===//
|
|
2234
2271
|
|
|
2235
|
-
/// \fn T step(T
|
|
2272
|
+
/// \fn T step(T y, T x)
|
|
2236
2273
|
/// \brief Returns 1 if the x parameter is greater than or equal to the y
|
|
2237
|
-
/// parameter; otherwise, 0. vector. \param
|
|
2238
|
-
/// value to compare. \param
|
|
2274
|
+
/// parameter; otherwise, 0. vector. \param y [in] The first floating-point
|
|
2275
|
+
/// value to compare. \param x [in] The second floating-point value to compare.
|
|
2239
2276
|
///
|
|
2240
2277
|
/// Step is based on the following formula: (x >= y) ? 1 : 0
|
|
2241
2278
|
|
|
@@ -2269,16 +2306,18 @@ float4 step(float4, float4);
|
|
|
2269
2306
|
/// \brief Returns the tangent of the input value, \a Val.
|
|
2270
2307
|
/// \param Val The input value.
|
|
2271
2308
|
|
|
2272
|
-
|
|
2309
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2273
2310
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
|
|
2274
2311
|
half tan(half);
|
|
2312
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2275
2313
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
|
|
2276
2314
|
half2 tan(half2);
|
|
2315
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2277
2316
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
|
|
2278
2317
|
half3 tan(half3);
|
|
2318
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2279
2319
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
|
|
2280
2320
|
half4 tan(half4);
|
|
2281
|
-
#endif
|
|
2282
2321
|
|
|
2283
2322
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tan)
|
|
2284
2323
|
float tan(float);
|
|
@@ -2297,16 +2336,18 @@ float4 tan(float4);
|
|
|
2297
2336
|
/// \brief Returns the hyperbolic tangent of the input value, \a Val.
|
|
2298
2337
|
/// \param Val The input value.
|
|
2299
2338
|
|
|
2300
|
-
|
|
2339
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2301
2340
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
|
|
2302
2341
|
half tanh(half);
|
|
2342
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2303
2343
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
|
|
2304
2344
|
half2 tanh(half2);
|
|
2345
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2305
2346
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
|
|
2306
2347
|
half3 tanh(half3);
|
|
2348
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
2307
2349
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
|
|
2308
2350
|
half4 tanh(half4);
|
|
2309
|
-
#endif
|
|
2310
2351
|
|
|
2311
2352
|
_HLSL_BUILTIN_ALIAS(__builtin_elementwise_tanh)
|
|
2312
2353
|
float tanh(float);
|
|
@@ -2369,6 +2410,18 @@ _HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
|
2369
2410
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_any_true)
|
|
2370
2411
|
__attribute__((convergent)) bool WaveActiveAnyTrue(bool Val);
|
|
2371
2412
|
|
|
2413
|
+
/// \brief Returns a uint4 containing a bitmask of the evaluation of the
|
|
2414
|
+
/// boolean expression for all active lanes in the current wave.
|
|
2415
|
+
/// The least-significant bit corresponds to the lane with index zero.
|
|
2416
|
+
/// The bits corresponding to inactive lanes will be zero. The bits that
|
|
2417
|
+
/// are greater than or equal to WaveGetLaneCount will be zero.
|
|
2418
|
+
///
|
|
2419
|
+
/// \param Val The boolean expression to evaluate.
|
|
2420
|
+
/// \return uint4 bitmask
|
|
2421
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2422
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_ballot)
|
|
2423
|
+
__attribute__((convergent)) uint4 WaveActiveBallot(bool Val);
|
|
2424
|
+
|
|
2372
2425
|
/// \brief Counts the number of boolean variables which evaluate to true across
|
|
2373
2426
|
/// all active lanes in the current wave.
|
|
2374
2427
|
///
|
|
@@ -2388,6 +2441,10 @@ _HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
|
2388
2441
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_is_first_lane)
|
|
2389
2442
|
__attribute__((convergent)) bool WaveIsFirstLane();
|
|
2390
2443
|
|
|
2444
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2445
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_get_lane_count)
|
|
2446
|
+
__attribute__((convergent)) uint WaveGetLaneCount();
|
|
2447
|
+
|
|
2391
2448
|
//===----------------------------------------------------------------------===//
|
|
2392
2449
|
// WaveReadLaneAt builtins
|
|
2393
2450
|
//===----------------------------------------------------------------------===//
|
|
@@ -2396,77 +2453,108 @@ __attribute__((convergent)) bool WaveIsFirstLane();
|
|
|
2396
2453
|
// the specified wave.
|
|
2397
2454
|
|
|
2398
2455
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2399
|
-
__attribute__((convergent)) bool WaveReadLaneAt(bool,
|
|
2456
|
+
__attribute__((convergent)) bool WaveReadLaneAt(bool, uint32_t);
|
|
2400
2457
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2401
|
-
__attribute__((convergent)) bool2 WaveReadLaneAt(bool2,
|
|
2458
|
+
__attribute__((convergent)) bool2 WaveReadLaneAt(bool2, uint32_t);
|
|
2402
2459
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2403
|
-
__attribute__((convergent)) bool3 WaveReadLaneAt(bool3,
|
|
2460
|
+
__attribute__((convergent)) bool3 WaveReadLaneAt(bool3, uint32_t);
|
|
2404
2461
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2405
|
-
__attribute__((convergent)) bool4 WaveReadLaneAt(bool4,
|
|
2462
|
+
__attribute__((convergent)) bool4 WaveReadLaneAt(bool4, uint32_t);
|
|
2406
2463
|
|
|
2407
2464
|
#ifdef __HLSL_ENABLE_16_BIT
|
|
2408
2465
|
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2409
2466
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2410
|
-
__attribute__((convergent)) int16_t WaveReadLaneAt(int16_t,
|
|
2467
|
+
__attribute__((convergent)) int16_t WaveReadLaneAt(int16_t, uint32_t);
|
|
2468
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2469
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2470
|
+
__attribute__((convergent)) int16_t2 WaveReadLaneAt(int16_t2, uint32_t);
|
|
2471
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2472
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2473
|
+
__attribute__((convergent)) int16_t3 WaveReadLaneAt(int16_t3, uint32_t);
|
|
2411
2474
|
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2412
2475
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2413
|
-
__attribute__((convergent))
|
|
2476
|
+
__attribute__((convergent)) int16_t4 WaveReadLaneAt(int16_t4, uint32_t);
|
|
2477
|
+
|
|
2478
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2479
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2480
|
+
__attribute__((convergent)) uint16_t WaveReadLaneAt(uint16_t, uint32_t);
|
|
2414
2481
|
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2415
2482
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2416
|
-
__attribute__((convergent))
|
|
2483
|
+
__attribute__((convergent)) uint16_t2 WaveReadLaneAt(uint16_t2, uint32_t);
|
|
2417
2484
|
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2418
2485
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2419
|
-
__attribute__((convergent))
|
|
2486
|
+
__attribute__((convergent)) uint16_t3 WaveReadLaneAt(uint16_t3, uint32_t);
|
|
2487
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2488
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2489
|
+
__attribute__((convergent)) uint16_t4 WaveReadLaneAt(uint16_t4, uint32_t);
|
|
2420
2490
|
#endif
|
|
2421
2491
|
|
|
2422
2492
|
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2423
2493
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2424
|
-
__attribute__((convergent)) half WaveReadLaneAt(half,
|
|
2494
|
+
__attribute__((convergent)) half WaveReadLaneAt(half, uint32_t);
|
|
2425
2495
|
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2426
2496
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2427
|
-
__attribute__((convergent)) half2 WaveReadLaneAt(half2,
|
|
2497
|
+
__attribute__((convergent)) half2 WaveReadLaneAt(half2, uint32_t);
|
|
2428
2498
|
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2429
2499
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2430
|
-
__attribute__((convergent)) half3 WaveReadLaneAt(half3,
|
|
2500
|
+
__attribute__((convergent)) half3 WaveReadLaneAt(half3, uint32_t);
|
|
2431
2501
|
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2432
2502
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2433
|
-
__attribute__((convergent)) half4 WaveReadLaneAt(half4,
|
|
2503
|
+
__attribute__((convergent)) half4 WaveReadLaneAt(half4, uint32_t);
|
|
2504
|
+
|
|
2505
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2506
|
+
__attribute__((convergent)) int WaveReadLaneAt(int, uint32_t);
|
|
2507
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2508
|
+
__attribute__((convergent)) int2 WaveReadLaneAt(int2, uint32_t);
|
|
2509
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2510
|
+
__attribute__((convergent)) int3 WaveReadLaneAt(int3, uint32_t);
|
|
2511
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2512
|
+
__attribute__((convergent)) int4 WaveReadLaneAt(int4, uint32_t);
|
|
2513
|
+
|
|
2514
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2515
|
+
__attribute__((convergent)) uint WaveReadLaneAt(uint, uint32_t);
|
|
2516
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2517
|
+
__attribute__((convergent)) uint2 WaveReadLaneAt(uint2, uint32_t);
|
|
2518
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2519
|
+
__attribute__((convergent)) uint3 WaveReadLaneAt(uint3, uint32_t);
|
|
2520
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2521
|
+
__attribute__((convergent)) uint4 WaveReadLaneAt(uint4, uint32_t);
|
|
2434
2522
|
|
|
2435
2523
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2436
|
-
__attribute__((convergent))
|
|
2524
|
+
__attribute__((convergent)) float WaveReadLaneAt(float, uint32_t);
|
|
2437
2525
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2438
|
-
__attribute__((convergent))
|
|
2526
|
+
__attribute__((convergent)) float2 WaveReadLaneAt(float2, uint32_t);
|
|
2439
2527
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2440
|
-
__attribute__((convergent))
|
|
2528
|
+
__attribute__((convergent)) float3 WaveReadLaneAt(float3, uint32_t);
|
|
2441
2529
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2442
|
-
__attribute__((convergent))
|
|
2530
|
+
__attribute__((convergent)) float4 WaveReadLaneAt(float4, uint32_t);
|
|
2443
2531
|
|
|
2444
2532
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2445
|
-
__attribute__((convergent))
|
|
2533
|
+
__attribute__((convergent)) int64_t WaveReadLaneAt(int64_t, uint32_t);
|
|
2446
2534
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2447
|
-
__attribute__((convergent))
|
|
2535
|
+
__attribute__((convergent)) int64_t2 WaveReadLaneAt(int64_t2, uint32_t);
|
|
2448
2536
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2449
|
-
__attribute__((convergent))
|
|
2537
|
+
__attribute__((convergent)) int64_t3 WaveReadLaneAt(int64_t3, uint32_t);
|
|
2450
2538
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2451
|
-
__attribute__((convergent))
|
|
2539
|
+
__attribute__((convergent)) int64_t4 WaveReadLaneAt(int64_t4, uint32_t);
|
|
2452
2540
|
|
|
2453
2541
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2454
|
-
__attribute__((convergent))
|
|
2542
|
+
__attribute__((convergent)) uint64_t WaveReadLaneAt(uint64_t, uint32_t);
|
|
2455
2543
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2456
|
-
__attribute__((convergent))
|
|
2544
|
+
__attribute__((convergent)) uint64_t2 WaveReadLaneAt(uint64_t2, uint32_t);
|
|
2457
2545
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2458
|
-
__attribute__((convergent))
|
|
2546
|
+
__attribute__((convergent)) uint64_t3 WaveReadLaneAt(uint64_t3, uint32_t);
|
|
2459
2547
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2460
|
-
__attribute__((convergent))
|
|
2548
|
+
__attribute__((convergent)) uint64_t4 WaveReadLaneAt(uint64_t4, uint32_t);
|
|
2461
2549
|
|
|
2462
2550
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2463
|
-
__attribute__((convergent)) double WaveReadLaneAt(double,
|
|
2551
|
+
__attribute__((convergent)) double WaveReadLaneAt(double, uint32_t);
|
|
2464
2552
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2465
|
-
__attribute__((convergent)) double2 WaveReadLaneAt(double2,
|
|
2553
|
+
__attribute__((convergent)) double2 WaveReadLaneAt(double2, uint32_t);
|
|
2466
2554
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2467
|
-
__attribute__((convergent)) double3 WaveReadLaneAt(double3,
|
|
2555
|
+
__attribute__((convergent)) double3 WaveReadLaneAt(double3, uint32_t);
|
|
2468
2556
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_read_lane_at)
|
|
2469
|
-
__attribute__((convergent)) double4 WaveReadLaneAt(double4,
|
|
2557
|
+
__attribute__((convergent)) double4 WaveReadLaneAt(double4, uint32_t);
|
|
2470
2558
|
|
|
2471
2559
|
//===----------------------------------------------------------------------===//
|
|
2472
2560
|
// WaveActiveMax builtins
|
|
@@ -2567,6 +2655,129 @@ __attribute__((convergent)) double3 WaveActiveMax(double3);
|
|
|
2567
2655
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_max)
|
|
2568
2656
|
__attribute__((convergent)) double4 WaveActiveMax(double4);
|
|
2569
2657
|
|
|
2658
|
+
//===----------------------------------------------------------------------===//
|
|
2659
|
+
// WaveActiveMin builtins
|
|
2660
|
+
//===----------------------------------------------------------------------===//
|
|
2661
|
+
|
|
2662
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2663
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2664
|
+
__attribute__((convergent)) half WaveActiveMin(half);
|
|
2665
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2666
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2667
|
+
__attribute__((convergent)) half2 WaveActiveMin(half2);
|
|
2668
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2669
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2670
|
+
__attribute__((convergent)) half3 WaveActiveMin(half3);
|
|
2671
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.0)
|
|
2672
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2673
|
+
__attribute__((convergent)) half4 WaveActiveMin(half4);
|
|
2674
|
+
|
|
2675
|
+
#ifdef __HLSL_ENABLE_16_BIT
|
|
2676
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2677
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2678
|
+
__attribute__((convergent)) int16_t WaveActiveMin(int16_t);
|
|
2679
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2680
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2681
|
+
__attribute__((convergent)) int16_t2 WaveActiveMin(int16_t2);
|
|
2682
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2683
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2684
|
+
__attribute__((convergent)) int16_t3 WaveActiveMin(int16_t3);
|
|
2685
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2686
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2687
|
+
__attribute__((convergent)) int16_t4 WaveActiveMin(int16_t4);
|
|
2688
|
+
|
|
2689
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2690
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2691
|
+
__attribute__((convergent)) uint16_t WaveActiveMin(uint16_t);
|
|
2692
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2693
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2694
|
+
__attribute__((convergent)) uint16_t2 WaveActiveMin(uint16_t2);
|
|
2695
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2696
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2697
|
+
__attribute__((convergent)) uint16_t3 WaveActiveMin(uint16_t3);
|
|
2698
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2699
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2700
|
+
__attribute__((convergent)) uint16_t4 WaveActiveMin(uint16_t4);
|
|
2701
|
+
#endif
|
|
2702
|
+
|
|
2703
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2704
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2705
|
+
__attribute__((convergent)) int WaveActiveMin(int);
|
|
2706
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2707
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2708
|
+
__attribute__((convergent)) int2 WaveActiveMin(int2);
|
|
2709
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2710
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2711
|
+
__attribute__((convergent)) int3 WaveActiveMin(int3);
|
|
2712
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2713
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2714
|
+
__attribute__((convergent)) int4 WaveActiveMin(int4);
|
|
2715
|
+
|
|
2716
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2717
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2718
|
+
__attribute__((convergent)) uint WaveActiveMin(uint);
|
|
2719
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2720
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2721
|
+
__attribute__((convergent)) uint2 WaveActiveMin(uint2);
|
|
2722
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2723
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2724
|
+
__attribute__((convergent)) uint3 WaveActiveMin(uint3);
|
|
2725
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2726
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2727
|
+
__attribute__((convergent)) uint4 WaveActiveMin(uint4);
|
|
2728
|
+
|
|
2729
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2730
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2731
|
+
__attribute__((convergent)) int64_t WaveActiveMin(int64_t);
|
|
2732
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2733
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2734
|
+
__attribute__((convergent)) int64_t2 WaveActiveMin(int64_t2);
|
|
2735
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2736
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2737
|
+
__attribute__((convergent)) int64_t3 WaveActiveMin(int64_t3);
|
|
2738
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2739
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2740
|
+
__attribute__((convergent)) int64_t4 WaveActiveMin(int64_t4);
|
|
2741
|
+
|
|
2742
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2743
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2744
|
+
__attribute__((convergent)) uint64_t WaveActiveMin(uint64_t);
|
|
2745
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2746
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2747
|
+
__attribute__((convergent)) uint64_t2 WaveActiveMin(uint64_t2);
|
|
2748
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2749
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2750
|
+
__attribute__((convergent)) uint64_t3 WaveActiveMin(uint64_t3);
|
|
2751
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2752
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2753
|
+
__attribute__((convergent)) uint64_t4 WaveActiveMin(uint64_t4);
|
|
2754
|
+
|
|
2755
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2756
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2757
|
+
__attribute__((convergent)) float WaveActiveMin(float);
|
|
2758
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2759
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2760
|
+
__attribute__((convergent)) float2 WaveActiveMin(float2);
|
|
2761
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2762
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2763
|
+
__attribute__((convergent)) float3 WaveActiveMin(float3);
|
|
2764
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2765
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2766
|
+
__attribute__((convergent)) float4 WaveActiveMin(float4);
|
|
2767
|
+
|
|
2768
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2769
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2770
|
+
__attribute__((convergent)) double WaveActiveMin(double);
|
|
2771
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2772
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2773
|
+
__attribute__((convergent)) double2 WaveActiveMin(double2);
|
|
2774
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2775
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2776
|
+
__attribute__((convergent)) double3 WaveActiveMin(double3);
|
|
2777
|
+
_HLSL_AVAILABILITY(shadermodel, 6.0)
|
|
2778
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_wave_active_min)
|
|
2779
|
+
__attribute__((convergent)) double4 WaveActiveMin(double4);
|
|
2780
|
+
|
|
2570
2781
|
//===----------------------------------------------------------------------===//
|
|
2571
2782
|
// WaveActiveSum builtins
|
|
2572
2783
|
//===----------------------------------------------------------------------===//
|
|
@@ -2808,7 +3019,143 @@ float4 radians(float4);
|
|
|
2808
3019
|
/// call.
|
|
2809
3020
|
|
|
2810
3021
|
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_group_memory_barrier_with_group_sync)
|
|
2811
|
-
void GroupMemoryBarrierWithGroupSync(void);
|
|
3022
|
+
__attribute__((convergent)) void GroupMemoryBarrierWithGroupSync(void);
|
|
3023
|
+
|
|
3024
|
+
//===----------------------------------------------------------------------===//
|
|
3025
|
+
// ddx_coarse builtin
|
|
3026
|
+
//===----------------------------------------------------------------------===//
|
|
3027
|
+
|
|
3028
|
+
/// \fn T ddx_coarse(T value)
|
|
3029
|
+
/// \brief Computes a low precision partial derivative with respect to the
|
|
3030
|
+
/// screen-space x-coordinate.
|
|
3031
|
+
/// \param value The input value.
|
|
3032
|
+
///
|
|
3033
|
+
/// The return value is a floating point scalar or vector containing the low
|
|
3034
|
+
/// prevision partial derivative of the input value.
|
|
3035
|
+
|
|
3036
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3037
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3038
|
+
half ddx_coarse(half);
|
|
3039
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3040
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3041
|
+
half2 ddx_coarse(half2);
|
|
3042
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3043
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3044
|
+
half3 ddx_coarse(half3);
|
|
3045
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3046
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3047
|
+
half4 ddx_coarse(half4);
|
|
3048
|
+
|
|
3049
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3050
|
+
float ddx_coarse(float);
|
|
3051
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3052
|
+
float2 ddx_coarse(float2);
|
|
3053
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3054
|
+
float3 ddx_coarse(float3);
|
|
3055
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_coarse)
|
|
3056
|
+
float4 ddx_coarse(float4);
|
|
3057
|
+
|
|
3058
|
+
//===----------------------------------------------------------------------===//
|
|
3059
|
+
// ddy_coarse builtin
|
|
3060
|
+
//===----------------------------------------------------------------------===//
|
|
3061
|
+
|
|
3062
|
+
/// \fn T ddy_coarse(T value)
|
|
3063
|
+
/// \brief Computes a low precision partial derivative with respect to the
|
|
3064
|
+
/// screen-space y-coordinate.
|
|
3065
|
+
/// \param value The input value.
|
|
3066
|
+
///
|
|
3067
|
+
/// The return value is a floating point scalar or vector containing the low
|
|
3068
|
+
/// prevision partial derivative of the input value.
|
|
3069
|
+
|
|
3070
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3071
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3072
|
+
half ddy_coarse(half);
|
|
3073
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3074
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3075
|
+
half2 ddy_coarse(half2);
|
|
3076
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3077
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3078
|
+
half3 ddy_coarse(half3);
|
|
3079
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3080
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3081
|
+
half4 ddy_coarse(half4);
|
|
3082
|
+
|
|
3083
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3084
|
+
float ddy_coarse(float);
|
|
3085
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3086
|
+
float2 ddy_coarse(float2);
|
|
3087
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3088
|
+
float3 ddy_coarse(float3);
|
|
3089
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_coarse)
|
|
3090
|
+
float4 ddy_coarse(float4);
|
|
3091
|
+
|
|
3092
|
+
//===----------------------------------------------------------------------===//
|
|
3093
|
+
// ddx_fine builtin
|
|
3094
|
+
//===----------------------------------------------------------------------===//
|
|
3095
|
+
|
|
3096
|
+
/// \fn T ddx_fine(T value)
|
|
3097
|
+
/// \brief Computes a high precision partial derivative with respect to the
|
|
3098
|
+
/// screen-space x-coordinate.
|
|
3099
|
+
/// \param value The input value.
|
|
3100
|
+
///
|
|
3101
|
+
/// The return value is a floating point scalar or vector containing the high
|
|
3102
|
+
/// prevision partial derivative of the input value.
|
|
3103
|
+
|
|
3104
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3105
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3106
|
+
half ddx_fine(half);
|
|
3107
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3108
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3109
|
+
half2 ddx_fine(half2);
|
|
3110
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3111
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3112
|
+
half3 ddx_fine(half3);
|
|
3113
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3114
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3115
|
+
half4 ddx_fine(half4);
|
|
3116
|
+
|
|
3117
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3118
|
+
float ddx_fine(float);
|
|
3119
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3120
|
+
float2 ddx_fine(float2);
|
|
3121
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3122
|
+
float3 ddx_fine(float3);
|
|
3123
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddx_fine)
|
|
3124
|
+
float4 ddx_fine(float4);
|
|
3125
|
+
|
|
3126
|
+
//===----------------------------------------------------------------------===//
|
|
3127
|
+
// ddy_fine builtin
|
|
3128
|
+
//===----------------------------------------------------------------------===//
|
|
3129
|
+
|
|
3130
|
+
/// \fn T ddy_fine(T value)
|
|
3131
|
+
/// \brief Computes a high precision partial derivative with respect to the
|
|
3132
|
+
/// screen-space y-coordinate.
|
|
3133
|
+
/// \param value The input value.
|
|
3134
|
+
///
|
|
3135
|
+
/// The return value is a floating point scalar or vector containing the high
|
|
3136
|
+
/// prevision partial derivative of the input value.
|
|
3137
|
+
|
|
3138
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3139
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3140
|
+
half ddy_fine(half);
|
|
3141
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3142
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3143
|
+
half2 ddy_fine(half2);
|
|
3144
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3145
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3146
|
+
half3 ddy_fine(half3);
|
|
3147
|
+
_HLSL_16BIT_AVAILABILITY(shadermodel, 6.2)
|
|
3148
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3149
|
+
half4 ddy_fine(half4);
|
|
3150
|
+
|
|
3151
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3152
|
+
float ddy_fine(float);
|
|
3153
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3154
|
+
float2 ddy_fine(float2);
|
|
3155
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3156
|
+
float3 ddy_fine(float3);
|
|
3157
|
+
_HLSL_BUILTIN_ALIAS(__builtin_hlsl_elementwise_ddy_fine)
|
|
3158
|
+
float4 ddy_fine(float4);
|
|
2812
3159
|
|
|
2813
3160
|
} // namespace hlsl
|
|
2814
|
-
#endif //
|
|
3161
|
+
#endif //_HLSL_HLSL_ALIAS_INTRINSICS_H_
|