@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
|
@@ -0,0 +1,520 @@
|
|
|
1
|
+
//===--- hlsl_compat_overloads.h - Extra HLSL overloads for intrinsics ----===//
|
|
2
|
+
//
|
|
3
|
+
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
// See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
//
|
|
7
|
+
//===----------------------------------------------------------------------===//
|
|
8
|
+
|
|
9
|
+
#ifndef _HLSL_COMPAT_OVERLOADS_H_
|
|
10
|
+
#define _HLSL_COMPAT_OVERLOADS_H_
|
|
11
|
+
|
|
12
|
+
namespace hlsl {
|
|
13
|
+
|
|
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 signed integer,
|
|
16
|
+
// unsigned integer and floating point. Keeping this ordering consistent will
|
|
17
|
+
// help keep this file manageable as it grows.
|
|
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
|
+
|
|
31
|
+
#define _DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(fn) \
|
|
32
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
33
|
+
constexpr float fn(double V) { return fn((float)V); } \
|
|
34
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
35
|
+
constexpr float2 fn(double2 V) { return fn((float2)V); } \
|
|
36
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
37
|
+
constexpr float3 fn(double3 V) { return fn((float3)V); } \
|
|
38
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
39
|
+
constexpr float4 fn(double4 V) { return fn((float4)V); }
|
|
40
|
+
|
|
41
|
+
#define _DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(fn) \
|
|
42
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
43
|
+
constexpr float fn(double V1, double V2) { \
|
|
44
|
+
return fn((float)V1, (float)V2); \
|
|
45
|
+
} \
|
|
46
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
47
|
+
constexpr float2 fn(double2 V1, double2 V2) { \
|
|
48
|
+
return fn((float2)V1, (float2)V2); \
|
|
49
|
+
} \
|
|
50
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
51
|
+
constexpr float3 fn(double3 V1, double3 V2) { \
|
|
52
|
+
return fn((float3)V1, (float3)V2); \
|
|
53
|
+
} \
|
|
54
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
55
|
+
constexpr float4 fn(double4 V1, double4 V2) { \
|
|
56
|
+
return fn((float4)V1, (float4)V2); \
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
#define _DXC_COMPAT_TERNARY_DOUBLE_OVERLOADS(fn) \
|
|
60
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
61
|
+
constexpr float fn(double V1, double V2, double V3) { \
|
|
62
|
+
return fn((float)V1, (float)V2, (float)V3); \
|
|
63
|
+
} \
|
|
64
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
65
|
+
constexpr float2 fn(double2 V1, double2 V2, double2 V3) { \
|
|
66
|
+
return fn((float2)V1, (float2)V2, (float2)V3); \
|
|
67
|
+
} \
|
|
68
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
69
|
+
constexpr float3 fn(double3 V1, double3 V2, double3 V3) { \
|
|
70
|
+
return fn((float3)V1, (float3)V2, (float3)V3); \
|
|
71
|
+
} \
|
|
72
|
+
_DXC_DEPRECATED_64BIT_FN(fn) \
|
|
73
|
+
constexpr float4 fn(double4 V1, double4 V2, double4 V3) { \
|
|
74
|
+
return fn((float4)V1, (float4)V2, (float4)V3); \
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
#define _DXC_COMPAT_UNARY_INTEGER_OVERLOADS(fn) \
|
|
78
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
79
|
+
constexpr float fn(int V) { return fn((float)V); } \
|
|
80
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
81
|
+
constexpr float2 fn(int2 V) { return fn((float2)V); } \
|
|
82
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
83
|
+
constexpr float3 fn(int3 V) { return fn((float3)V); } \
|
|
84
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
85
|
+
constexpr float4 fn(int4 V) { return fn((float4)V); } \
|
|
86
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
87
|
+
constexpr float fn(uint V) { return fn((float)V); } \
|
|
88
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
89
|
+
constexpr float2 fn(uint2 V) { return fn((float2)V); } \
|
|
90
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
91
|
+
constexpr float3 fn(uint3 V) { return fn((float3)V); } \
|
|
92
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
93
|
+
constexpr float4 fn(uint4 V) { return fn((float4)V); } \
|
|
94
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
95
|
+
constexpr float fn(int64_t V) { return fn((float)V); } \
|
|
96
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
97
|
+
constexpr float2 fn(int64_t2 V) { return fn((float2)V); } \
|
|
98
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
99
|
+
constexpr float3 fn(int64_t3 V) { return fn((float3)V); } \
|
|
100
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
101
|
+
constexpr float4 fn(int64_t4 V) { return fn((float4)V); } \
|
|
102
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
103
|
+
constexpr float fn(uint64_t V) { return fn((float)V); } \
|
|
104
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
105
|
+
constexpr float2 fn(uint64_t2 V) { return fn((float2)V); } \
|
|
106
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
107
|
+
constexpr float3 fn(uint64_t3 V) { return fn((float3)V); } \
|
|
108
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
109
|
+
constexpr float4 fn(uint64_t4 V) { return fn((float4)V); }
|
|
110
|
+
|
|
111
|
+
#define _DXC_COMPAT_BINARY_INTEGER_OVERLOADS(fn) \
|
|
112
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
113
|
+
constexpr float fn(int V1, int V2) { return fn((float)V1, (float)V2); } \
|
|
114
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
115
|
+
constexpr float2 fn(int2 V1, int2 V2) { return fn((float2)V1, (float2)V2); } \
|
|
116
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
117
|
+
constexpr float3 fn(int3 V1, int3 V2) { return fn((float3)V1, (float3)V2); } \
|
|
118
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
119
|
+
constexpr float4 fn(int4 V1, int4 V2) { return fn((float4)V1, (float4)V2); } \
|
|
120
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
121
|
+
constexpr float fn(uint V1, uint V2) { return fn((float)V1, (float)V2); } \
|
|
122
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
123
|
+
constexpr float2 fn(uint2 V1, uint2 V2) { \
|
|
124
|
+
return fn((float2)V1, (float2)V2); \
|
|
125
|
+
} \
|
|
126
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
127
|
+
constexpr float3 fn(uint3 V1, uint3 V2) { \
|
|
128
|
+
return fn((float3)V1, (float3)V2); \
|
|
129
|
+
} \
|
|
130
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
131
|
+
constexpr float4 fn(uint4 V1, uint4 V2) { \
|
|
132
|
+
return fn((float4)V1, (float4)V2); \
|
|
133
|
+
} \
|
|
134
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
135
|
+
constexpr float fn(int64_t V1, int64_t V2) { \
|
|
136
|
+
return fn((float)V1, (float)V2); \
|
|
137
|
+
} \
|
|
138
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
139
|
+
constexpr float2 fn(int64_t2 V1, int64_t2 V2) { \
|
|
140
|
+
return fn((float2)V1, (float2)V2); \
|
|
141
|
+
} \
|
|
142
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
143
|
+
constexpr float3 fn(int64_t3 V1, int64_t3 V2) { \
|
|
144
|
+
return fn((float3)V1, (float3)V2); \
|
|
145
|
+
} \
|
|
146
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
147
|
+
constexpr float4 fn(int64_t4 V1, int64_t4 V2) { \
|
|
148
|
+
return fn((float4)V1, (float4)V2); \
|
|
149
|
+
} \
|
|
150
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
151
|
+
constexpr float fn(uint64_t V1, uint64_t V2) { \
|
|
152
|
+
return fn((float)V1, (float)V2); \
|
|
153
|
+
} \
|
|
154
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
155
|
+
constexpr float2 fn(uint64_t2 V1, uint64_t2 V2) { \
|
|
156
|
+
return fn((float2)V1, (float2)V2); \
|
|
157
|
+
} \
|
|
158
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
159
|
+
constexpr float3 fn(uint64_t3 V1, uint64_t3 V2) { \
|
|
160
|
+
return fn((float3)V1, (float3)V2); \
|
|
161
|
+
} \
|
|
162
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
163
|
+
constexpr float4 fn(uint64_t4 V1, uint64_t4 V2) { \
|
|
164
|
+
return fn((float4)V1, (float4)V2); \
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
#define _DXC_COMPAT_TERNARY_INTEGER_OVERLOADS(fn) \
|
|
168
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
169
|
+
constexpr float fn(int V1, int V2, int V3) { \
|
|
170
|
+
return fn((float)V1, (float)V2, (float)V3); \
|
|
171
|
+
} \
|
|
172
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
173
|
+
constexpr float2 fn(int2 V1, int2 V2, int2 V3) { \
|
|
174
|
+
return fn((float2)V1, (float2)V2, (float2)V3); \
|
|
175
|
+
} \
|
|
176
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
177
|
+
constexpr float3 fn(int3 V1, int3 V2, int3 V3) { \
|
|
178
|
+
return fn((float3)V1, (float3)V2, (float3)V3); \
|
|
179
|
+
} \
|
|
180
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
181
|
+
constexpr float4 fn(int4 V1, int4 V2, int4 V3) { \
|
|
182
|
+
return fn((float4)V1, (float4)V2, (float4)V3); \
|
|
183
|
+
} \
|
|
184
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
185
|
+
constexpr float fn(uint V1, uint V2, uint V3) { \
|
|
186
|
+
return fn((float)V1, (float)V2, (float)V3); \
|
|
187
|
+
} \
|
|
188
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
189
|
+
constexpr float2 fn(uint2 V1, uint2 V2, uint2 V3) { \
|
|
190
|
+
return fn((float2)V1, (float2)V2, (float2)V3); \
|
|
191
|
+
} \
|
|
192
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
193
|
+
constexpr float3 fn(uint3 V1, uint3 V2, uint3 V3) { \
|
|
194
|
+
return fn((float3)V1, (float3)V2, (float3)V3); \
|
|
195
|
+
} \
|
|
196
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
197
|
+
constexpr float4 fn(uint4 V1, uint4 V2, uint4 V3) { \
|
|
198
|
+
return fn((float4)V1, (float4)V2, (float4)V3); \
|
|
199
|
+
} \
|
|
200
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
201
|
+
constexpr float fn(int64_t V1, int64_t V2, int64_t V3) { \
|
|
202
|
+
return fn((float)V1, (float)V2, (float)V3); \
|
|
203
|
+
} \
|
|
204
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
205
|
+
constexpr float2 fn(int64_t2 V1, int64_t2 V2, int64_t2 V3) { \
|
|
206
|
+
return fn((float2)V1, (float2)V2, (float2)V3); \
|
|
207
|
+
} \
|
|
208
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
209
|
+
constexpr float3 fn(int64_t3 V1, int64_t3 V2, int64_t3 V3) { \
|
|
210
|
+
return fn((float3)V1, (float3)V2, (float3)V3); \
|
|
211
|
+
} \
|
|
212
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
213
|
+
constexpr float4 fn(int64_t4 V1, int64_t4 V2, int64_t4 V3) { \
|
|
214
|
+
return fn((float4)V1, (float4)V2, (float4)V3); \
|
|
215
|
+
} \
|
|
216
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
217
|
+
constexpr float fn(uint64_t V1, uint64_t V2, uint64_t V3) { \
|
|
218
|
+
return fn((float)V1, (float)V2, (float)V3); \
|
|
219
|
+
} \
|
|
220
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
221
|
+
constexpr float2 fn(uint64_t2 V1, uint64_t2 V2, uint64_t2 V3) { \
|
|
222
|
+
return fn((float2)V1, (float2)V2, (float2)V3); \
|
|
223
|
+
} \
|
|
224
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
225
|
+
constexpr float3 fn(uint64_t3 V1, uint64_t3 V2, uint64_t3 V3) { \
|
|
226
|
+
return fn((float3)V1, (float3)V2, (float3)V3); \
|
|
227
|
+
} \
|
|
228
|
+
_DXC_DEPRECATED_INT_FN(fn) \
|
|
229
|
+
constexpr float4 fn(uint64_t4 V1, uint64_t4 V2, uint64_t4 V3) { \
|
|
230
|
+
return fn((float4)V1, (float4)V2, (float4)V3); \
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
//===----------------------------------------------------------------------===//
|
|
234
|
+
// acos builtins overloads
|
|
235
|
+
//===----------------------------------------------------------------------===//
|
|
236
|
+
|
|
237
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(acos)
|
|
238
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(acos)
|
|
239
|
+
|
|
240
|
+
//===----------------------------------------------------------------------===//
|
|
241
|
+
// asin builtins overloads
|
|
242
|
+
//===----------------------------------------------------------------------===//
|
|
243
|
+
|
|
244
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(asin)
|
|
245
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(asin)
|
|
246
|
+
|
|
247
|
+
//===----------------------------------------------------------------------===//
|
|
248
|
+
// atan builtins overloads
|
|
249
|
+
//===----------------------------------------------------------------------===//
|
|
250
|
+
|
|
251
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(atan)
|
|
252
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(atan)
|
|
253
|
+
|
|
254
|
+
//===----------------------------------------------------------------------===//
|
|
255
|
+
// atan2 builtins overloads
|
|
256
|
+
//===----------------------------------------------------------------------===//
|
|
257
|
+
|
|
258
|
+
_DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(atan2)
|
|
259
|
+
_DXC_COMPAT_BINARY_INTEGER_OVERLOADS(atan2)
|
|
260
|
+
|
|
261
|
+
//===----------------------------------------------------------------------===//
|
|
262
|
+
// ceil builtins overloads
|
|
263
|
+
//===----------------------------------------------------------------------===//
|
|
264
|
+
|
|
265
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(ceil)
|
|
266
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(ceil)
|
|
267
|
+
|
|
268
|
+
//===----------------------------------------------------------------------===//
|
|
269
|
+
// clamp builtins overloads
|
|
270
|
+
//===----------------------------------------------------------------------===//
|
|
271
|
+
|
|
272
|
+
template <typename T, uint N>
|
|
273
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
|
|
274
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
|
|
275
|
+
vector<T, N> p0, vector<T, N> p1, T p2) {
|
|
276
|
+
return clamp(p0, p1, (vector<T, N>)p2);
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
template <typename T, uint N>
|
|
280
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
|
|
281
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
|
|
282
|
+
vector<T, N> p0, T p1, vector<T, N> p2) {
|
|
283
|
+
return clamp(p0, (vector<T, N>)p1, p2);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
template <typename T, uint N>
|
|
287
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(clamp)
|
|
288
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> clamp(
|
|
289
|
+
vector<T, N> p0, T p1, T p2) {
|
|
290
|
+
return clamp(p0, (vector<T, N>)p1, (vector<T, N>)p2);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
//===----------------------------------------------------------------------===//
|
|
294
|
+
// cos builtins overloads
|
|
295
|
+
//===----------------------------------------------------------------------===//
|
|
296
|
+
|
|
297
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(cos)
|
|
298
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(cos)
|
|
299
|
+
|
|
300
|
+
//===----------------------------------------------------------------------===//
|
|
301
|
+
// cosh builtins overloads
|
|
302
|
+
//===----------------------------------------------------------------------===//
|
|
303
|
+
|
|
304
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(cosh)
|
|
305
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(cosh)
|
|
306
|
+
|
|
307
|
+
//===----------------------------------------------------------------------===//
|
|
308
|
+
// degrees builtins overloads
|
|
309
|
+
//===----------------------------------------------------------------------===//
|
|
310
|
+
|
|
311
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(degrees)
|
|
312
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(degrees)
|
|
313
|
+
|
|
314
|
+
//===----------------------------------------------------------------------===//
|
|
315
|
+
// exp builtins overloads
|
|
316
|
+
//===----------------------------------------------------------------------===//
|
|
317
|
+
|
|
318
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(exp)
|
|
319
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(exp)
|
|
320
|
+
|
|
321
|
+
//===----------------------------------------------------------------------===//
|
|
322
|
+
// exp2 builtins overloads
|
|
323
|
+
//===----------------------------------------------------------------------===//
|
|
324
|
+
|
|
325
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(exp2)
|
|
326
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(exp2)
|
|
327
|
+
|
|
328
|
+
//===----------------------------------------------------------------------===//
|
|
329
|
+
// floor builtins overloads
|
|
330
|
+
//===----------------------------------------------------------------------===//
|
|
331
|
+
|
|
332
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(floor)
|
|
333
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(floor)
|
|
334
|
+
|
|
335
|
+
//===----------------------------------------------------------------------===//
|
|
336
|
+
// frac builtins overloads
|
|
337
|
+
//===----------------------------------------------------------------------===//
|
|
338
|
+
|
|
339
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(frac)
|
|
340
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(frac)
|
|
341
|
+
|
|
342
|
+
//===----------------------------------------------------------------------===//
|
|
343
|
+
// isinf builtins overloads
|
|
344
|
+
//===----------------------------------------------------------------------===//
|
|
345
|
+
|
|
346
|
+
_DXC_DEPRECATED_64BIT_FN(fn)
|
|
347
|
+
constexpr bool isinf(double V) { return isinf((float)V); }
|
|
348
|
+
_DXC_DEPRECATED_64BIT_FN(fn)
|
|
349
|
+
constexpr bool2 isinf(double2 V) { return isinf((float2)V); }
|
|
350
|
+
_DXC_DEPRECATED_64BIT_FN(fn)
|
|
351
|
+
constexpr bool3 isinf(double3 V) { return isinf((float3)V); }
|
|
352
|
+
_DXC_DEPRECATED_64BIT_FN(fn)
|
|
353
|
+
constexpr bool4 isinf(double4 V) { return isinf((float4)V); }
|
|
354
|
+
|
|
355
|
+
//===----------------------------------------------------------------------===//
|
|
356
|
+
// isnan builtins overloads
|
|
357
|
+
//===----------------------------------------------------------------------===//
|
|
358
|
+
|
|
359
|
+
constexpr bool isnan(double V) { return isnan((float)V); }
|
|
360
|
+
constexpr bool2 isnan(double2 V) { return isnan((float2)V); }
|
|
361
|
+
constexpr bool3 isnan(double3 V) { return isnan((float3)V); }
|
|
362
|
+
constexpr bool4 isnan(double4 V) { return isnan((float4)V); }
|
|
363
|
+
|
|
364
|
+
//===----------------------------------------------------------------------===//
|
|
365
|
+
// lerp builtins overloads
|
|
366
|
+
//===----------------------------------------------------------------------===//
|
|
367
|
+
|
|
368
|
+
template <typename T, uint N>
|
|
369
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(lerp)
|
|
370
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> lerp(
|
|
371
|
+
vector<T, N> x, vector<T, N> y, T s) {
|
|
372
|
+
return lerp(x, y, (vector<T, N>)s);
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
_DXC_COMPAT_TERNARY_DOUBLE_OVERLOADS(lerp)
|
|
376
|
+
_DXC_COMPAT_TERNARY_INTEGER_OVERLOADS(lerp)
|
|
377
|
+
|
|
378
|
+
//===----------------------------------------------------------------------===//
|
|
379
|
+
// log builtins overloads
|
|
380
|
+
//===----------------------------------------------------------------------===//
|
|
381
|
+
|
|
382
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(log)
|
|
383
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(log)
|
|
384
|
+
|
|
385
|
+
//===----------------------------------------------------------------------===//
|
|
386
|
+
// log10 builtins overloads
|
|
387
|
+
//===----------------------------------------------------------------------===//
|
|
388
|
+
|
|
389
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(log10)
|
|
390
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(log10)
|
|
391
|
+
|
|
392
|
+
//===----------------------------------------------------------------------===//
|
|
393
|
+
// log2 builtins overloads
|
|
394
|
+
//===----------------------------------------------------------------------===//
|
|
395
|
+
|
|
396
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(log2)
|
|
397
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(log2)
|
|
398
|
+
|
|
399
|
+
//===----------------------------------------------------------------------===//
|
|
400
|
+
// max builtins overloads
|
|
401
|
+
//===----------------------------------------------------------------------===//
|
|
402
|
+
|
|
403
|
+
template <typename T, uint N>
|
|
404
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(max)
|
|
405
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> max(
|
|
406
|
+
vector<T, N> p0, T p1) {
|
|
407
|
+
return max(p0, (vector<T, N>)p1);
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
template <typename T, uint N>
|
|
411
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(max)
|
|
412
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> max(
|
|
413
|
+
T p0, vector<T, N> p1) {
|
|
414
|
+
return max((vector<T, N>)p0, p1);
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
//===----------------------------------------------------------------------===//
|
|
418
|
+
// min builtins overloads
|
|
419
|
+
//===----------------------------------------------------------------------===//
|
|
420
|
+
|
|
421
|
+
template <typename T, uint N>
|
|
422
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(min)
|
|
423
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> min(
|
|
424
|
+
vector<T, N> p0, T p1) {
|
|
425
|
+
return min(p0, (vector<T, N>)p1);
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
template <typename T, uint N>
|
|
429
|
+
_DXC_DEPRECATED_VEC_SCALAR_FN(min)
|
|
430
|
+
constexpr __detail::enable_if_t<(N > 1 && N <= 4), vector<T, N>> min(
|
|
431
|
+
T p0, vector<T, N> p1) {
|
|
432
|
+
return min((vector<T, N>)p0, p1);
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
//===----------------------------------------------------------------------===//
|
|
436
|
+
// normalize builtins overloads
|
|
437
|
+
//===----------------------------------------------------------------------===//
|
|
438
|
+
|
|
439
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(normalize)
|
|
440
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(normalize)
|
|
441
|
+
|
|
442
|
+
//===----------------------------------------------------------------------===//
|
|
443
|
+
// pow builtins overloads
|
|
444
|
+
//===----------------------------------------------------------------------===//
|
|
445
|
+
|
|
446
|
+
_DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(pow)
|
|
447
|
+
_DXC_COMPAT_BINARY_INTEGER_OVERLOADS(pow)
|
|
448
|
+
|
|
449
|
+
//===----------------------------------------------------------------------===//
|
|
450
|
+
// rsqrt builtins overloads
|
|
451
|
+
//===----------------------------------------------------------------------===//
|
|
452
|
+
|
|
453
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(rsqrt)
|
|
454
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(rsqrt)
|
|
455
|
+
|
|
456
|
+
//===----------------------------------------------------------------------===//
|
|
457
|
+
// round builtins overloads
|
|
458
|
+
//===----------------------------------------------------------------------===//
|
|
459
|
+
|
|
460
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(round)
|
|
461
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(round)
|
|
462
|
+
|
|
463
|
+
//===----------------------------------------------------------------------===//
|
|
464
|
+
// sin builtins overloads
|
|
465
|
+
//===----------------------------------------------------------------------===//
|
|
466
|
+
|
|
467
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(sin)
|
|
468
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(sin)
|
|
469
|
+
|
|
470
|
+
//===----------------------------------------------------------------------===//
|
|
471
|
+
// sinh builtins overloads
|
|
472
|
+
//===----------------------------------------------------------------------===//
|
|
473
|
+
|
|
474
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(sinh)
|
|
475
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(sinh)
|
|
476
|
+
|
|
477
|
+
//===----------------------------------------------------------------------===//
|
|
478
|
+
// sqrt builtins overloads
|
|
479
|
+
//===----------------------------------------------------------------------===//
|
|
480
|
+
|
|
481
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(sqrt)
|
|
482
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(sqrt)
|
|
483
|
+
|
|
484
|
+
//===----------------------------------------------------------------------===//
|
|
485
|
+
// step builtins overloads
|
|
486
|
+
//===----------------------------------------------------------------------===//
|
|
487
|
+
|
|
488
|
+
_DXC_COMPAT_BINARY_DOUBLE_OVERLOADS(step)
|
|
489
|
+
_DXC_COMPAT_BINARY_INTEGER_OVERLOADS(step)
|
|
490
|
+
|
|
491
|
+
//===----------------------------------------------------------------------===//
|
|
492
|
+
// tan builtins overloads
|
|
493
|
+
//===----------------------------------------------------------------------===//
|
|
494
|
+
|
|
495
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(tan)
|
|
496
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(tan)
|
|
497
|
+
|
|
498
|
+
//===----------------------------------------------------------------------===//
|
|
499
|
+
// tanh builtins overloads
|
|
500
|
+
//===----------------------------------------------------------------------===//
|
|
501
|
+
|
|
502
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(tanh)
|
|
503
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(tanh)
|
|
504
|
+
|
|
505
|
+
//===----------------------------------------------------------------------===//
|
|
506
|
+
// trunc builtins overloads
|
|
507
|
+
//===----------------------------------------------------------------------===//
|
|
508
|
+
|
|
509
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(trunc)
|
|
510
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(trunc)
|
|
511
|
+
|
|
512
|
+
//===----------------------------------------------------------------------===//
|
|
513
|
+
// radians builtins overloads
|
|
514
|
+
//===----------------------------------------------------------------------===//
|
|
515
|
+
|
|
516
|
+
_DXC_COMPAT_UNARY_DOUBLE_OVERLOADS(radians)
|
|
517
|
+
_DXC_COMPAT_UNARY_INTEGER_OVERLOADS(radians)
|
|
518
|
+
|
|
519
|
+
} // namespace hlsl
|
|
520
|
+
#endif // _HLSL_COMPAT_OVERLOADS_H_
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
//===----- hlsl_detail.h - HLSL definitions for intrinsics ----------------===//
|
|
2
|
+
//
|
|
3
|
+
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
// See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
//
|
|
7
|
+
//===----------------------------------------------------------------------===//
|
|
8
|
+
|
|
9
|
+
#ifndef _HLSL_HLSL_DETAILS_H_
|
|
10
|
+
#define _HLSL_HLSL_DETAILS_H_
|
|
11
|
+
|
|
12
|
+
namespace hlsl {
|
|
13
|
+
|
|
14
|
+
namespace __detail {
|
|
15
|
+
|
|
16
|
+
template <typename T, typename U> struct is_same {
|
|
17
|
+
static const bool value = false;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
template <typename T> struct is_same<T, T> {
|
|
21
|
+
static const bool value = true;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <bool B, typename T> struct enable_if {};
|
|
25
|
+
|
|
26
|
+
template <typename T> struct enable_if<true, T> {
|
|
27
|
+
using Type = T;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
template <bool B, class T = void>
|
|
31
|
+
using enable_if_t = typename enable_if<B, T>::Type;
|
|
32
|
+
|
|
33
|
+
template <typename U, typename T, int N>
|
|
34
|
+
constexpr enable_if_t<sizeof(U) == sizeof(T), vector<U, N>>
|
|
35
|
+
bit_cast(vector<T, N> V) {
|
|
36
|
+
return __builtin_bit_cast(vector<U, N>, V);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
template <typename U, typename T>
|
|
40
|
+
constexpr enable_if_t<sizeof(U) == sizeof(T), U> bit_cast(T F) {
|
|
41
|
+
return __builtin_bit_cast(U, F);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
template <typename T> struct is_arithmetic {
|
|
45
|
+
static const bool Value = __is_arithmetic(T);
|
|
46
|
+
};
|
|
47
|
+
|
|
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
|
+
} // namespace __detail
|
|
53
|
+
} // namespace hlsl
|
|
54
|
+
#endif //_HLSL_HLSL_DETAILS_H_
|