@cpp-linter/clang-tidy-win32-x64 21.1.0 → 23.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/clang-tidy.exe +2 -2
- package/lib/clang/23/include/__clang_cuda_complex_builtins.h +236 -0
- package/lib/clang/{21 → 23}/include/__clang_cuda_device_functions.h +1 -1
- package/lib/clang/{21 → 23}/include/__clang_cuda_intrinsics.h +207 -226
- package/lib/clang/{21 → 23}/include/__clang_cuda_math_forward_declares.h +5 -0
- package/lib/clang/{21 → 23}/include/__clang_cuda_runtime_wrapper.h +27 -5
- package/lib/clang/23/include/__clang_gpu_builtin_vars.h +71 -0
- package/lib/clang/23/include/__clang_gpu_device_functions.h +411 -0
- package/lib/clang/23/include/__clang_gpu_intrinsics.h +242 -0
- package/lib/clang/{21 → 23}/include/__clang_hip_libdevice_declares.h +14 -121
- package/lib/clang/{21 → 23}/include/__clang_hip_math.h +5 -5
- package/lib/clang/{21 → 23}/include/__clang_hip_runtime_wrapper.h +9 -1
- package/lib/clang/{21 → 23}/include/__clang_spirv_builtins.h +12 -12
- package/lib/clang/23/include/__clang_spirv_libdevice_declares.h +170 -0
- package/lib/clang/23/include/__clang_spirv_math.h +719 -0
- package/lib/clang/{21/include/float.h → 23/include/__float_float.h} +13 -24
- package/lib/clang/23/include/__float_header_macro.h +12 -0
- package/lib/clang/23/include/__float_infinity_nan.h +20 -0
- package/lib/clang/{21 → 23}/include/altivec.h +79 -9
- package/lib/clang/{21 → 23}/include/amdgpuintrin.h +2 -29
- package/lib/clang/23/include/amdhsa_abi.h +83 -0
- package/lib/clang/23/include/amo.h +220 -0
- package/lib/clang/{21 → 23}/include/amxavx512intrin.h +215 -1
- package/lib/clang/{21 → 23}/include/amxintrin.h +0 -2
- package/lib/clang/{21 → 23}/include/andes_vector.h +5 -0
- package/lib/clang/23/include/arm64_neon.h +21 -0
- package/lib/clang/{21 → 23}/include/arm64intr.h +10 -0
- package/lib/clang/{21 → 23}/include/arm_acle.h +38 -27
- package/lib/clang/{21 → 23}/include/arm_neon.h +4140 -3836
- package/lib/clang/{21 → 23}/include/arm_sme.h +20 -8
- package/lib/clang/{21 → 23}/include/arm_sve.h +4582 -3782
- package/lib/clang/{21 → 23}/include/avx10_2_512bf16intrin.h +19 -12
- package/lib/clang/{21 → 23}/include/avx10_2_512convertintrin.h +1 -1
- package/lib/clang/{21 → 23}/include/avx10_2_512niintrin.h +25 -25
- package/lib/clang/{21 → 23}/include/avx10_2_512satcvtdsintrin.h +1 -1
- package/lib/clang/{21 → 23}/include/avx10_2bf16intrin.h +54 -45
- package/lib/clang/{21 → 23}/include/avx10_2convertintrin.h +2 -2
- package/lib/clang/{21 → 23}/include/avx10_2copyintrin.h +1 -1
- package/lib/clang/{21 → 23}/include/avx10_2niintrin.h +2 -2
- package/lib/clang/{21 → 23}/include/avx10_2satcvtdsintrin.h +2 -2
- package/lib/clang/{21 → 23}/include/avx2intrin.h +279 -382
- package/lib/clang/{21 → 23}/include/avx512bf16intrin.h +25 -16
- package/lib/clang/{21 → 23}/include/avx512bitalgintrin.h +19 -30
- package/lib/clang/23/include/avx512bmmintrin.h +174 -0
- package/lib/clang/23/include/avx512bmmvlintrin.h +245 -0
- package/lib/clang/{21 → 23}/include/avx512bwintrin.h +405 -534
- package/lib/clang/23/include/avx512cdintrin.h +112 -0
- package/lib/clang/{21 → 23}/include/avx512dqintrin.h +132 -161
- package/lib/clang/{21 → 23}/include/avx512fintrin.h +1049 -1485
- package/lib/clang/{21 → 23}/include/avx512fp16intrin.h +124 -128
- package/lib/clang/23/include/avx512ifmaintrin.h +68 -0
- package/lib/clang/23/include/avx512ifmavlintrin.h +138 -0
- package/lib/clang/{21 → 23}/include/avx512vbmi2intrin.h +55 -48
- package/lib/clang/{21 → 23}/include/avx512vbmiintrin.h +19 -27
- package/lib/clang/{21 → 23}/include/avx512vbmivlintrin.h +35 -49
- package/lib/clang/{21 → 23}/include/avx512vlbf16intrin.h +32 -22
- package/lib/clang/{21 → 23}/include/avx512vlbitalgintrin.h +37 -53
- package/lib/clang/{21 → 23}/include/avx512vlbwintrin.h +494 -609
- package/lib/clang/23/include/avx512vlcdintrin.h +202 -0
- package/lib/clang/{21 → 23}/include/avx512vldqintrin.h +110 -127
- package/lib/clang/{21 → 23}/include/avx512vlfp16intrin.h +130 -111
- package/lib/clang/{21 → 23}/include/avx512vlintrin.h +1025 -1395
- package/lib/clang/{21 → 23}/include/avx512vlvbmi2intrin.h +102 -95
- package/lib/clang/{21 → 23}/include/avx512vlvnniintrin.h +50 -52
- package/lib/clang/{21 → 23}/include/avx512vlvp2intersectintrin.h +2 -2
- package/lib/clang/{21 → 23}/include/avx512vnniintrin.h +42 -45
- package/lib/clang/{21 → 23}/include/avx512vp2intersectintrin.h +2 -3
- package/lib/clang/{21 → 23}/include/avx512vpopcntdqintrin.h +8 -10
- package/lib/clang/{21 → 23}/include/avx512vpopcntdqvlintrin.h +17 -15
- package/lib/clang/{21 → 23}/include/avxifmaintrin.h +16 -0
- package/lib/clang/{21 → 23}/include/avxintrin.h +165 -241
- package/lib/clang/{21 → 23}/include/avxvnniint16intrin.h +118 -99
- package/lib/clang/{21 → 23}/include/avxvnniint8intrin.h +56 -32
- package/lib/clang/{21 → 23}/include/avxvnniintrin.h +39 -26
- package/lib/clang/{21 → 23}/include/cpuid.h +101 -4
- package/lib/clang/{21 → 23}/include/crc32intrin.h +10 -8
- package/lib/clang/23/include/cuda_wrappers/__utility/declval.h +28 -0
- package/lib/clang/{21 → 23}/include/emmintrin.h +176 -176
- package/lib/clang/23/include/endian.h +91 -0
- package/lib/clang/{21 → 23}/include/f16cintrin.h +23 -9
- package/lib/clang/23/include/float.h +48 -0
- package/lib/clang/23/include/fma4intrin.h +220 -0
- package/lib/clang/{21 → 23}/include/fmaintrin.h +96 -66
- package/lib/clang/{21 → 23}/include/gfniintrin.h +21 -16
- package/lib/clang/{21 → 23}/include/gpuintrin.h +129 -109
- package/lib/clang/{21 → 23}/include/hexagon_types.h +23 -20
- package/lib/clang/23/include/hlsl/hlsl_alias_intrinsics.h +222 -0
- package/lib/clang/{21/include/hlsl/hlsl_alias_intrinsics.h → 23/include/hlsl/hlsl_alias_intrinsics_gen.inc} +2090 -1032
- package/lib/clang/23/include/hlsl/hlsl_basic_types.h +370 -0
- package/lib/clang/{21 → 23}/include/hlsl/hlsl_compat_overloads.h +150 -18
- package/lib/clang/{21 → 23}/include/hlsl/hlsl_detail.h +6 -4
- package/lib/clang/23/include/hlsl/hlsl_inline_intrinsics_gen.inc +546 -0
- package/lib/clang/{21 → 23}/include/hlsl/hlsl_intrinsic_helpers.h +71 -45
- package/lib/clang/23/include/hlsl/hlsl_intrinsics.h +331 -0
- package/lib/clang/{21 → 23}/include/hvx_hexagon_protos.h +724 -913
- package/lib/clang/{21 → 23}/include/immintrin.h +4 -14
- package/lib/clang/{21 → 23}/include/intrin.h +24 -10
- package/lib/clang/{21 → 23}/include/larchintrin.h +2 -0
- package/lib/clang/{21 → 23}/include/lasxintrin.h +113 -0
- package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/assert.h +3 -5
- package/lib/clang/23/include/llvm_libc_wrappers/ctype.h +29 -0
- package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/inttypes.h +3 -5
- package/lib/clang/23/include/llvm_libc_wrappers/stdio.h +52 -0
- package/lib/clang/23/include/llvm_libc_wrappers/stdlib.h +32 -0
- package/lib/clang/23/include/llvm_libc_wrappers/string.h +29 -0
- package/lib/clang/{21 → 23}/include/llvm_libc_wrappers/time.h +4 -10
- package/lib/clang/{21 → 23}/include/mmintrin.h +188 -257
- package/lib/clang/{21 → 23}/include/module.modulemap +39 -5
- package/lib/clang/{21 → 23}/include/movrs_avx10_2_512intrin.h +2 -2
- package/lib/clang/{21 → 23}/include/movrs_avx10_2intrin.h +4 -4
- package/lib/clang/{21 → 23}/include/nvptxintrin.h +15 -26
- package/lib/clang/{21 → 23}/include/opencl-c-base.h +7 -93
- package/lib/clang/{21 → 23}/include/opencl-c.h +225 -118
- package/lib/clang/{21 → 23}/include/openmp_wrappers/__clang_openmp_device_functions.h +14 -0
- package/lib/clang/{21 → 23}/include/openmp_wrappers/complex +7 -1
- package/lib/clang/{21 → 23}/include/openmp_wrappers/complex.h +6 -0
- package/lib/clang/{21 → 23}/include/openmp_wrappers/math.h +10 -0
- package/lib/clang/{21 → 23}/include/pmmintrin.h +12 -24
- package/lib/clang/{21 → 23}/include/ptrauth.h +104 -12
- package/lib/clang/{21 → 23}/include/riscv_bitmanip.h +7 -0
- package/lib/clang/{21 → 23}/include/riscv_corev_alu.h +2 -0
- package/lib/clang/{21 → 23}/include/riscv_crypto.h +8 -0
- package/lib/clang/23/include/riscv_mips.h +36 -0
- package/lib/clang/23/include/riscv_nds.h +92 -0
- package/lib/clang/{21 → 23}/include/riscv_ntlh.h +2 -0
- package/lib/clang/23/include/riscv_packed_simd.h +644 -0
- package/lib/clang/{21 → 23}/include/riscv_vector.h +43 -0
- package/lib/clang/{21 → 23}/include/sifive_vector.h +76 -2
- package/lib/clang/{21 → 23}/include/sm4evexintrin.h +2 -2
- package/lib/clang/{21 → 23}/include/smmintrin.h +77 -59
- package/lib/clang/23/include/spirvintrin.h +167 -0
- package/lib/clang/23/include/stddefer.h +19 -0
- package/lib/clang/{21 → 23}/include/stdint.h +5 -14
- package/lib/clang/{21 → 23}/include/tmmintrin.h +116 -147
- package/lib/clang/{21 → 23}/include/vaesintrin.h +1 -2
- package/lib/clang/{21 → 23}/include/vecintrin.h +1 -1
- package/lib/clang/{21 → 23}/include/wasm_simd128.h +17 -0
- package/lib/clang/{21 → 23}/include/xmmintrin.h +50 -75
- package/lib/clang/{21 → 23}/include/xopintrin.h +20 -10
- package/lib/clang/23/include/zos_wrappers/grp.h +19 -0
- package/lib/clang/23/include/zos_wrappers/locale.h +19 -0
- package/lib/clang/23/include/zos_wrappers/math.h +31 -0
- package/lib/clang/23/include/zos_wrappers/poll.h +19 -0
- package/lib/clang/23/include/zos_wrappers/stdlib.h +20 -0
- package/lib/clang/23/include/zos_wrappers/string.h +19 -0
- package/lib/clang/23/include/zos_wrappers/time.h +19 -0
- package/lib/clang/23/include/zos_wrappers/variant.h +19 -0
- package/package.json +6 -6
- package/lib/clang/21/include/__clang_cuda_complex_builtins.h +0 -285
- package/lib/clang/21/include/amxbf16transposeintrin.h +0 -94
- package/lib/clang/21/include/amxcomplextransposeintrin.h +0 -303
- package/lib/clang/21/include/amxfp16transposeintrin.h +0 -94
- package/lib/clang/21/include/amxmovrstransposeintrin.h +0 -200
- package/lib/clang/21/include/amxtf32intrin.h +0 -108
- package/lib/clang/21/include/amxtf32transposeintrin.h +0 -105
- package/lib/clang/21/include/amxtransposeintrin.h +0 -248
- package/lib/clang/21/include/avx512cdintrin.h +0 -125
- package/lib/clang/21/include/avx512ifmaintrin.h +0 -70
- package/lib/clang/21/include/avx512ifmavlintrin.h +0 -111
- package/lib/clang/21/include/avx512vlcdintrin.h +0 -230
- package/lib/clang/21/include/fma4intrin.h +0 -218
- package/lib/clang/21/include/hlsl/hlsl_basic_types.h +0 -120
- package/lib/clang/21/include/hlsl/hlsl_intrinsics.h +0 -526
- package/lib/clang/21/include/llvm_libc_wrappers/ctype.h +0 -140
- package/lib/clang/21/include/llvm_libc_wrappers/stdio.h +0 -80
- package/lib/clang/21/include/llvm_libc_wrappers/stdlib.h +0 -53
- package/lib/clang/21/include/llvm_libc_wrappers/string.h +0 -96
- /package/lib/clang/{21 → 23}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_cuda_math.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_cuda_texture_intrinsics.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_hip_cmath.h +0 -0
- /package/lib/clang/{21 → 23}/include/__clang_hip_stdlib.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg___gnuc_va_list.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg___va_copy.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg_header_macro.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg_va_arg.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg_va_copy.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stdarg_va_list.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_header_macro.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_null.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_nullptr_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_offsetof.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_ptrdiff_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_rsize_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_size_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_unreachable.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_wchar_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__stddef_wint_t.h +0 -0
- /package/lib/clang/{21 → 23}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{21 → 23}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{21 → 23}/include/adcintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/adxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ammintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/amxcomplexintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/amxfp16intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/amxfp8intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/amxmovrsintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_bf16.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_cde.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_cmse.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_fp16.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_mve.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_neon_sve_bridge.h +0 -0
- /package/lib/clang/{21 → 23}/include/arm_vector_types.h +0 -0
- /package/lib/clang/{21 → 23}/include/armintr.h +0 -0
- /package/lib/clang/{21 → 23}/include/avx10_2_512minmaxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/avx10_2_512satcvtintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/avx10_2minmaxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/avx10_2satcvtintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/avxneconvertintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/bmi2intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/bmiintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/builtins.h +0 -0
- /package/lib/clang/{21 → 23}/include/cet.h +0 -0
- /package/lib/clang/{21 → 23}/include/cetintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/clwbintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/clzerointrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/cmpccxaddintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.h +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/c++config.h +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/cmath +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{21 → 23}/include/cuda_wrappers/new +0 -0
- /package/lib/clang/{21 → 23}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{21 → 23}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{21 → 23}/include/hlsl/hlsl_spirv.h +0 -0
- /package/lib/clang/{21 → 23}/include/hlsl.h +0 -0
- /package/lib/clang/{21 → 23}/include/hresetintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/htmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ia32intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/intrin0.h +0 -0
- /package/lib/clang/{21 → 23}/include/inttypes.h +0 -0
- /package/lib/clang/{21 → 23}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/iso646.h +0 -0
- /package/lib/clang/{21 → 23}/include/keylockerintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/limits.h +0 -0
- /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload.h +0 -0
- /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_device.h +0 -0
- /package/lib/clang/{21 → 23}/include/llvm_offload_wrappers/__llvm_offload_host.h +0 -0
- /package/lib/clang/{21 → 23}/include/lsxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/lwpintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/lzcntintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/mm3dnow.h +0 -0
- /package/lib/clang/{21 → 23}/include/mm_malloc.h +0 -0
- /package/lib/clang/{21 → 23}/include/movdirintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/movrsintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/msa.h +0 -0
- /package/lib/clang/{21 → 23}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/nmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{21 → 23}/include/openmp_wrappers/complex_cmath.h +0 -0
- /package/lib/clang/{21 → 23}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{21 → 23}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/pkuintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/popcntintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/emmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/mm_malloc.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/mmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/nmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/pmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/smmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/tmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ppc_wrappers/xmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/prfchiintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/prfchwintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/raointintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/rtmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/s390intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/serializeintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/sgxintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/sha512intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/shaintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/sm3intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/sm4intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdalign.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdarg.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdatomic.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdbool.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdckdint.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdcountof.h +0 -0
- /package/lib/clang/{21 → 23}/include/stddef.h +0 -0
- /package/lib/clang/{21 → 23}/include/stdnoreturn.h +0 -0
- /package/lib/clang/{21 → 23}/include/tbmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/tgmath.h +0 -0
- /package/lib/clang/{21 → 23}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/uintrintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/unwind.h +0 -0
- /package/lib/clang/{21 → 23}/include/usermsrintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/vadefs.h +0 -0
- /package/lib/clang/{21 → 23}/include/varargs.h +0 -0
- /package/lib/clang/{21 → 23}/include/velintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{21 → 23}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{21 → 23}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/wmmintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/x86gprintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/x86intrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/xtestintrin.h +0 -0
- /package/lib/clang/{21 → 23}/include/yvals_core.h +0 -0
- /package/lib/clang/{21 → 23}/include/zos_wrappers/builtins.h +0 -0
|
@@ -32,34 +32,12 @@ _Pragma("push_macro(\"bool\")");
|
|
|
32
32
|
#define bool _Bool
|
|
33
33
|
#endif
|
|
34
34
|
|
|
35
|
-
_Pragma("omp begin declare target device_type(nohost)");
|
|
36
|
-
_Pragma("omp begin declare variant match(device = {kind(gpu)})");
|
|
37
|
-
|
|
38
|
-
// Forward declare a few functions for the implementation header.
|
|
39
|
-
|
|
40
|
-
// Returns a bitmask marking all lanes that have the same value of __x.
|
|
41
|
-
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
42
|
-
__gpu_match_any_u32_impl(uint64_t __lane_mask, uint32_t __x);
|
|
43
|
-
|
|
44
|
-
// Returns a bitmask marking all lanes that have the same value of __x.
|
|
45
|
-
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
46
|
-
__gpu_match_any_u64_impl(uint64_t __lane_mask, uint64_t __x);
|
|
47
|
-
|
|
48
|
-
// Returns the current lane mask if every lane contains __x.
|
|
49
|
-
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
50
|
-
__gpu_match_all_u32_impl(uint64_t __lane_mask, uint32_t __x);
|
|
51
|
-
|
|
52
|
-
// Returns the current lane mask if every lane contains __x.
|
|
53
|
-
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
54
|
-
__gpu_match_all_u64_impl(uint64_t __lane_mask, uint64_t __x);
|
|
55
|
-
|
|
56
|
-
_Pragma("omp end declare variant");
|
|
57
|
-
_Pragma("omp end declare target");
|
|
58
|
-
|
|
59
35
|
#if defined(__NVPTX__)
|
|
60
36
|
#include <nvptxintrin.h>
|
|
61
37
|
#elif defined(__AMDGPU__)
|
|
62
38
|
#include <amdgpuintrin.h>
|
|
39
|
+
#elif defined(__SPIRV__)
|
|
40
|
+
#include <spirvintrin.h>
|
|
63
41
|
#elif !defined(_OPENMP)
|
|
64
42
|
#error "This header is only meant to be used on GPU architectures."
|
|
65
43
|
#endif
|
|
@@ -67,6 +45,9 @@ _Pragma("omp end declare target");
|
|
|
67
45
|
_Pragma("omp begin declare target device_type(nohost)");
|
|
68
46
|
_Pragma("omp begin declare variant match(device = {kind(gpu)})");
|
|
69
47
|
|
|
48
|
+
// Attribute to declare a function as a kernel.
|
|
49
|
+
#define __gpu_kernel __attribute__((device_kernel, visibility("protected")))
|
|
50
|
+
|
|
70
51
|
#define __GPU_X_DIM 0
|
|
71
52
|
#define __GPU_Y_DIM 1
|
|
72
53
|
#define __GPU_Z_DIM 2
|
|
@@ -81,7 +62,7 @@ _DEFAULT_FN_ATTRS static __inline__ uint32_t __gpu_num_blocks(int __dim) {
|
|
|
81
62
|
case 2:
|
|
82
63
|
return __gpu_num_blocks_z();
|
|
83
64
|
default:
|
|
84
|
-
|
|
65
|
+
return 1;
|
|
85
66
|
}
|
|
86
67
|
}
|
|
87
68
|
|
|
@@ -95,7 +76,7 @@ _DEFAULT_FN_ATTRS static __inline__ uint32_t __gpu_block_id(int __dim) {
|
|
|
95
76
|
case 2:
|
|
96
77
|
return __gpu_block_id_z();
|
|
97
78
|
default:
|
|
98
|
-
|
|
79
|
+
return 0;
|
|
99
80
|
}
|
|
100
81
|
}
|
|
101
82
|
|
|
@@ -109,7 +90,7 @@ _DEFAULT_FN_ATTRS static __inline__ uint32_t __gpu_num_threads(int __dim) {
|
|
|
109
90
|
case 2:
|
|
110
91
|
return __gpu_num_threads_z();
|
|
111
92
|
default:
|
|
112
|
-
|
|
93
|
+
return 1;
|
|
113
94
|
}
|
|
114
95
|
}
|
|
115
96
|
|
|
@@ -123,7 +104,7 @@ _DEFAULT_FN_ATTRS static __inline__ uint32_t __gpu_thread_id(int __dim) {
|
|
|
123
104
|
case 2:
|
|
124
105
|
return __gpu_thread_id_z();
|
|
125
106
|
default:
|
|
126
|
-
|
|
107
|
+
return 0;
|
|
127
108
|
}
|
|
128
109
|
}
|
|
129
110
|
|
|
@@ -142,11 +123,10 @@ __gpu_is_first_in_lane(uint64_t __lane_mask) {
|
|
|
142
123
|
// Copies the value from the first active thread to the rest.
|
|
143
124
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
144
125
|
__gpu_read_first_lane_u64(uint64_t __lane_mask, uint64_t __x) {
|
|
145
|
-
uint32_t __hi = (uint32_t)(__x >>
|
|
146
|
-
uint32_t __lo = (uint32_t)(__x &
|
|
147
|
-
return ((uint64_t)__gpu_read_first_lane_u32(__lane_mask, __hi) <<
|
|
148
|
-
((uint64_t)__gpu_read_first_lane_u32(__lane_mask, __lo) &
|
|
149
|
-
0xFFFFFFFFull);
|
|
126
|
+
uint32_t __hi = (uint32_t)(__x >> 32);
|
|
127
|
+
uint32_t __lo = (uint32_t)(__x & 0xFFFFFFFF);
|
|
128
|
+
return ((uint64_t)__gpu_read_first_lane_u32(__lane_mask, __hi) << 32) |
|
|
129
|
+
((uint64_t)__gpu_read_first_lane_u32(__lane_mask, __lo) & 0xFFFFFFFF);
|
|
150
130
|
}
|
|
151
131
|
|
|
152
132
|
// Gets the first floating point value from the active lanes.
|
|
@@ -169,11 +149,10 @@ __gpu_read_first_lane_f64(uint64_t __lane_mask, double __x) {
|
|
|
169
149
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
170
150
|
__gpu_shuffle_idx_u64(uint64_t __lane_mask, uint32_t __idx, uint64_t __x,
|
|
171
151
|
uint32_t __width) {
|
|
172
|
-
uint32_t __hi = (uint32_t)(__x >>
|
|
152
|
+
uint32_t __hi = (uint32_t)(__x >> 32);
|
|
173
153
|
uint32_t __lo = (uint32_t)(__x & 0xFFFFFFFF);
|
|
174
154
|
uint32_t __mask = (uint32_t)__lane_mask;
|
|
175
|
-
return ((uint64_t)__gpu_shuffle_idx_u32(__mask, __idx, __hi, __width)
|
|
176
|
-
<< 32ull) |
|
|
155
|
+
return ((uint64_t)__gpu_shuffle_idx_u32(__mask, __idx, __hi, __width) << 32) |
|
|
177
156
|
((uint64_t)__gpu_shuffle_idx_u32(__mask, __idx, __lo, __width));
|
|
178
157
|
}
|
|
179
158
|
|
|
@@ -196,125 +175,166 @@ __gpu_shuffle_idx_f64(uint64_t __lane_mask, uint32_t __idx, double __x,
|
|
|
196
175
|
__builtin_bit_cast(uint64_t, __x), __width));
|
|
197
176
|
}
|
|
198
177
|
|
|
199
|
-
//
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
uint32_t __index = __gpu_lane_id() - __step; \
|
|
218
|
-
__bitmask_type bitmask = __gpu_lane_id() >= __step; \
|
|
219
|
-
__x += __builtin_bit_cast( \
|
|
220
|
-
__type, \
|
|
221
|
-
-bitmask & __builtin_bit_cast(__bitmask_type, \
|
|
222
|
-
__gpu_shuffle_idx_##__suffix( \
|
|
223
|
-
__lane_mask, __index, __x, \
|
|
224
|
-
__gpu_num_lanes()))); \
|
|
225
|
-
} \
|
|
178
|
+
// Implements scan and reduction operations across a GPU warp or wavefront.
|
|
179
|
+
//
|
|
180
|
+
// Both scans work by iterating log2(N) steps. The bitmask tracks the currently
|
|
181
|
+
// unprocessed lanes, above or below the current lane in the case of a suffix or
|
|
182
|
+
// prefix scan. Each iteration we shuffle in the unprocessed neighbors and then
|
|
183
|
+
// clear the bits that this operation handled.
|
|
184
|
+
#define __DO_LANE_OPS(__type, __op, __identity, __prefix, __suffix) \
|
|
185
|
+
_DEFAULT_FN_ATTRS static __inline__ __type \
|
|
186
|
+
__gpu_suffix_scan_##__prefix##_##__suffix(uint64_t __lane_mask, \
|
|
187
|
+
__type __x) { \
|
|
188
|
+
uint64_t __above = __lane_mask & -(UINT64_C(2) << __gpu_lane_id()); \
|
|
189
|
+
for (uint32_t __step = 1; __step < __gpu_num_lanes(); __step *= 2) { \
|
|
190
|
+
uint32_t __src = __builtin_ctzg(__above, (int)sizeof(__above) * 8); \
|
|
191
|
+
__type __result = __gpu_shuffle_idx_##__suffix(__lane_mask, __src, __x, \
|
|
192
|
+
__gpu_num_lanes()); \
|
|
193
|
+
__x = __op(__x, __above ? __result : (__type)__identity); \
|
|
194
|
+
for (uint32_t __i = 0; __i < __step; ++__i) \
|
|
195
|
+
__above &= __above - 1; \
|
|
226
196
|
} \
|
|
227
197
|
return __x; \
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
if (__divergent) { \
|
|
243
|
-
return __gpu_shuffle_idx_##__suffix( \
|
|
244
|
-
__lane_mask, 63 - __builtin_clzll(__lane_mask), \
|
|
245
|
-
__gpu_lane_scan_##__suffix(__lane_mask, __x), __gpu_num_lanes()); \
|
|
246
|
-
} else { \
|
|
247
|
-
for (uint32_t __step = 1; __step < __gpu_num_lanes(); __step *= 2) { \
|
|
248
|
-
uint32_t __index = __step + __gpu_lane_id(); \
|
|
249
|
-
__x += __gpu_shuffle_idx_##__suffix(__lane_mask, __index, __x, \
|
|
250
|
-
__gpu_num_lanes()); \
|
|
251
|
-
} \
|
|
252
|
-
return __gpu_read_first_lane_##__suffix(__lane_mask, __x); \
|
|
198
|
+
} \
|
|
199
|
+
\
|
|
200
|
+
_DEFAULT_FN_ATTRS static __inline__ __type \
|
|
201
|
+
__gpu_prefix_scan_##__prefix##_##__suffix(uint64_t __lane_mask, \
|
|
202
|
+
__type __x) { \
|
|
203
|
+
uint64_t __below = __lane_mask & ((UINT64_C(1) << __gpu_lane_id()) - 1); \
|
|
204
|
+
for (uint32_t __step = 1; __step < __gpu_num_lanes(); __step *= 2) { \
|
|
205
|
+
uint32_t __src = 63 - __builtin_clzg(__below, (int)sizeof(__below) * 8); \
|
|
206
|
+
__type __result = __gpu_shuffle_idx_##__suffix(__lane_mask, __src, __x, \
|
|
207
|
+
__gpu_num_lanes()); \
|
|
208
|
+
__x = __op(__x, __below ? __result : (__type)__identity); \
|
|
209
|
+
for (uint32_t __i = 0; __i < __step; ++__i) \
|
|
210
|
+
__below ^= \
|
|
211
|
+
(UINT64_C(1) << (63 - __builtin_clzg(__below, 0))) & __below; \
|
|
253
212
|
} \
|
|
213
|
+
return __x; \
|
|
214
|
+
} \
|
|
215
|
+
\
|
|
216
|
+
_DEFAULT_FN_ATTRS static __inline__ __type \
|
|
217
|
+
__gpu_lane_##__prefix##_##__suffix(uint64_t __lane_mask, __type __x) { \
|
|
218
|
+
return __gpu_read_first_lane_##__suffix( \
|
|
219
|
+
__lane_mask, \
|
|
220
|
+
__gpu_suffix_scan_##__prefix##_##__suffix(__lane_mask, __x)); \
|
|
254
221
|
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
222
|
+
|
|
223
|
+
#define __GPU_OP(__x, __y) ((__x) + (__y))
|
|
224
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, 0, add, u32);
|
|
225
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, 0, add, u64);
|
|
226
|
+
__DO_LANE_OPS(float, __GPU_OP, 0, add, f32);
|
|
227
|
+
__DO_LANE_OPS(double, __GPU_OP, 0, add, f64);
|
|
228
|
+
#undef __GPU_OP
|
|
229
|
+
|
|
230
|
+
#define __GPU_OP(__x, __y) ((__x) & (__y))
|
|
231
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, UINT32_MAX, and, u32);
|
|
232
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, UINT64_MAX, and, u64);
|
|
233
|
+
#undef __GPU_OP
|
|
234
|
+
|
|
235
|
+
#define __GPU_OP(__x, __y) ((__x) | (__y))
|
|
236
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, 0, or, u32);
|
|
237
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, 0, or, u64);
|
|
238
|
+
#undef __GPU_OP
|
|
239
|
+
|
|
240
|
+
#define __GPU_OP(__x, __y) ((__x) ^ (__y))
|
|
241
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, 0, xor, u32);
|
|
242
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, 0, xor, u64);
|
|
243
|
+
#undef __GPU_OP
|
|
244
|
+
|
|
245
|
+
#define __GPU_OP(__x, __y) ((__x) < (__y) ? (__x) : (__y))
|
|
246
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, UINT32_MAX, min, u32);
|
|
247
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, UINT64_MAX, min, u64);
|
|
248
|
+
#undef __GPU_OP
|
|
249
|
+
|
|
250
|
+
#define __GPU_OP(__x, __y) ((__x) > (__y) ? (__x) : (__y))
|
|
251
|
+
__DO_LANE_OPS(uint32_t, __GPU_OP, 0, max, u32);
|
|
252
|
+
__DO_LANE_OPS(uint64_t, __GPU_OP, 0, max, u64);
|
|
253
|
+
#undef __GPU_OP
|
|
254
|
+
|
|
255
|
+
#define __GPU_OP(__x, __y) __builtin_elementwise_minnum((__x), (__y))
|
|
256
|
+
__DO_LANE_OPS(float, __GPU_OP, __builtin_inff(), minnum, f32);
|
|
257
|
+
__DO_LANE_OPS(double, __GPU_OP, __builtin_inf(), minnum, f64);
|
|
258
|
+
#undef __GPU_OP
|
|
259
|
+
|
|
260
|
+
#define __GPU_OP(__x, __y) __builtin_elementwise_maxnum((__x), (__y))
|
|
261
|
+
__DO_LANE_OPS(float, __GPU_OP, -__builtin_inff(), maxnum, f32);
|
|
262
|
+
__DO_LANE_OPS(double, __GPU_OP, -__builtin_inf(), maxnum, f64);
|
|
263
|
+
#undef __GPU_OP
|
|
264
|
+
|
|
265
|
+
#undef __DO_LANE_OPS
|
|
260
266
|
|
|
261
267
|
// Returns a bitmask marking all lanes that have the same value of __x.
|
|
268
|
+
#ifndef __gpu_match_any_u32_impl
|
|
262
269
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
263
|
-
|
|
270
|
+
__gpu_match_any_u32(uint64_t __lane_mask, uint32_t __x) {
|
|
264
271
|
uint64_t __match_mask = 0;
|
|
265
272
|
|
|
266
273
|
bool __done = 0;
|
|
267
274
|
for (uint64_t __active_mask = __lane_mask; __active_mask;
|
|
268
275
|
__active_mask = __gpu_ballot(__lane_mask, !__done)) {
|
|
269
276
|
if (!__done) {
|
|
270
|
-
uint32_t __first =
|
|
277
|
+
uint32_t __first = __gpu_shuffle_idx_u32(
|
|
278
|
+
__active_mask, __builtin_ctzg(__active_mask), __x, __gpu_num_lanes());
|
|
279
|
+
uint64_t __ballot = __gpu_ballot(__active_mask, __first == __x);
|
|
271
280
|
if (__first == __x) {
|
|
272
|
-
__match_mask =
|
|
281
|
+
__match_mask = __ballot;
|
|
273
282
|
__done = 1;
|
|
274
283
|
}
|
|
275
284
|
}
|
|
276
285
|
}
|
|
277
|
-
__gpu_sync_lane(__lane_mask);
|
|
278
286
|
return __match_mask;
|
|
279
287
|
}
|
|
288
|
+
#endif
|
|
289
|
+
#undef __gpu_match_any_u32_impl
|
|
280
290
|
|
|
281
291
|
// Returns a bitmask marking all lanes that have the same value of __x.
|
|
292
|
+
#ifndef __gpu_match_any_u64_impl
|
|
282
293
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
283
|
-
|
|
294
|
+
__gpu_match_any_u64(uint64_t __lane_mask, uint64_t __x) {
|
|
284
295
|
uint64_t __match_mask = 0;
|
|
285
296
|
|
|
286
297
|
bool __done = 0;
|
|
287
298
|
for (uint64_t __active_mask = __lane_mask; __active_mask;
|
|
288
299
|
__active_mask = __gpu_ballot(__lane_mask, !__done)) {
|
|
289
300
|
if (!__done) {
|
|
290
|
-
uint64_t __first =
|
|
301
|
+
uint64_t __first = __gpu_shuffle_idx_u64(
|
|
302
|
+
__active_mask, __builtin_ctzg(__active_mask), __x, __gpu_num_lanes());
|
|
303
|
+
uint64_t __ballot = __gpu_ballot(__active_mask, __first == __x);
|
|
291
304
|
if (__first == __x) {
|
|
292
|
-
__match_mask =
|
|
305
|
+
__match_mask = __ballot;
|
|
293
306
|
__done = 1;
|
|
294
307
|
}
|
|
295
308
|
}
|
|
296
309
|
}
|
|
297
|
-
__gpu_sync_lane(__lane_mask);
|
|
298
310
|
return __match_mask;
|
|
299
311
|
}
|
|
312
|
+
#endif
|
|
313
|
+
#undef __gpu_match_any_u64_impl
|
|
300
314
|
|
|
301
315
|
// Returns the current lane mask if every lane contains __x.
|
|
316
|
+
#ifndef __gpu_match_all_u32_impl
|
|
302
317
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
303
|
-
|
|
304
|
-
uint32_t __first =
|
|
318
|
+
__gpu_match_all_u32(uint64_t __lane_mask, uint32_t __x) {
|
|
319
|
+
uint32_t __first = __gpu_shuffle_idx_u32(
|
|
320
|
+
__lane_mask, __builtin_ctzg(__lane_mask), __x, __gpu_num_lanes());
|
|
305
321
|
uint64_t __ballot = __gpu_ballot(__lane_mask, __x == __first);
|
|
306
|
-
|
|
307
|
-
return __ballot == __gpu_lane_mask() ? __gpu_lane_mask() : 0ull;
|
|
322
|
+
return __ballot == __lane_mask ? __lane_mask : UINT64_C(0);
|
|
308
323
|
}
|
|
324
|
+
#endif
|
|
325
|
+
#undef __gpu_match_all_u32_impl
|
|
309
326
|
|
|
310
327
|
// Returns the current lane mask if every lane contains __x.
|
|
328
|
+
#ifndef __gpu_match_all_u64_impl
|
|
311
329
|
_DEFAULT_FN_ATTRS static __inline__ uint64_t
|
|
312
|
-
|
|
313
|
-
uint64_t __first =
|
|
330
|
+
__gpu_match_all_u64(uint64_t __lane_mask, uint64_t __x) {
|
|
331
|
+
uint64_t __first = __gpu_shuffle_idx_u64(
|
|
332
|
+
__lane_mask, __builtin_ctzg(__lane_mask), __x, __gpu_num_lanes());
|
|
314
333
|
uint64_t __ballot = __gpu_ballot(__lane_mask, __x == __first);
|
|
315
|
-
|
|
316
|
-
return __ballot == __gpu_lane_mask() ? __gpu_lane_mask() : 0ull;
|
|
334
|
+
return __ballot == __lane_mask ? __lane_mask : UINT64_C(0);
|
|
317
335
|
}
|
|
336
|
+
#endif
|
|
337
|
+
#undef __gpu_match_all_u64_impl
|
|
318
338
|
|
|
319
339
|
_Pragma("omp end declare variant");
|
|
320
340
|
_Pragma("omp end declare target");
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
|
|
12
12
|
#include <hexagon_protos.h>
|
|
13
13
|
|
|
14
|
+
// Save and undefine B0 to avoid conflicts with POSIX termios.h which
|
|
15
|
+
// defines B0 as a macro for baud rate 0.
|
|
16
|
+
#pragma push_macro("B0")
|
|
17
|
+
#undef B0
|
|
18
|
+
|
|
14
19
|
/* Hexagon names */
|
|
15
20
|
#define HEXAGON_Vect HEXAGON_Vect64
|
|
16
21
|
#define HEXAGON_V_GET_D HEXAGON_V64_GET_D
|
|
@@ -697,9 +702,8 @@ public:
|
|
|
697
702
|
};
|
|
698
703
|
|
|
699
704
|
// Extract byte methods
|
|
700
|
-
signed char
|
|
701
|
-
|
|
702
|
-
};
|
|
705
|
+
signed char b0(void) { return HEXAGON_V64_GET_B0(data); };
|
|
706
|
+
signed char B0(void) { return b0(); };
|
|
703
707
|
signed char B1(void) {
|
|
704
708
|
return HEXAGON_V64_GET_B1(data);
|
|
705
709
|
};
|
|
@@ -776,9 +780,10 @@ public:
|
|
|
776
780
|
};
|
|
777
781
|
|
|
778
782
|
// Set byte methods
|
|
779
|
-
HEXAGON_Vect64C
|
|
783
|
+
HEXAGON_Vect64C b0(signed char b) {
|
|
780
784
|
return HEXAGON_Vect64C(HEXAGON_V64_PUT_B0(data, b));
|
|
781
785
|
};
|
|
786
|
+
HEXAGON_Vect64C B0(signed char b) { return b0(b); };
|
|
782
787
|
HEXAGON_Vect64C B1(signed char b) {
|
|
783
788
|
return HEXAGON_Vect64C(HEXAGON_V64_PUT_B1(data, b));
|
|
784
789
|
};
|
|
@@ -1121,9 +1126,8 @@ public:
|
|
|
1121
1126
|
};
|
|
1122
1127
|
|
|
1123
1128
|
// Extract byte methods
|
|
1124
|
-
signed char
|
|
1125
|
-
|
|
1126
|
-
};
|
|
1129
|
+
signed char b0(void) { return HEXAGON_V32_GET_B0(data); };
|
|
1130
|
+
signed char B0(void) { return b0(); };
|
|
1127
1131
|
signed char B1(void) {
|
|
1128
1132
|
return HEXAGON_V32_GET_B1(data);
|
|
1129
1133
|
};
|
|
@@ -1162,9 +1166,10 @@ public:
|
|
|
1162
1166
|
};
|
|
1163
1167
|
|
|
1164
1168
|
// Set byte methods
|
|
1165
|
-
HEXAGON_Vect32C
|
|
1169
|
+
HEXAGON_Vect32C b0(signed char b) {
|
|
1166
1170
|
return HEXAGON_Vect32C(HEXAGON_V32_PUT_B0(data, b));
|
|
1167
1171
|
};
|
|
1172
|
+
HEXAGON_Vect32C B0(signed char b) { return b0(b); };
|
|
1168
1173
|
HEXAGON_Vect32C B1(signed char b) {
|
|
1169
1174
|
return HEXAGON_Vect32C(HEXAGON_V32_PUT_B1(data, b));
|
|
1170
1175
|
};
|
|
@@ -1924,9 +1929,8 @@ public:
|
|
|
1924
1929
|
};
|
|
1925
1930
|
|
|
1926
1931
|
// Extract byte methods
|
|
1927
|
-
signed char
|
|
1928
|
-
|
|
1929
|
-
};
|
|
1932
|
+
signed char b0(void) { return Q6V64_GET_B0(data); };
|
|
1933
|
+
signed char B0(void) { return b0(); };
|
|
1930
1934
|
signed char B1(void) {
|
|
1931
1935
|
return Q6V64_GET_B1(data);
|
|
1932
1936
|
};
|
|
@@ -2003,9 +2007,8 @@ public:
|
|
|
2003
2007
|
};
|
|
2004
2008
|
|
|
2005
2009
|
// Set byte methods
|
|
2006
|
-
Q6Vect64C
|
|
2007
|
-
|
|
2008
|
-
};
|
|
2010
|
+
Q6Vect64C b0(signed char b) { return Q6Vect64C(Q6V64_PUT_B0(data, b)); };
|
|
2011
|
+
Q6Vect64C B0(signed char b) { return b0(b); };
|
|
2009
2012
|
Q6Vect64C B1(signed char b) {
|
|
2010
2013
|
return Q6Vect64C(Q6V64_PUT_B1(data, b));
|
|
2011
2014
|
};
|
|
@@ -2348,9 +2351,8 @@ public:
|
|
|
2348
2351
|
};
|
|
2349
2352
|
|
|
2350
2353
|
// Extract byte methods
|
|
2351
|
-
signed char
|
|
2352
|
-
|
|
2353
|
-
};
|
|
2354
|
+
signed char b0(void) { return Q6V32_GET_B0(data); };
|
|
2355
|
+
signed char B0(void) { return b0(); };
|
|
2354
2356
|
signed char B1(void) {
|
|
2355
2357
|
return Q6V32_GET_B1(data);
|
|
2356
2358
|
};
|
|
@@ -2389,9 +2391,8 @@ public:
|
|
|
2389
2391
|
};
|
|
2390
2392
|
|
|
2391
2393
|
// Set byte methods
|
|
2392
|
-
Q6Vect32C
|
|
2393
|
-
|
|
2394
|
-
};
|
|
2394
|
+
Q6Vect32C b0(signed char b) { return Q6Vect32C(Q6V32_PUT_B0(data, b)); };
|
|
2395
|
+
Q6Vect32C B0(signed char b) { return b0(b); };
|
|
2395
2396
|
Q6Vect32C B1(signed char b) {
|
|
2396
2397
|
return Q6Vect32C(Q6V32_PUT_B1(data, b));
|
|
2397
2398
|
};
|
|
@@ -2622,4 +2623,6 @@ typedef struct hexagon_udma_descriptor_type1_s
|
|
|
2622
2623
|
unsigned int dstwidthoffset:16;
|
|
2623
2624
|
} hexagon_udma_descriptor_type1_t;
|
|
2624
2625
|
|
|
2626
|
+
#pragma pop_macro("B0")
|
|
2627
|
+
|
|
2625
2628
|
#endif /* !HEXAGON_TYPES_H */
|