@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
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
#include "hip/hip_version.h"
|
|
15
15
|
#endif // __has_include("hip/hip_version.h")
|
|
16
16
|
|
|
17
|
+
#define __PRIVATE_AS __attribute__((opencl_private))
|
|
18
|
+
|
|
17
19
|
#ifdef __cplusplus
|
|
18
20
|
extern "C" {
|
|
19
21
|
#endif
|
|
@@ -55,8 +57,7 @@ __device__ __attribute__((const)) float __ocml_fmax_f32(float, float);
|
|
|
55
57
|
__device__ __attribute__((const)) float __ocml_fmin_f32(float, float);
|
|
56
58
|
__device__ __attribute__((const)) __device__ float __ocml_fmod_f32(float,
|
|
57
59
|
float);
|
|
58
|
-
__device__ float __ocml_frexp_f32(float,
|
|
59
|
-
__attribute__((address_space(5))) int *);
|
|
60
|
+
__device__ float __ocml_frexp_f32(float, __PRIVATE_AS int *);
|
|
60
61
|
__device__ __attribute__((const)) float __ocml_hypot_f32(float, float);
|
|
61
62
|
__device__ __attribute__((const)) int __ocml_ilogb_f32(float);
|
|
62
63
|
__device__ __attribute__((const)) int __ocml_isfinite_f32(float);
|
|
@@ -74,8 +75,7 @@ __device__ __attribute__((pure)) float __ocml_native_log2_f32(float);
|
|
|
74
75
|
__device__ __attribute__((const)) float __ocml_logb_f32(float);
|
|
75
76
|
__device__ __attribute__((pure)) float __ocml_log_f32(float);
|
|
76
77
|
__device__ __attribute__((pure)) float __ocml_native_log_f32(float);
|
|
77
|
-
__device__ float __ocml_modf_f32(float,
|
|
78
|
-
__attribute__((address_space(5))) float *);
|
|
78
|
+
__device__ float __ocml_modf_f32(float, __PRIVATE_AS float *);
|
|
79
79
|
__device__ __attribute__((const)) float __ocml_nearbyint_f32(float);
|
|
80
80
|
__device__ __attribute__((const)) float __ocml_nextafter_f32(float, float);
|
|
81
81
|
__device__ __attribute__((const)) float __ocml_len3_f32(float, float, float);
|
|
@@ -87,8 +87,7 @@ __device__ __attribute__((pure)) float __ocml_pow_f32(float, float);
|
|
|
87
87
|
__device__ __attribute__((pure)) float __ocml_pown_f32(float, int);
|
|
88
88
|
__device__ __attribute__((pure)) float __ocml_rcbrt_f32(float);
|
|
89
89
|
__device__ __attribute__((const)) float __ocml_remainder_f32(float, float);
|
|
90
|
-
__device__ float __ocml_remquo_f32(float, float,
|
|
91
|
-
__attribute__((address_space(5))) int *);
|
|
90
|
+
__device__ float __ocml_remquo_f32(float, float, __PRIVATE_AS int *);
|
|
92
91
|
__device__ __attribute__((const)) float __ocml_rhypot_f32(float, float);
|
|
93
92
|
__device__ __attribute__((const)) float __ocml_rint_f32(float);
|
|
94
93
|
__device__ __attribute__((const)) float __ocml_rlen3_f32(float, float, float);
|
|
@@ -99,10 +98,8 @@ __device__ __attribute__((pure)) float __ocml_rsqrt_f32(float);
|
|
|
99
98
|
__device__ __attribute__((const)) float __ocml_scalb_f32(float, float);
|
|
100
99
|
__device__ __attribute__((const)) float __ocml_scalbn_f32(float, int);
|
|
101
100
|
__device__ __attribute__((const)) int __ocml_signbit_f32(float);
|
|
102
|
-
__device__ float __ocml_sincos_f32(float,
|
|
103
|
-
|
|
104
|
-
__device__ float __ocml_sincospi_f32(float,
|
|
105
|
-
__attribute__((address_space(5))) float *);
|
|
101
|
+
__device__ float __ocml_sincos_f32(float, __PRIVATE_AS float *);
|
|
102
|
+
__device__ float __ocml_sincospi_f32(float, __PRIVATE_AS float *);
|
|
106
103
|
__device__ float __ocml_sin_f32(float);
|
|
107
104
|
__device__ float __ocml_native_sin_f32(float);
|
|
108
105
|
__device__ __attribute__((pure)) float __ocml_sinh_f32(float);
|
|
@@ -176,8 +173,7 @@ __device__ __attribute__((const)) double __ocml_fma_f64(double, double, double);
|
|
|
176
173
|
__device__ __attribute__((const)) double __ocml_fmax_f64(double, double);
|
|
177
174
|
__device__ __attribute__((const)) double __ocml_fmin_f64(double, double);
|
|
178
175
|
__device__ __attribute__((const)) double __ocml_fmod_f64(double, double);
|
|
179
|
-
__device__ double __ocml_frexp_f64(double,
|
|
180
|
-
__attribute__((address_space(5))) int *);
|
|
176
|
+
__device__ double __ocml_frexp_f64(double, __PRIVATE_AS int *);
|
|
181
177
|
__device__ __attribute__((const)) double __ocml_hypot_f64(double, double);
|
|
182
178
|
__device__ __attribute__((const)) int __ocml_ilogb_f64(double);
|
|
183
179
|
__device__ __attribute__((const)) int __ocml_isfinite_f64(double);
|
|
@@ -192,8 +188,7 @@ __device__ __attribute__((pure)) double __ocml_log1p_f64(double);
|
|
|
192
188
|
__device__ __attribute__((pure)) double __ocml_log2_f64(double);
|
|
193
189
|
__device__ __attribute__((const)) double __ocml_logb_f64(double);
|
|
194
190
|
__device__ __attribute__((pure)) double __ocml_log_f64(double);
|
|
195
|
-
__device__ double __ocml_modf_f64(double,
|
|
196
|
-
__attribute__((address_space(5))) double *);
|
|
191
|
+
__device__ double __ocml_modf_f64(double, __PRIVATE_AS double *);
|
|
197
192
|
__device__ __attribute__((const)) double __ocml_nearbyint_f64(double);
|
|
198
193
|
__device__ __attribute__((const)) double __ocml_nextafter_f64(double, double);
|
|
199
194
|
__device__ __attribute__((const)) double __ocml_len3_f64(double, double,
|
|
@@ -206,8 +201,7 @@ __device__ __attribute__((pure)) double __ocml_pow_f64(double, double);
|
|
|
206
201
|
__device__ __attribute__((pure)) double __ocml_pown_f64(double, int);
|
|
207
202
|
__device__ __attribute__((pure)) double __ocml_rcbrt_f64(double);
|
|
208
203
|
__device__ __attribute__((const)) double __ocml_remainder_f64(double, double);
|
|
209
|
-
__device__ double __ocml_remquo_f64(double, double,
|
|
210
|
-
__attribute__((address_space(5))) int *);
|
|
204
|
+
__device__ double __ocml_remquo_f64(double, double, __PRIVATE_AS int *);
|
|
211
205
|
__device__ __attribute__((const)) double __ocml_rhypot_f64(double, double);
|
|
212
206
|
__device__ __attribute__((const)) double __ocml_rint_f64(double);
|
|
213
207
|
__device__ __attribute__((const)) double __ocml_rlen3_f64(double, double,
|
|
@@ -219,10 +213,8 @@ __device__ __attribute__((pure)) double __ocml_rsqrt_f64(double);
|
|
|
219
213
|
__device__ __attribute__((const)) double __ocml_scalb_f64(double, double);
|
|
220
214
|
__device__ __attribute__((const)) double __ocml_scalbn_f64(double, int);
|
|
221
215
|
__device__ __attribute__((const)) int __ocml_signbit_f64(double);
|
|
222
|
-
__device__ double __ocml_sincos_f64(double,
|
|
223
|
-
|
|
224
|
-
__device__ double
|
|
225
|
-
__ocml_sincospi_f64(double, __attribute__((address_space(5))) double *);
|
|
216
|
+
__device__ double __ocml_sincos_f64(double, __PRIVATE_AS double *);
|
|
217
|
+
__device__ double __ocml_sincospi_f64(double, __PRIVATE_AS double *);
|
|
226
218
|
__device__ double __ocml_sin_f64(double);
|
|
227
219
|
__device__ __attribute__((pure)) double __ocml_sinh_f64(double);
|
|
228
220
|
__device__ double __ocml_sinpi_f64(double);
|
|
@@ -317,28 +309,6 @@ __device__ __attribute__((pure)) __2f16 __ocml_log_2f16(__2f16);
|
|
|
317
309
|
__device__ __attribute__((pure)) __2f16 __ocml_log10_2f16(__2f16);
|
|
318
310
|
__device__ __attribute__((pure)) __2f16 __ocml_log2_2f16(__2f16);
|
|
319
311
|
|
|
320
|
-
#if HIP_VERSION_MAJOR * 100 + HIP_VERSION_MINOR >= 560
|
|
321
|
-
#define __DEPRECATED_SINCE_HIP_560(X) __attribute__((deprecated(X)))
|
|
322
|
-
#else
|
|
323
|
-
#define __DEPRECATED_SINCE_HIP_560(X)
|
|
324
|
-
#endif
|
|
325
|
-
|
|
326
|
-
// Deprecated, should be removed when rocm releases using it are no longer
|
|
327
|
-
// relevant.
|
|
328
|
-
__DEPRECATED_SINCE_HIP_560("use ((_Float16)1.0) / ")
|
|
329
|
-
__device__ inline _Float16 __llvm_amdgcn_rcp_f16(_Float16 x) {
|
|
330
|
-
return ((_Float16)1.0f) / x;
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
__DEPRECATED_SINCE_HIP_560("use ((__2f16)1.0) / ")
|
|
334
|
-
__device__ inline __2f16
|
|
335
|
-
__llvm_amdgcn_rcp_2f16(__2f16 __x)
|
|
336
|
-
{
|
|
337
|
-
return ((__2f16)1.0f) / __x;
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
#undef __DEPRECATED_SINCE_HIP_560
|
|
341
|
-
|
|
342
312
|
__device__ __attribute__((const)) __2f16 __ocml_rint_2f16(__2f16);
|
|
343
313
|
__device__ __attribute__((const)) __2f16 __ocml_rsqrt_2f16(__2f16);
|
|
344
314
|
__device__ __2f16 __ocml_sin_2f16(__2f16);
|
|
@@ -346,6 +316,23 @@ __device__ __attribute__((const)) __2f16 __ocml_sqrt_2f16(__2f16);
|
|
|
346
316
|
__device__ __attribute__((const)) __2f16 __ocml_trunc_2f16(__2f16);
|
|
347
317
|
__device__ __attribute__((const)) __2f16 __ocml_pown_2f16(__2f16, __2i16);
|
|
348
318
|
|
|
319
|
+
__device__ void __asan_poison_memory_region(const void *addr,
|
|
320
|
+
__SIZE_TYPE__ size);
|
|
321
|
+
__device__ void __asan_unpoison_memory_region(const void *addr,
|
|
322
|
+
__SIZE_TYPE__ size);
|
|
323
|
+
__device__ int __asan_address_is_poisoned(const void *addr);
|
|
324
|
+
__device__ void *__asan_region_is_poisoned(void *beg, __SIZE_TYPE__ size);
|
|
325
|
+
|
|
326
|
+
#if __has_feature(address_sanitizer)
|
|
327
|
+
#define ASAN_POISON_MEMORY_REGION(addr, size) \
|
|
328
|
+
__asan_poison_memory_region((addr), (size))
|
|
329
|
+
#define ASAN_UNPOISON_MEMORY_REGION(addr, size) \
|
|
330
|
+
__asan_unpoison_memory_region((addr), (size))
|
|
331
|
+
#else
|
|
332
|
+
#define ASAN_POISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
|
|
333
|
+
#define ASAN_UNPOISON_MEMORY_REGION(addr, size) ((void)(addr), (void)(size))
|
|
334
|
+
#endif
|
|
335
|
+
|
|
349
336
|
#ifdef __cplusplus
|
|
350
337
|
} // extern "C"
|
|
351
338
|
#endif
|
|
@@ -33,6 +33,9 @@
|
|
|
33
33
|
#define __DEVICE__ static __device__ inline __attribute__((always_inline))
|
|
34
34
|
#endif
|
|
35
35
|
|
|
36
|
+
#pragma push_macro("__PRIVATE_AS")
|
|
37
|
+
|
|
38
|
+
#define __PRIVATE_AS __attribute__((opencl_private))
|
|
36
39
|
// Device library provides fast low precision and slow full-recision
|
|
37
40
|
// implementations for some functions. Which one gets selected depends on
|
|
38
41
|
// __CLANG_GPU_APPROX_TRANSCENDENTALS__ which gets defined by clang if
|
|
@@ -389,7 +392,7 @@ __DEVICE__
|
|
|
389
392
|
float erfinvf(float __x) { return __ocml_erfinv_f32(__x); }
|
|
390
393
|
|
|
391
394
|
__DEVICE__
|
|
392
|
-
float exp10f(float __x) { return
|
|
395
|
+
float exp10f(float __x) { return __builtin_exp10f(__x); }
|
|
393
396
|
|
|
394
397
|
__DEVICE__
|
|
395
398
|
float exp2f(float __x) { return __builtin_exp2f(__x); }
|
|
@@ -492,13 +495,13 @@ __DEVICE__
|
|
|
492
495
|
float log1pf(float __x) { return __ocml_log1p_f32(__x); }
|
|
493
496
|
|
|
494
497
|
__DEVICE__
|
|
495
|
-
float log2f(float __x) { return __FAST_OR_SLOW(__log2f,
|
|
498
|
+
float log2f(float __x) { return __FAST_OR_SLOW(__log2f, __builtin_log2f)(__x); }
|
|
496
499
|
|
|
497
500
|
__DEVICE__
|
|
498
|
-
float logbf(float __x) { return
|
|
501
|
+
float logbf(float __x) { return __builtin_logbf(__x); }
|
|
499
502
|
|
|
500
503
|
__DEVICE__
|
|
501
|
-
float logf(float __x) { return __FAST_OR_SLOW(__logf,
|
|
504
|
+
float logf(float __x) { return __FAST_OR_SLOW(__logf, __builtin_logf)(__x); }
|
|
502
505
|
|
|
503
506
|
__DEVICE__
|
|
504
507
|
long int lrintf(float __x) { return __builtin_rintf(__x); }
|
|
@@ -512,8 +515,7 @@ float modff(float __x, float *__iptr) {
|
|
|
512
515
|
#ifdef __OPENMP_AMDGCN__
|
|
513
516
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
514
517
|
#endif
|
|
515
|
-
float __r =
|
|
516
|
-
__ocml_modf_f32(__x, (__attribute__((address_space(5))) float *)&__tmp);
|
|
518
|
+
float __r = __ocml_modf_f32(__x, (__PRIVATE_AS float *)&__tmp);
|
|
517
519
|
*__iptr = __tmp;
|
|
518
520
|
return __r;
|
|
519
521
|
}
|
|
@@ -595,8 +597,7 @@ float remquof(float __x, float __y, int *__quo) {
|
|
|
595
597
|
#ifdef __OPENMP_AMDGCN__
|
|
596
598
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
597
599
|
#endif
|
|
598
|
-
float __r = __ocml_remquo_f32(
|
|
599
|
-
__x, __y, (__attribute__((address_space(5))) int *)&__tmp);
|
|
600
|
+
float __r = __ocml_remquo_f32(__x, __y, (__PRIVATE_AS int *)&__tmp);
|
|
600
601
|
*__quo = __tmp;
|
|
601
602
|
|
|
602
603
|
return __r;
|
|
@@ -638,8 +639,11 @@ float rsqrtf(float __x) { return __ocml_rsqrt_f32(__x); }
|
|
|
638
639
|
|
|
639
640
|
__DEVICE__
|
|
640
641
|
float scalblnf(float __x, long int __n) {
|
|
641
|
-
|
|
642
|
-
|
|
642
|
+
if (__n > INT_MAX)
|
|
643
|
+
__n = INT_MAX;
|
|
644
|
+
else if (__n < INT_MIN)
|
|
645
|
+
__n = INT_MIN;
|
|
646
|
+
return __builtin_ldexpf(__x, (int)__n);
|
|
643
647
|
}
|
|
644
648
|
|
|
645
649
|
__DEVICE__
|
|
@@ -657,8 +661,7 @@ void sincosf(float __x, float *__sinptr, float *__cosptr) {
|
|
|
657
661
|
#ifdef __CLANG_CUDA_APPROX_TRANSCENDENTALS__
|
|
658
662
|
__sincosf(__x, __sinptr, __cosptr);
|
|
659
663
|
#else
|
|
660
|
-
*__sinptr =
|
|
661
|
-
__ocml_sincos_f32(__x, (__attribute__((address_space(5))) float *)&__tmp);
|
|
664
|
+
*__sinptr = __ocml_sincos_f32(__x, (__PRIVATE_AS float *)&__tmp);
|
|
662
665
|
*__cosptr = __tmp;
|
|
663
666
|
#endif
|
|
664
667
|
}
|
|
@@ -669,8 +672,7 @@ void sincospif(float __x, float *__sinptr, float *__cosptr) {
|
|
|
669
672
|
#ifdef __OPENMP_AMDGCN__
|
|
670
673
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
671
674
|
#endif
|
|
672
|
-
*__sinptr = __ocml_sincospi_f32(
|
|
673
|
-
__x, (__attribute__((address_space(5))) float *)&__tmp);
|
|
675
|
+
*__sinptr = __ocml_sincospi_f32(__x, (__PRIVATE_AS float *)&__tmp);
|
|
674
676
|
*__cosptr = __tmp;
|
|
675
677
|
}
|
|
676
678
|
|
|
@@ -899,7 +901,7 @@ __DEVICE__
|
|
|
899
901
|
double log2(double __x) { return __ocml_log2_f64(__x); }
|
|
900
902
|
|
|
901
903
|
__DEVICE__
|
|
902
|
-
double logb(double __x) { return
|
|
904
|
+
double logb(double __x) { return __builtin_logb(__x); }
|
|
903
905
|
|
|
904
906
|
__DEVICE__
|
|
905
907
|
long int lrint(double __x) { return __builtin_rint(__x); }
|
|
@@ -913,8 +915,7 @@ double modf(double __x, double *__iptr) {
|
|
|
913
915
|
#ifdef __OPENMP_AMDGCN__
|
|
914
916
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
915
917
|
#endif
|
|
916
|
-
double __r =
|
|
917
|
-
__ocml_modf_f64(__x, (__attribute__((address_space(5))) double *)&__tmp);
|
|
918
|
+
double __r = __ocml_modf_f64(__x, (__PRIVATE_AS double *)&__tmp);
|
|
918
919
|
*__iptr = __tmp;
|
|
919
920
|
|
|
920
921
|
return __r;
|
|
@@ -1004,8 +1005,7 @@ double remquo(double __x, double __y, int *__quo) {
|
|
|
1004
1005
|
#ifdef __OPENMP_AMDGCN__
|
|
1005
1006
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
1006
1007
|
#endif
|
|
1007
|
-
double __r = __ocml_remquo_f64(
|
|
1008
|
-
__x, __y, (__attribute__((address_space(5))) int *)&__tmp);
|
|
1008
|
+
double __r = __ocml_remquo_f64(__x, __y, (__PRIVATE_AS int *)&__tmp);
|
|
1009
1009
|
*__quo = __tmp;
|
|
1010
1010
|
|
|
1011
1011
|
return __r;
|
|
@@ -1047,8 +1047,11 @@ double rsqrt(double __x) { return __ocml_rsqrt_f64(__x); }
|
|
|
1047
1047
|
|
|
1048
1048
|
__DEVICE__
|
|
1049
1049
|
double scalbln(double __x, long int __n) {
|
|
1050
|
-
|
|
1051
|
-
|
|
1050
|
+
if (__n > INT_MAX)
|
|
1051
|
+
__n = INT_MAX;
|
|
1052
|
+
else if (__n < INT_MIN)
|
|
1053
|
+
__n = INT_MIN;
|
|
1054
|
+
return __builtin_ldexp(__x, (int)__n);
|
|
1052
1055
|
}
|
|
1053
1056
|
__DEVICE__
|
|
1054
1057
|
double scalbn(double __x, int __n) { return __builtin_amdgcn_ldexp(__x, __n); }
|
|
@@ -1065,8 +1068,7 @@ void sincos(double __x, double *__sinptr, double *__cosptr) {
|
|
|
1065
1068
|
#ifdef __OPENMP_AMDGCN__
|
|
1066
1069
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
1067
1070
|
#endif
|
|
1068
|
-
*__sinptr = __ocml_sincos_f64(
|
|
1069
|
-
__x, (__attribute__((address_space(5))) double *)&__tmp);
|
|
1071
|
+
*__sinptr = __ocml_sincos_f64(__x, (__PRIVATE_AS double *)&__tmp);
|
|
1070
1072
|
*__cosptr = __tmp;
|
|
1071
1073
|
}
|
|
1072
1074
|
|
|
@@ -1076,8 +1078,7 @@ void sincospi(double __x, double *__sinptr, double *__cosptr) {
|
|
|
1076
1078
|
#ifdef __OPENMP_AMDGCN__
|
|
1077
1079
|
#pragma omp allocate(__tmp) allocator(omp_thread_mem_alloc)
|
|
1078
1080
|
#endif
|
|
1079
|
-
*__sinptr = __ocml_sincospi_f64(
|
|
1080
|
-
__x, (__attribute__((address_space(5))) double *)&__tmp);
|
|
1081
|
+
*__sinptr = __ocml_sincospi_f64(__x, (__PRIVATE_AS double *)&__tmp);
|
|
1081
1082
|
*__cosptr = __tmp;
|
|
1082
1083
|
}
|
|
1083
1084
|
|
|
@@ -1310,18 +1311,93 @@ float min(float __x, float __y) { return __builtin_fminf(__x, __y); }
|
|
|
1310
1311
|
__DEVICE__
|
|
1311
1312
|
double min(double __x, double __y) { return __builtin_fmin(__x, __y); }
|
|
1312
1313
|
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1314
|
+
// Define host min/max functions.
|
|
1315
|
+
#if !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__) && \
|
|
1316
|
+
!defined(__HIP_NO_HOST_MIN_MAX_IN_GLOBAL_NAMESPACE__)
|
|
1317
|
+
|
|
1318
|
+
// TODO: make this default to 1 after existing HIP apps adopting this change.
|
|
1319
|
+
#ifndef __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
|
|
1320
|
+
#define __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__ 0
|
|
1321
|
+
#endif
|
|
1322
|
+
|
|
1323
|
+
#ifndef __HIP_DEFINE_MIXED_HOST_MIN_MAX__
|
|
1324
|
+
#define __HIP_DEFINE_MIXED_HOST_MIN_MAX__ 0
|
|
1325
|
+
#endif
|
|
1326
|
+
|
|
1327
|
+
#pragma push_macro("DEFINE_MIN_MAX_FUNCTIONS")
|
|
1328
|
+
#pragma push_macro("DEFINE_MIN_MAX_FUNCTIONS")
|
|
1329
|
+
#define DEFINE_MIN_MAX_FUNCTIONS(ret_type, type1, type2) \
|
|
1330
|
+
inline ret_type min(const type1 __a, const type2 __b) { \
|
|
1331
|
+
return (__a < __b) ? __a : __b; \
|
|
1332
|
+
} \
|
|
1333
|
+
inline ret_type max(const type1 __a, const type2 __b) { \
|
|
1334
|
+
return (__a > __b) ? __a : __b; \
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1337
|
+
// Define min and max functions for same type comparisons
|
|
1338
|
+
DEFINE_MIN_MAX_FUNCTIONS(int, int, int)
|
|
1339
|
+
|
|
1340
|
+
#if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
|
|
1341
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned int, unsigned int, unsigned int)
|
|
1342
|
+
DEFINE_MIN_MAX_FUNCTIONS(long, long, long)
|
|
1343
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long, unsigned long, unsigned long)
|
|
1344
|
+
DEFINE_MIN_MAX_FUNCTIONS(long long, long long, long long)
|
|
1345
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, unsigned long long,
|
|
1346
|
+
unsigned long long)
|
|
1347
|
+
#endif // if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
|
|
1348
|
+
|
|
1349
|
+
// The host min/max functions below accept mixed signed/unsigned integer
|
|
1350
|
+
// parameters and perform unsigned comparisons, which may produce unexpected
|
|
1351
|
+
// results if a signed integer was passed unintentionally. To avoid this
|
|
1352
|
+
// happening silently, these overloaded functions are not defined by default.
|
|
1353
|
+
// However, for compatibility with CUDA, they will be defined if users define
|
|
1354
|
+
// __HIP_DEFINE_MIXED_HOST_MIN_MAX__.
|
|
1355
|
+
#if __HIP_DEFINE_MIXED_HOST_MIN_MAX__
|
|
1356
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned int, int, unsigned int)
|
|
1357
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned int, unsigned int, int)
|
|
1358
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long, long, unsigned long)
|
|
1359
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long, unsigned long, long)
|
|
1360
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, long long, unsigned long long)
|
|
1361
|
+
DEFINE_MIN_MAX_FUNCTIONS(unsigned long long, unsigned long long, long long)
|
|
1362
|
+
#endif // if __HIP_DEFINE_MIXED_HOST_MIN_MAX__
|
|
1363
|
+
|
|
1364
|
+
// Floating-point comparisons using built-in functions
|
|
1365
|
+
#if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
|
|
1366
|
+
inline float min(float const __a, float const __b) {
|
|
1367
|
+
return __builtin_fminf(__a, __b);
|
|
1368
|
+
}
|
|
1369
|
+
inline double min(double const __a, double const __b) {
|
|
1370
|
+
return __builtin_fmin(__a, __b);
|
|
1371
|
+
}
|
|
1372
|
+
inline double min(float const __a, double const __b) {
|
|
1373
|
+
return __builtin_fmin(__a, __b);
|
|
1374
|
+
}
|
|
1375
|
+
inline double min(double const __a, float const __b) {
|
|
1376
|
+
return __builtin_fmin(__a, __b);
|
|
1316
1377
|
}
|
|
1317
1378
|
|
|
1318
|
-
|
|
1319
|
-
return
|
|
1379
|
+
inline float max(float const __a, float const __b) {
|
|
1380
|
+
return __builtin_fmaxf(__a, __b);
|
|
1381
|
+
}
|
|
1382
|
+
inline double max(double const __a, double const __b) {
|
|
1383
|
+
return __builtin_fmax(__a, __b);
|
|
1320
1384
|
}
|
|
1321
|
-
|
|
1385
|
+
inline double max(float const __a, double const __b) {
|
|
1386
|
+
return __builtin_fmax(__a, __b);
|
|
1387
|
+
}
|
|
1388
|
+
inline double max(double const __a, float const __b) {
|
|
1389
|
+
return __builtin_fmax(__a, __b);
|
|
1390
|
+
}
|
|
1391
|
+
#endif // if __HIP_DEFINE_EXTENDED_HOST_MIN_MAX__
|
|
1392
|
+
|
|
1393
|
+
#pragma pop_macro("DEFINE_MIN_MAX_FUNCTIONS")
|
|
1394
|
+
|
|
1395
|
+
#endif // !defined(__HIPCC_RTC__) && !defined(__OPENMP_AMDGCN__) &&
|
|
1396
|
+
// !defined(__HIP_NO_HOST_MIN_MAX_IN_GLOBAL_NAMESPACE__)
|
|
1322
1397
|
#endif
|
|
1323
1398
|
|
|
1324
1399
|
#pragma pop_macro("__DEVICE__")
|
|
1400
|
+
#pragma pop_macro("__PRIVATE_AS")
|
|
1325
1401
|
#pragma pop_macro("__RETURN_TYPE")
|
|
1326
1402
|
#pragma pop_macro("__FAST_OR_SLOW")
|
|
1327
1403
|
|
|
@@ -25,6 +25,9 @@
|
|
|
25
25
|
#define __constant__ __attribute__((constant))
|
|
26
26
|
#define __managed__ __attribute__((managed))
|
|
27
27
|
|
|
28
|
+
#define __cluster_dims__(...) __attribute__((cluster_dims(__VA_ARGS__)))
|
|
29
|
+
#define __no_cluster__ __attribute__((no_cluster))
|
|
30
|
+
|
|
28
31
|
#if !defined(__cplusplus) || __cplusplus < 201103L
|
|
29
32
|
#define nullptr NULL;
|
|
30
33
|
#endif
|
|
@@ -125,11 +128,13 @@ typedef __SIZE_TYPE__ size_t;
|
|
|
125
128
|
#pragma push_macro("uint64_t")
|
|
126
129
|
#pragma push_macro("CHAR_BIT")
|
|
127
130
|
#pragma push_macro("INT_MAX")
|
|
131
|
+
#pragma push_macro("INT_MIN")
|
|
128
132
|
#define NULL (void *)0
|
|
129
133
|
#define uint32_t __UINT32_TYPE__
|
|
130
134
|
#define uint64_t __UINT64_TYPE__
|
|
131
135
|
#define CHAR_BIT __CHAR_BIT__
|
|
132
136
|
#define INT_MAX __INTMAX_MAX__
|
|
137
|
+
#define INT_MIN (-__INT_MAX__ - 1)
|
|
133
138
|
#endif // __HIPCC_RTC__
|
|
134
139
|
|
|
135
140
|
#include <__clang_hip_libdevice_declares.h>
|
|
@@ -154,6 +159,7 @@ typedef __SIZE_TYPE__ size_t;
|
|
|
154
159
|
#pragma pop_macro("uint64_t")
|
|
155
160
|
#pragma pop_macro("CHAR_BIT")
|
|
156
161
|
#pragma pop_macro("INT_MAX")
|
|
162
|
+
#pragma pop_macro("INT_MIN")
|
|
157
163
|
#endif // __HIPCC_RTC__
|
|
158
164
|
#endif // __HIP__
|
|
159
165
|
#endif // __CLANG_HIP_RUNTIME_WRAPPER_H__
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/*===---- spirv_builtin_vars.h - SPIR-V built-in ---------------------------===
|
|
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
|
+
|
|
10
|
+
#ifndef __SPIRV_BUILTIN_VARS_H
|
|
11
|
+
#define __SPIRV_BUILTIN_VARS_H
|
|
12
|
+
|
|
13
|
+
#if __cplusplus >= 201103L
|
|
14
|
+
#define __SPIRV_NOEXCEPT noexcept
|
|
15
|
+
#else
|
|
16
|
+
#define __SPIRV_NOEXCEPT
|
|
17
|
+
#endif
|
|
18
|
+
|
|
19
|
+
#pragma push_macro("__size_t")
|
|
20
|
+
#pragma push_macro("__uint32_t")
|
|
21
|
+
#pragma push_macro("__uint64_t")
|
|
22
|
+
#define __size_t __SIZE_TYPE__
|
|
23
|
+
#define __uint32_t __UINT32_TYPE__
|
|
24
|
+
|
|
25
|
+
#define __SPIRV_overloadable __attribute__((overloadable))
|
|
26
|
+
#define __SPIRV_convergent __attribute__((convergent))
|
|
27
|
+
#define __SPIRV_inline __attribute__((always_inline))
|
|
28
|
+
|
|
29
|
+
#define __global __attribute__((opencl_global))
|
|
30
|
+
#define __local __attribute__((opencl_local))
|
|
31
|
+
#define __private __attribute__((opencl_private))
|
|
32
|
+
#define __constant __attribute__((opencl_constant))
|
|
33
|
+
#ifdef __SYCL_DEVICE_ONLY__
|
|
34
|
+
#define __generic
|
|
35
|
+
#else
|
|
36
|
+
#define __generic __attribute__((opencl_generic))
|
|
37
|
+
#endif
|
|
38
|
+
|
|
39
|
+
// Check if SPIR-V builtins are supported.
|
|
40
|
+
// As the translator doesn't use the LLVM intrinsics (which would be emitted if
|
|
41
|
+
// we use the SPIR-V builtins) we can't rely on the SPIRV32/SPIRV64 etc macros
|
|
42
|
+
// to establish if we can use the builtin alias. We disable builtin altogether
|
|
43
|
+
// if we do not intent to use the backend. So instead of use target macros, rely
|
|
44
|
+
// on a __has_builtin test.
|
|
45
|
+
#if (__has_builtin(__builtin_spirv_num_workgroups))
|
|
46
|
+
#define __SPIRV_BUILTIN_ALIAS(builtin) \
|
|
47
|
+
__attribute__((clang_builtin_alias(builtin)))
|
|
48
|
+
#else
|
|
49
|
+
#define __SPIRV_BUILTIN_ALIAS(builtin)
|
|
50
|
+
#endif
|
|
51
|
+
|
|
52
|
+
// Builtin IDs and sizes
|
|
53
|
+
|
|
54
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_num_workgroups) __size_t
|
|
55
|
+
__spirv_BuiltInNumWorkgroups(int);
|
|
56
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_workgroup_size) __size_t
|
|
57
|
+
__spirv_BuiltInWorkgroupSize(int);
|
|
58
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_workgroup_id) __size_t
|
|
59
|
+
__spirv_BuiltInWorkgroupId(int);
|
|
60
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_local_invocation_id) __size_t
|
|
61
|
+
__spirv_BuiltInLocalInvocationId(int);
|
|
62
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_global_invocation_id) __size_t
|
|
63
|
+
__spirv_BuiltInGlobalInvocationId(int);
|
|
64
|
+
|
|
65
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_global_size) __size_t
|
|
66
|
+
__spirv_BuiltInGlobalSize(int);
|
|
67
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_global_offset) __size_t
|
|
68
|
+
__spirv_BuiltInGlobalOffset(int);
|
|
69
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_subgroup_size) __uint32_t
|
|
70
|
+
__spirv_BuiltInSubgroupSize();
|
|
71
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_subgroup_max_size) __uint32_t
|
|
72
|
+
__spirv_BuiltInSubgroupMaxSize();
|
|
73
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_num_subgroups) __uint32_t
|
|
74
|
+
__spirv_BuiltInNumSubgroups();
|
|
75
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_subgroup_id) __uint32_t
|
|
76
|
+
__spirv_BuiltInSubgroupId();
|
|
77
|
+
extern __SPIRV_BUILTIN_ALIAS(__builtin_spirv_subgroup_local_invocation_id)
|
|
78
|
+
__uint32_t __spirv_BuiltInSubgroupLocalInvocationId();
|
|
79
|
+
|
|
80
|
+
// OpGenericCastToPtrExplicit
|
|
81
|
+
|
|
82
|
+
extern __SPIRV_overloadable
|
|
83
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
84
|
+
__global void *__spirv_GenericCastToPtrExplicit_ToGlobal(__generic void *,
|
|
85
|
+
int) __SPIRV_NOEXCEPT;
|
|
86
|
+
extern __SPIRV_overloadable
|
|
87
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
88
|
+
__global const void *
|
|
89
|
+
__spirv_GenericCastToPtrExplicit_ToGlobal(__generic const void *,
|
|
90
|
+
int) __SPIRV_NOEXCEPT;
|
|
91
|
+
extern __SPIRV_overloadable
|
|
92
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
93
|
+
__global volatile void *
|
|
94
|
+
__spirv_GenericCastToPtrExplicit_ToGlobal(__generic volatile void *,
|
|
95
|
+
int) __SPIRV_NOEXCEPT;
|
|
96
|
+
extern __SPIRV_overloadable
|
|
97
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
98
|
+
__global const volatile void *
|
|
99
|
+
__spirv_GenericCastToPtrExplicit_ToGlobal(__generic const volatile void *,
|
|
100
|
+
int) __SPIRV_NOEXCEPT;
|
|
101
|
+
extern __SPIRV_overloadable
|
|
102
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
103
|
+
__local void *__spirv_GenericCastToPtrExplicit_ToLocal(__generic void *,
|
|
104
|
+
int) __SPIRV_NOEXCEPT;
|
|
105
|
+
extern __SPIRV_overloadable
|
|
106
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
107
|
+
__local const void *
|
|
108
|
+
__spirv_GenericCastToPtrExplicit_ToLocal(__generic const void *,
|
|
109
|
+
int) __SPIRV_NOEXCEPT;
|
|
110
|
+
extern __SPIRV_overloadable
|
|
111
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
112
|
+
__local volatile void *
|
|
113
|
+
__spirv_GenericCastToPtrExplicit_ToLocal(__generic volatile void *,
|
|
114
|
+
int) __SPIRV_NOEXCEPT;
|
|
115
|
+
extern __SPIRV_overloadable
|
|
116
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
117
|
+
__local const volatile void *
|
|
118
|
+
__spirv_GenericCastToPtrExplicit_ToLocal(__generic const volatile void *,
|
|
119
|
+
int) __SPIRV_NOEXCEPT;
|
|
120
|
+
extern __SPIRV_overloadable
|
|
121
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
122
|
+
__private void *
|
|
123
|
+
__spirv_GenericCastToPtrExplicit_ToPrivate(__generic void *,
|
|
124
|
+
int) __SPIRV_NOEXCEPT;
|
|
125
|
+
extern __SPIRV_overloadable
|
|
126
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
127
|
+
__private const void *
|
|
128
|
+
__spirv_GenericCastToPtrExplicit_ToPrivate(__generic const void *,
|
|
129
|
+
int) __SPIRV_NOEXCEPT;
|
|
130
|
+
extern __SPIRV_overloadable
|
|
131
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
132
|
+
__private volatile void *
|
|
133
|
+
__spirv_GenericCastToPtrExplicit_ToPrivate(__generic volatile void *,
|
|
134
|
+
int) __SPIRV_NOEXCEPT;
|
|
135
|
+
extern __SPIRV_overloadable
|
|
136
|
+
__SPIRV_BUILTIN_ALIAS(__builtin_spirv_generic_cast_to_ptr_explicit)
|
|
137
|
+
__private const volatile void *
|
|
138
|
+
__spirv_GenericCastToPtrExplicit_ToPrivate(__generic const volatile void *,
|
|
139
|
+
int) __SPIRV_NOEXCEPT;
|
|
140
|
+
|
|
141
|
+
// OpGenericCastToPtr
|
|
142
|
+
|
|
143
|
+
static __SPIRV_overloadable __SPIRV_inline __global void *
|
|
144
|
+
__spirv_GenericCastToPtr_ToGlobal(__generic void *p, int) __SPIRV_NOEXCEPT {
|
|
145
|
+
return (__global void *)p;
|
|
146
|
+
}
|
|
147
|
+
static __SPIRV_overloadable __SPIRV_inline __global const void *
|
|
148
|
+
__spirv_GenericCastToPtr_ToGlobal(__generic const void *p,
|
|
149
|
+
int) __SPIRV_NOEXCEPT {
|
|
150
|
+
return (__global const void *)p;
|
|
151
|
+
}
|
|
152
|
+
static __SPIRV_overloadable __SPIRV_inline __global volatile void *
|
|
153
|
+
__spirv_GenericCastToPtr_ToGlobal(__generic volatile void *p,
|
|
154
|
+
int) __SPIRV_NOEXCEPT {
|
|
155
|
+
return (__global volatile void *)p;
|
|
156
|
+
}
|
|
157
|
+
static __SPIRV_overloadable __SPIRV_inline __global const volatile void *
|
|
158
|
+
__spirv_GenericCastToPtr_ToGlobal(__generic const volatile void *p,
|
|
159
|
+
int) __SPIRV_NOEXCEPT {
|
|
160
|
+
return (__global const volatile void *)p;
|
|
161
|
+
}
|
|
162
|
+
static __SPIRV_overloadable __SPIRV_inline __local void *
|
|
163
|
+
__spirv_GenericCastToPtr_ToLocal(__generic void *p, int) __SPIRV_NOEXCEPT {
|
|
164
|
+
return (__local void *)p;
|
|
165
|
+
}
|
|
166
|
+
static __SPIRV_overloadable __SPIRV_inline __local const void *
|
|
167
|
+
__spirv_GenericCastToPtr_ToLocal(__generic const void *p,
|
|
168
|
+
int) __SPIRV_NOEXCEPT {
|
|
169
|
+
return (__local const void *)p;
|
|
170
|
+
}
|
|
171
|
+
static __SPIRV_overloadable __SPIRV_inline __local volatile void *
|
|
172
|
+
__spirv_GenericCastToPtr_ToLocal(__generic volatile void *p,
|
|
173
|
+
int) __SPIRV_NOEXCEPT {
|
|
174
|
+
return (__local volatile void *)p;
|
|
175
|
+
}
|
|
176
|
+
static __SPIRV_overloadable __SPIRV_inline __local const volatile void *
|
|
177
|
+
__spirv_GenericCastToPtr_ToLocal(__generic const volatile void *p,
|
|
178
|
+
int) __SPIRV_NOEXCEPT {
|
|
179
|
+
return (__local const volatile void *)p;
|
|
180
|
+
}
|
|
181
|
+
static __SPIRV_overloadable __SPIRV_inline __private void *
|
|
182
|
+
__spirv_GenericCastToPtr_ToPrivate(__generic void *p, int) __SPIRV_NOEXCEPT {
|
|
183
|
+
return (__private void *)p;
|
|
184
|
+
}
|
|
185
|
+
static __SPIRV_overloadable __SPIRV_inline __private const void *
|
|
186
|
+
__spirv_GenericCastToPtr_ToPrivate(__generic const void *p,
|
|
187
|
+
int) __SPIRV_NOEXCEPT {
|
|
188
|
+
return (__private const void *)p;
|
|
189
|
+
}
|
|
190
|
+
static __SPIRV_overloadable __SPIRV_inline __private volatile void *
|
|
191
|
+
__spirv_GenericCastToPtr_ToPrivate(__generic volatile void *p,
|
|
192
|
+
int) __SPIRV_NOEXCEPT {
|
|
193
|
+
return (__private volatile void *)p;
|
|
194
|
+
}
|
|
195
|
+
static __SPIRV_overloadable __SPIRV_inline __private const volatile void *
|
|
196
|
+
__spirv_GenericCastToPtr_ToPrivate(__generic const volatile void *p,
|
|
197
|
+
int) __SPIRV_NOEXCEPT {
|
|
198
|
+
return (__private const volatile void *)p;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
#pragma pop_macro("__size_t")
|
|
202
|
+
#pragma pop_macro("__uint32_t")
|
|
203
|
+
#pragma pop_macro("__uint64_t")
|
|
204
|
+
|
|
205
|
+
#undef __SPIRV_overloadable
|
|
206
|
+
#undef __SPIRV_convergent
|
|
207
|
+
#undef __SPIRV_inline
|
|
208
|
+
|
|
209
|
+
#undef __global
|
|
210
|
+
#undef __local
|
|
211
|
+
#undef __constant
|
|
212
|
+
#undef __generic
|
|
213
|
+
|
|
214
|
+
#undef __SPIRV_BUILTIN_ALIAS
|
|
215
|
+
#undef __SPIRV_NOEXCEPT
|
|
216
|
+
|
|
217
|
+
#endif /* __SPIRV_BUILTIN_VARS_H */
|