@cpp-linter/clang-tidy-linux-arm64 19.1.0 → 20.1.0
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 +2 -2
- package/lib/clang/{19 → 20}/include/__clang_cuda_device_functions.h +14 -0
- package/lib/clang/{19 → 20}/include/__clang_cuda_math.h +5 -0
- package/lib/clang/{19 → 20}/include/__clang_hip_cmath.h +6 -1
- package/lib/clang/{19 → 20}/include/__clang_hip_math.h +5 -0
- package/lib/clang/{19 → 20}/include/adcintrin.h +5 -0
- package/lib/clang/{19 → 20}/include/adxintrin.h +5 -0
- package/lib/clang/{19 → 20}/include/altivec.h +8 -8
- package/lib/clang/20/include/amdgpuintrin.h +194 -0
- package/lib/clang/20/include/amxavx512intrin.h +382 -0
- package/lib/clang/20/include/amxbf16transposeintrin.h +94 -0
- package/lib/clang/20/include/amxcomplextransposeintrin.h +303 -0
- package/lib/clang/{19 → 20}/include/amxfp16intrin.h +35 -0
- package/lib/clang/20/include/amxfp16transposeintrin.h +94 -0
- package/lib/clang/20/include/amxfp8intrin.h +230 -0
- package/lib/clang/{19 → 20}/include/amxintrin.h +5 -35
- package/lib/clang/20/include/amxmovrsintrin.h +48 -0
- package/lib/clang/20/include/amxmovrstransposeintrin.h +200 -0
- package/lib/clang/20/include/amxtf32intrin.h +108 -0
- package/lib/clang/20/include/amxtf32transposeintrin.h +105 -0
- package/lib/clang/20/include/amxtransposeintrin.h +248 -0
- package/lib/clang/{19 → 20}/include/arm_acle.h +18 -21
- package/lib/clang/{19 → 20}/include/arm_neon.h +3587 -1696
- package/lib/clang/{19 → 20}/include/arm_sme.h +322 -94
- package/lib/clang/{19 → 20}/include/arm_sve.h +1105 -84
- package/lib/clang/{19 → 20}/include/arm_vector_types.h +87 -0
- package/lib/clang/20/include/avx10_2_512bf16intrin.h +561 -0
- package/lib/clang/20/include/avx10_2_512convertintrin.h +320 -0
- package/lib/clang/20/include/avx10_2_512minmaxintrin.h +127 -0
- package/lib/clang/20/include/avx10_2_512niintrin.h +314 -0
- package/lib/clang/20/include/avx10_2_512satcvtdsintrin.h +303 -0
- package/lib/clang/20/include/avx10_2_512satcvtintrin.h +301 -0
- package/lib/clang/20/include/avx10_2bf16intrin.h +1085 -0
- package/lib/clang/20/include/avx10_2convertintrin.h +589 -0
- package/lib/clang/20/include/avx10_2copyintrin.h +66 -0
- package/lib/clang/20/include/avx10_2minmaxintrin.h +277 -0
- package/lib/clang/20/include/avx10_2niintrin.h +2075 -0
- package/lib/clang/20/include/avx10_2satcvtdsintrin.h +496 -0
- package/lib/clang/20/include/avx10_2satcvtintrin.h +444 -0
- package/lib/clang/{19 → 20}/include/avx2intrin.h +9 -0
- package/lib/clang/{19 → 20}/include/avx512bitalgintrin.h +2 -2
- package/lib/clang/{19 → 20}/include/avx512fintrin.h +22 -14
- package/lib/clang/{19 → 20}/include/avx512vlbitalgintrin.h +4 -4
- package/lib/clang/{19 → 20}/include/avx512vpopcntdqintrin.h +12 -4
- package/lib/clang/{19 → 20}/include/avx512vpopcntdqvlintrin.h +16 -8
- package/lib/clang/{19 → 20}/include/avxintrin.h +30 -16
- package/lib/clang/{19 → 20}/include/avxvnniint16intrin.h +36 -77
- package/lib/clang/{19 → 20}/include/avxvnniint8intrin.h +36 -77
- package/lib/clang/{19 → 20}/include/bmi2intrin.h +15 -17
- package/lib/clang/{19 → 20}/include/bmiintrin.h +31 -37
- package/lib/clang/{19 → 20}/include/cmpccxaddintrin.h +1 -1
- package/lib/clang/{19 → 20}/include/cpuid.h +12 -11
- package/lib/clang/{19 → 20}/include/cuda_wrappers/cmath +4 -0
- package/lib/clang/{19 → 20}/include/cuda_wrappers/new +2 -0
- package/lib/clang/{19 → 20}/include/emmintrin.h +141 -107
- package/lib/clang/{19 → 20}/include/gfniintrin.h +32 -10
- package/lib/clang/20/include/gpuintrin.h +224 -0
- package/lib/clang/{19 → 20}/include/hexagon_types.h +8 -4
- package/lib/clang/{19 → 20}/include/hlsl/hlsl_basic_types.h +47 -1
- package/lib/clang/20/include/hlsl/hlsl_detail.h +84 -0
- package/lib/clang/{19 → 20}/include/hlsl/hlsl_intrinsics.h +1199 -82
- package/lib/clang/{19 → 20}/include/hlsl.h +11 -0
- package/lib/clang/{19 → 20}/include/hvx_hexagon_protos.h +427 -0
- package/lib/clang/{19 → 20}/include/immintrin.h +87 -3
- package/lib/clang/{19 → 20}/include/intrin.h +20 -10
- package/lib/clang/{19 → 20}/include/intrin0.h +10 -1
- package/lib/clang/{19 → 20}/include/larchintrin.h +22 -8
- package/lib/clang/{19 → 20}/include/lasxintrin.h +27 -25
- package/lib/clang/{19 → 20}/include/limits.h +7 -4
- package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/ctype.h +38 -0
- package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdlib.h +8 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
- package/lib/clang/20/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
- package/lib/clang/{19 → 20}/include/lsxintrin.h +27 -25
- package/lib/clang/{19 → 20}/include/lzcntintrin.h +10 -7
- package/lib/clang/{19 → 20}/include/mmintrin.h +209 -155
- package/lib/clang/{19 → 20}/include/module.modulemap +2 -4
- package/lib/clang/20/include/movrs_avx10_2_512intrin.h +98 -0
- package/lib/clang/20/include/movrs_avx10_2intrin.h +174 -0
- package/lib/clang/20/include/movrsintrin.h +59 -0
- package/lib/clang/20/include/nvptxintrin.h +202 -0
- package/lib/clang/{19 → 20}/include/opencl-c-base.h +4 -0
- package/lib/clang/{19 → 20}/include/openmp_wrappers/__clang_openmp_device_functions.h +4 -5
- package/lib/clang/{19 → 20}/include/openmp_wrappers/complex_cmath.h +7 -2
- package/lib/clang/{19 → 20}/include/pmmintrin.h +16 -3
- package/lib/clang/{19 → 20}/include/popcntintrin.h +7 -7
- package/lib/clang/{19 → 20}/include/ptrauth.h +6 -0
- package/lib/clang/20/include/riscv_corev_alu.h +128 -0
- package/lib/clang/{19 → 20}/include/riscv_vector.h +0 -1
- package/lib/clang/20/include/sm4evexintrin.h +32 -0
- package/lib/clang/{19 → 20}/include/smmintrin.h +6 -0
- package/lib/clang/{19 → 20}/include/stdalign.h +0 -5
- package/lib/clang/{19 → 20}/include/tbmintrin.h +25 -37
- package/lib/clang/{19 → 20}/include/tmmintrin.h +64 -38
- package/lib/clang/{19 → 20}/include/vecintrin.h +1778 -60
- package/lib/clang/{19 → 20}/include/wasm_simd128.h +167 -21
- package/lib/clang/{19 → 20}/include/xmmintrin.h +170 -177
- package/package.json +6 -6
- /package/lib/clang/{19 → 20}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_complex_builtins.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_intrinsics.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_runtime_wrapper.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_cuda_texture_intrinsics.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_hip_libdevice_declares.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_hip_runtime_wrapper.h +0 -0
- /package/lib/clang/{19 → 20}/include/__clang_hip_stdlib.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg___gnuc_va_list.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg___va_copy.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg_header_macro.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg_va_arg.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg_va_copy.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stdarg_va_list.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_header_macro.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_null.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_nullptr_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_offsetof.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_ptrdiff_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_rsize_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_size_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_unreachable.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_wchar_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__stddef_wint_t.h +0 -0
- /package/lib/clang/{19 → 20}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{19 → 20}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{19 → 20}/include/ammintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/amxcomplexintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm64intr.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_bf16.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_cde.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_cmse.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_fp16.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_mve.h +0 -0
- /package/lib/clang/{19 → 20}/include/arm_neon_sve_bridge.h +0 -0
- /package/lib/clang/{19 → 20}/include/armintr.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512bf16intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512bwintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512dqintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512fp16intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512ifmavlintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vbmi2intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlbf16intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlbwintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vldqintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlfp16intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlvbmi2intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlvnniintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avxifmaintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avxneconvertintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/avxvnniintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/builtins.h +0 -0
- /package/lib/clang/{19 → 20}/include/cet.h +0 -0
- /package/lib/clang/{19 → 20}/include/cetintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/clwbintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/clzerointrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/crc32intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.h +0 -0
- /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
- /package/lib/clang/{19 → 20}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
- /package/lib/clang/{19 → 20}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{19 → 20}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/f16cintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/float.h +0 -0
- /package/lib/clang/{19 → 20}/include/fma4intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/fmaintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{19 → 20}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{19 → 20}/include/hresetintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/htmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ia32intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/inttypes.h +0 -0
- /package/lib/clang/{19 → 20}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/iso646.h +0 -0
- /package/lib/clang/{19 → 20}/include/keylockerintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/assert.h +0 -0
- /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/inttypes.h +0 -0
- /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/stdio.h +0 -0
- /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/string.h +0 -0
- /package/lib/clang/{19 → 20}/include/llvm_libc_wrappers/time.h +0 -0
- /package/lib/clang/{19 → 20}/include/lwpintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/mm3dnow.h +0 -0
- /package/lib/clang/{19 → 20}/include/mm_malloc.h +0 -0
- /package/lib/clang/{19 → 20}/include/movdirintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/msa.h +0 -0
- /package/lib/clang/{19 → 20}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/nmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/opencl-c.h +0 -0
- /package/lib/clang/{19 → 20}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{19 → 20}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{19 → 20}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{19 → 20}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{19 → 20}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/pkuintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/emmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/mm_malloc.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/mmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/nmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/pmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/smmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/tmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ppc_wrappers/xmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/prfchiintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/prfchwintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/raointintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/riscv_bitmanip.h +0 -0
- /package/lib/clang/{19 → 20}/include/riscv_crypto.h +0 -0
- /package/lib/clang/{19 → 20}/include/riscv_ntlh.h +0 -0
- /package/lib/clang/{19 → 20}/include/rtmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/s390intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/serializeintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/sgxintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/sha512intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/shaintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/sifive_vector.h +0 -0
- /package/lib/clang/{19 → 20}/include/sm3intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/sm4intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdarg.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdatomic.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdbool.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdckdint.h +0 -0
- /package/lib/clang/{19 → 20}/include/stddef.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdint.h +0 -0
- /package/lib/clang/{19 → 20}/include/stdnoreturn.h +0 -0
- /package/lib/clang/{19 → 20}/include/tgmath.h +0 -0
- /package/lib/clang/{19 → 20}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/uintrintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/unwind.h +0 -0
- /package/lib/clang/{19 → 20}/include/usermsrintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/vadefs.h +0 -0
- /package/lib/clang/{19 → 20}/include/vaesintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/varargs.h +0 -0
- /package/lib/clang/{19 → 20}/include/velintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{19 → 20}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{19 → 20}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/wmmintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/x86gprintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/x86intrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xopintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/xtestintrin.h +0 -0
- /package/lib/clang/{19 → 20}/include/yvals_core.h +0 -0
- /package/lib/clang/{19 → 20}/include/zos_wrappers/builtins.h +0 -0
|
@@ -9,7 +9,18 @@
|
|
|
9
9
|
#ifndef _HLSL_H_
|
|
10
10
|
#define _HLSL_H_
|
|
11
11
|
|
|
12
|
+
#if defined(__clang__)
|
|
13
|
+
// Don't warn about any of the DXC compatibility warnings in the clang-only
|
|
14
|
+
// headers since these will never be used with DXC anyways.
|
|
15
|
+
#pragma clang diagnostic push
|
|
16
|
+
#pragma clang diagnostic ignored "-Whlsl-dxc-compatability"
|
|
17
|
+
#endif
|
|
18
|
+
|
|
12
19
|
#include "hlsl/hlsl_basic_types.h"
|
|
13
20
|
#include "hlsl/hlsl_intrinsics.h"
|
|
14
21
|
|
|
22
|
+
#if defined(__clang__)
|
|
23
|
+
#pragma clang diagnostic pop
|
|
24
|
+
#endif
|
|
25
|
+
|
|
15
26
|
#endif //_HLSL_H_
|
|
@@ -5178,6 +5178,433 @@
|
|
|
5178
5178
|
#define Q6_Vuh_vmpy_VuhVuh_rs16(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpyuhvs)(Vu,Vv)
|
|
5179
5179
|
#endif /* __HEXAGON_ARCH___ >= 69 */
|
|
5180
5180
|
|
|
5181
|
+
#if __HVX_ARCH__ >= 73
|
|
5182
|
+
/* ==========================================================================
|
|
5183
|
+
Assembly Syntax: Vdd32.sf=vadd(Vu32.bf,Vv32.bf)
|
|
5184
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vadd_VbfVbf(HVX_Vector Vu,
|
|
5185
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5186
|
+
========================================================================== */
|
|
5187
|
+
|
|
5188
|
+
#define Q6_Wsf_vadd_VbfVbf(Vu, Vv) \
|
|
5189
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_sf_bf)(Vu, Vv)
|
|
5190
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5191
|
+
|
|
5192
|
+
#if __HVX_ARCH__ >= 73
|
|
5193
|
+
/* ==========================================================================
|
|
5194
|
+
Assembly Syntax: Vd32.h=Vu32.hf
|
|
5195
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vh_equals_Vhf(HVX_Vector Vu)
|
|
5196
|
+
Instruction Type: CVI_VS
|
|
5197
|
+
Execution Slots: SLOT0123
|
|
5198
|
+
========================================================================== */
|
|
5199
|
+
|
|
5200
|
+
#define Q6_Vh_equals_Vhf(Vu) \
|
|
5201
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vconv_h_hf)(Vu)
|
|
5202
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5203
|
+
|
|
5204
|
+
#if __HVX_ARCH__ >= 73
|
|
5205
|
+
/* ==========================================================================
|
|
5206
|
+
Assembly Syntax: Vd32.hf=Vu32.h
|
|
5207
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vhf_equals_Vh(HVX_Vector Vu)
|
|
5208
|
+
Instruction Type: CVI_VS
|
|
5209
|
+
Execution Slots: SLOT0123
|
|
5210
|
+
========================================================================== */
|
|
5211
|
+
|
|
5212
|
+
#define Q6_Vhf_equals_Vh(Vu) \
|
|
5213
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vconv_hf_h)(Vu)
|
|
5214
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5215
|
+
|
|
5216
|
+
#if __HVX_ARCH__ >= 73
|
|
5217
|
+
/* ==========================================================================
|
|
5218
|
+
Assembly Syntax: Vd32.sf=Vu32.w
|
|
5219
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vsf_equals_Vw(HVX_Vector Vu)
|
|
5220
|
+
Instruction Type: CVI_VS
|
|
5221
|
+
Execution Slots: SLOT0123
|
|
5222
|
+
========================================================================== */
|
|
5223
|
+
|
|
5224
|
+
#define Q6_Vsf_equals_Vw(Vu) \
|
|
5225
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vconv_sf_w)(Vu)
|
|
5226
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5227
|
+
|
|
5228
|
+
#if __HVX_ARCH__ >= 73
|
|
5229
|
+
/* ==========================================================================
|
|
5230
|
+
Assembly Syntax: Vd32.w=Vu32.sf
|
|
5231
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vw_equals_Vsf(HVX_Vector Vu)
|
|
5232
|
+
Instruction Type: CVI_VS
|
|
5233
|
+
Execution Slots: SLOT0123
|
|
5234
|
+
========================================================================== */
|
|
5235
|
+
|
|
5236
|
+
#define Q6_Vw_equals_Vsf(Vu) \
|
|
5237
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vconv_w_sf)(Vu)
|
|
5238
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5239
|
+
|
|
5240
|
+
#if __HVX_ARCH__ >= 73
|
|
5241
|
+
/* ==========================================================================
|
|
5242
|
+
Assembly Syntax: Vd32.bf=vcvt(Vu32.sf,Vv32.sf)
|
|
5243
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vbf_vcvt_VsfVsf(HVX_Vector Vu,
|
|
5244
|
+
HVX_Vector Vv) Instruction Type: CVI_VX Execution Slots: SLOT23
|
|
5245
|
+
========================================================================== */
|
|
5246
|
+
|
|
5247
|
+
#define Q6_Vbf_vcvt_VsfVsf(Vu, Vv) \
|
|
5248
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_bf_sf)(Vu, Vv)
|
|
5249
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5250
|
+
|
|
5251
|
+
#if __HVX_ARCH__ >= 73
|
|
5252
|
+
/* ==========================================================================
|
|
5253
|
+
Assembly Syntax: Qd4=vcmp.gt(Vu32.bf,Vv32.bf)
|
|
5254
|
+
C Intrinsic Prototype: HVX_VectorPred Q6_Q_vcmp_gt_VbfVbf(HVX_Vector Vu,
|
|
5255
|
+
HVX_Vector Vv) Instruction Type: CVI_VA Execution Slots: SLOT0123
|
|
5256
|
+
========================================================================== */
|
|
5257
|
+
|
|
5258
|
+
#define Q6_Q_vcmp_gt_VbfVbf(Vu, Vv) \
|
|
5259
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandqrt) \
|
|
5260
|
+
((__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vgtbf)(Vu, Vv)), -1)
|
|
5261
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5262
|
+
|
|
5263
|
+
#if __HVX_ARCH__ >= 73
|
|
5264
|
+
/* ==========================================================================
|
|
5265
|
+
Assembly Syntax: Qx4&=vcmp.gt(Vu32.bf,Vv32.bf)
|
|
5266
|
+
C Intrinsic Prototype: HVX_VectorPred Q6_Q_vcmp_gtand_QVbfVbf(HVX_VectorPred
|
|
5267
|
+
Qx, HVX_Vector Vu, HVX_Vector Vv) Instruction Type: CVI_VA Execution
|
|
5268
|
+
Slots: SLOT0123
|
|
5269
|
+
========================================================================== */
|
|
5270
|
+
|
|
5271
|
+
#define Q6_Q_vcmp_gtand_QVbfVbf(Qx, Vu, Vv) \
|
|
5272
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandqrt) \
|
|
5273
|
+
((__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vgtbf_and)( \
|
|
5274
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandvrt)((Qx), -1), Vu, \
|
|
5275
|
+
Vv)), \
|
|
5276
|
+
-1)
|
|
5277
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5278
|
+
|
|
5279
|
+
#if __HVX_ARCH__ >= 73
|
|
5280
|
+
/* ==========================================================================
|
|
5281
|
+
Assembly Syntax: Qx4|=vcmp.gt(Vu32.bf,Vv32.bf)
|
|
5282
|
+
C Intrinsic Prototype: HVX_VectorPred Q6_Q_vcmp_gtor_QVbfVbf(HVX_VectorPred
|
|
5283
|
+
Qx, HVX_Vector Vu, HVX_Vector Vv) Instruction Type: CVI_VA Execution
|
|
5284
|
+
Slots: SLOT0123
|
|
5285
|
+
========================================================================== */
|
|
5286
|
+
|
|
5287
|
+
#define Q6_Q_vcmp_gtor_QVbfVbf(Qx, Vu, Vv) \
|
|
5288
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandqrt) \
|
|
5289
|
+
((__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vgtbf_or)( \
|
|
5290
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandvrt)((Qx), -1), Vu, \
|
|
5291
|
+
Vv)), \
|
|
5292
|
+
-1)
|
|
5293
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5294
|
+
|
|
5295
|
+
#if __HVX_ARCH__ >= 73
|
|
5296
|
+
/* ==========================================================================
|
|
5297
|
+
Assembly Syntax: Qx4^=vcmp.gt(Vu32.bf,Vv32.bf)
|
|
5298
|
+
C Intrinsic Prototype: HVX_VectorPred Q6_Q_vcmp_gtxacc_QVbfVbf(HVX_VectorPred
|
|
5299
|
+
Qx, HVX_Vector Vu, HVX_Vector Vv) Instruction Type: CVI_VA Execution
|
|
5300
|
+
Slots: SLOT0123
|
|
5301
|
+
========================================================================== */
|
|
5302
|
+
|
|
5303
|
+
#define Q6_Q_vcmp_gtxacc_QVbfVbf(Qx, Vu, Vv) \
|
|
5304
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandqrt) \
|
|
5305
|
+
((__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vgtbf_xor)( \
|
|
5306
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vandvrt)((Qx), -1), Vu, \
|
|
5307
|
+
Vv)), \
|
|
5308
|
+
-1)
|
|
5309
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5310
|
+
|
|
5311
|
+
#if __HVX_ARCH__ >= 73
|
|
5312
|
+
/* ==========================================================================
|
|
5313
|
+
Assembly Syntax: Vd32.bf=vmax(Vu32.bf,Vv32.bf)
|
|
5314
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vbf_vmax_VbfVbf(HVX_Vector Vu,
|
|
5315
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_LATE Execution Slots: SLOT23
|
|
5316
|
+
========================================================================== */
|
|
5317
|
+
|
|
5318
|
+
#define Q6_Vbf_vmax_VbfVbf(Vu, Vv) \
|
|
5319
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmax_bf)(Vu, Vv)
|
|
5320
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5321
|
+
|
|
5322
|
+
#if __HVX_ARCH__ >= 73
|
|
5323
|
+
/* ==========================================================================
|
|
5324
|
+
Assembly Syntax: Vd32.bf=vmin(Vu32.bf,Vv32.bf)
|
|
5325
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vbf_vmin_VbfVbf(HVX_Vector Vu,
|
|
5326
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_LATE Execution Slots: SLOT23
|
|
5327
|
+
========================================================================== */
|
|
5328
|
+
|
|
5329
|
+
#define Q6_Vbf_vmin_VbfVbf(Vu, Vv) \
|
|
5330
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmin_bf)(Vu, Vv)
|
|
5331
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5332
|
+
|
|
5333
|
+
#if __HVX_ARCH__ >= 73
|
|
5334
|
+
/* ==========================================================================
|
|
5335
|
+
Assembly Syntax: Vdd32.sf=vmpy(Vu32.bf,Vv32.bf)
|
|
5336
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vmpy_VbfVbf(HVX_Vector Vu,
|
|
5337
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5338
|
+
========================================================================== */
|
|
5339
|
+
|
|
5340
|
+
#define Q6_Wsf_vmpy_VbfVbf(Vu, Vv) \
|
|
5341
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_sf_bf)(Vu, Vv)
|
|
5342
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5343
|
+
|
|
5344
|
+
#if __HVX_ARCH__ >= 73
|
|
5345
|
+
/* ==========================================================================
|
|
5346
|
+
Assembly Syntax: Vxx32.sf+=vmpy(Vu32.bf,Vv32.bf)
|
|
5347
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vmpyacc_WsfVbfVbf(HVX_VectorPair
|
|
5348
|
+
Vxx, HVX_Vector Vu, HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution
|
|
5349
|
+
Slots: SLOT23
|
|
5350
|
+
========================================================================== */
|
|
5351
|
+
|
|
5352
|
+
#define Q6_Wsf_vmpyacc_WsfVbfVbf(Vxx, Vu, Vv) \
|
|
5353
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_sf_bf_acc)(Vxx, Vu, Vv)
|
|
5354
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5355
|
+
|
|
5356
|
+
#if __HVX_ARCH__ >= 73
|
|
5357
|
+
/* ==========================================================================
|
|
5358
|
+
Assembly Syntax: Vdd32.sf=vsub(Vu32.bf,Vv32.bf)
|
|
5359
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vsub_VbfVbf(HVX_Vector Vu,
|
|
5360
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5361
|
+
========================================================================== */
|
|
5362
|
+
|
|
5363
|
+
#define Q6_Wsf_vsub_VbfVbf(Vu, Vv) \
|
|
5364
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_sf_bf)(Vu, Vv)
|
|
5365
|
+
#endif /* __HEXAGON_ARCH___ >= 73 */
|
|
5366
|
+
|
|
5367
|
+
#if __HVX_ARCH__ >= 79
|
|
5368
|
+
/* ==========================================================================
|
|
5369
|
+
Assembly Syntax: Vd32=vgetqfext(Vu32.x,Rt32)
|
|
5370
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vgetqfext_VR(HVX_Vector Vu, Word32 Rt)
|
|
5371
|
+
Instruction Type: CVI_VX
|
|
5372
|
+
Execution Slots: SLOT23
|
|
5373
|
+
========================================================================== */
|
|
5374
|
+
|
|
5375
|
+
#define Q6_V_vgetqfext_VR(Vu, Rt) \
|
|
5376
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_get_qfext)(Vu, Rt)
|
|
5377
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5378
|
+
|
|
5379
|
+
#if __HVX_ARCH__ >= 79
|
|
5380
|
+
/* ==========================================================================
|
|
5381
|
+
Assembly Syntax: Vx32|=vgetqfext(Vu32.x,Rt32)
|
|
5382
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vgetqfextor_VVR(HVX_Vector Vx,
|
|
5383
|
+
HVX_Vector Vu, Word32 Rt) Instruction Type: CVI_VX Execution Slots:
|
|
5384
|
+
SLOT23
|
|
5385
|
+
========================================================================== */
|
|
5386
|
+
|
|
5387
|
+
#define Q6_V_vgetqfextor_VVR(Vx, Vu, Rt) \
|
|
5388
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_get_qfext_oracc)(Vx, Vu, Rt)
|
|
5389
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5390
|
+
|
|
5391
|
+
#if __HVX_ARCH__ >= 79
|
|
5392
|
+
/* ==========================================================================
|
|
5393
|
+
Assembly Syntax: Vd32.x=vsetqfext(Vu32,Rt32)
|
|
5394
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vsetqfext_VR(HVX_Vector Vu, Word32 Rt)
|
|
5395
|
+
Instruction Type: CVI_VX
|
|
5396
|
+
Execution Slots: SLOT23
|
|
5397
|
+
========================================================================== */
|
|
5398
|
+
|
|
5399
|
+
#define Q6_V_vsetqfext_VR(Vu, Rt) \
|
|
5400
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_set_qfext)(Vu, Rt)
|
|
5401
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5402
|
+
|
|
5403
|
+
#if __HVX_ARCH__ >= 79
|
|
5404
|
+
/* ==========================================================================
|
|
5405
|
+
Assembly Syntax: Vd32.f8=vabs(Vu32.f8)
|
|
5406
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vabs_V(HVX_Vector Vu)
|
|
5407
|
+
Instruction Type: CVI_VX_LATE
|
|
5408
|
+
Execution Slots: SLOT23
|
|
5409
|
+
========================================================================== */
|
|
5410
|
+
|
|
5411
|
+
#define Q6_V_vabs_V(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vabs_f8)(Vu)
|
|
5412
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5413
|
+
|
|
5414
|
+
#if __HVX_ARCH__ >= 79
|
|
5415
|
+
/* ==========================================================================
|
|
5416
|
+
Assembly Syntax: Vdd32.hf=vadd(Vu32.f8,Vv32.f8)
|
|
5417
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vadd_VV(HVX_Vector Vu,
|
|
5418
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5419
|
+
========================================================================== */
|
|
5420
|
+
|
|
5421
|
+
#define Q6_Whf_vadd_VV(Vu, Vv) \
|
|
5422
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_hf_f8)(Vu, Vv)
|
|
5423
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5424
|
+
|
|
5425
|
+
#if __HVX_ARCH__ >= 79
|
|
5426
|
+
/* ==========================================================================
|
|
5427
|
+
Assembly Syntax: Vd32.b=vcvt2(Vu32.hf,Vv32.hf)
|
|
5428
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vb_vcvt2_VhfVhf(HVX_Vector Vu,
|
|
5429
|
+
HVX_Vector Vv) Instruction Type: CVI_VX Execution Slots: SLOT23
|
|
5430
|
+
========================================================================== */
|
|
5431
|
+
|
|
5432
|
+
#define Q6_Vb_vcvt2_VhfVhf(Vu, Vv) \
|
|
5433
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt2_b_hf)(Vu, Vv)
|
|
5434
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5435
|
+
|
|
5436
|
+
#if __HVX_ARCH__ >= 79
|
|
5437
|
+
/* ==========================================================================
|
|
5438
|
+
Assembly Syntax: Vdd32.hf=vcvt2(Vu32.b)
|
|
5439
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vcvt2_Vb(HVX_Vector Vu)
|
|
5440
|
+
Instruction Type: CVI_VX_DV
|
|
5441
|
+
Execution Slots: SLOT23
|
|
5442
|
+
========================================================================== */
|
|
5443
|
+
|
|
5444
|
+
#define Q6_Whf_vcvt2_Vb(Vu) \
|
|
5445
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt2_hf_b)(Vu)
|
|
5446
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5447
|
+
|
|
5448
|
+
#if __HVX_ARCH__ >= 79
|
|
5449
|
+
/* ==========================================================================
|
|
5450
|
+
Assembly Syntax: Vdd32.hf=vcvt2(Vu32.ub)
|
|
5451
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vcvt2_Vub(HVX_Vector Vu)
|
|
5452
|
+
Instruction Type: CVI_VX_DV
|
|
5453
|
+
Execution Slots: SLOT23
|
|
5454
|
+
========================================================================== */
|
|
5455
|
+
|
|
5456
|
+
#define Q6_Whf_vcvt2_Vub(Vu) \
|
|
5457
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt2_hf_ub)(Vu)
|
|
5458
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5459
|
+
|
|
5460
|
+
#if __HVX_ARCH__ >= 79
|
|
5461
|
+
/* ==========================================================================
|
|
5462
|
+
Assembly Syntax: Vd32.ub=vcvt2(Vu32.hf,Vv32.hf)
|
|
5463
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vub_vcvt2_VhfVhf(HVX_Vector Vu,
|
|
5464
|
+
HVX_Vector Vv) Instruction Type: CVI_VX Execution Slots: SLOT23
|
|
5465
|
+
========================================================================== */
|
|
5466
|
+
|
|
5467
|
+
#define Q6_Vub_vcvt2_VhfVhf(Vu, Vv) \
|
|
5468
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt2_ub_hf)(Vu, Vv)
|
|
5469
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5470
|
+
|
|
5471
|
+
#if __HVX_ARCH__ >= 79
|
|
5472
|
+
/* ==========================================================================
|
|
5473
|
+
Assembly Syntax: Vd32.f8=vcvt(Vu32.hf,Vv32.hf)
|
|
5474
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vcvt_VhfVhf(HVX_Vector Vu, HVX_Vector
|
|
5475
|
+
Vv) Instruction Type: CVI_VX Execution Slots: SLOT23
|
|
5476
|
+
========================================================================== */
|
|
5477
|
+
|
|
5478
|
+
#define Q6_V_vcvt_VhfVhf(Vu, Vv) \
|
|
5479
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_f8_hf)(Vu, Vv)
|
|
5480
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5481
|
+
|
|
5482
|
+
#if __HVX_ARCH__ >= 79
|
|
5483
|
+
/* ==========================================================================
|
|
5484
|
+
Assembly Syntax: Vdd32.hf=vcvt(Vu32.f8)
|
|
5485
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vcvt_V(HVX_Vector Vu)
|
|
5486
|
+
Instruction Type: CVI_VX_DV
|
|
5487
|
+
Execution Slots: SLOT23
|
|
5488
|
+
========================================================================== */
|
|
5489
|
+
|
|
5490
|
+
#define Q6_Whf_vcvt_V(Vu) \
|
|
5491
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_f8)(Vu)
|
|
5492
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5493
|
+
|
|
5494
|
+
#if __HVX_ARCH__ >= 79
|
|
5495
|
+
/* ==========================================================================
|
|
5496
|
+
Assembly Syntax: Vd32.f8=vfmax(Vu32.f8,Vv32.f8)
|
|
5497
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vfmax_VV(HVX_Vector Vu, HVX_Vector Vv)
|
|
5498
|
+
Instruction Type: CVI_VX_LATE
|
|
5499
|
+
Execution Slots: SLOT23
|
|
5500
|
+
========================================================================== */
|
|
5501
|
+
|
|
5502
|
+
#define Q6_V_vfmax_VV(Vu, Vv) \
|
|
5503
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmax_f8)(Vu, Vv)
|
|
5504
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5505
|
+
|
|
5506
|
+
#if __HVX_ARCH__ >= 79
|
|
5507
|
+
/* ==========================================================================
|
|
5508
|
+
Assembly Syntax: Vd32.f8=vfmin(Vu32.f8,Vv32.f8)
|
|
5509
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vfmin_VV(HVX_Vector Vu, HVX_Vector Vv)
|
|
5510
|
+
Instruction Type: CVI_VX_LATE
|
|
5511
|
+
Execution Slots: SLOT23
|
|
5512
|
+
========================================================================== */
|
|
5513
|
+
|
|
5514
|
+
#define Q6_V_vfmin_VV(Vu, Vv) \
|
|
5515
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmin_f8)(Vu, Vv)
|
|
5516
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5517
|
+
|
|
5518
|
+
#if __HVX_ARCH__ >= 79
|
|
5519
|
+
/* ==========================================================================
|
|
5520
|
+
Assembly Syntax: Vd32.f8=vfneg(Vu32.f8)
|
|
5521
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vfneg_V(HVX_Vector Vu)
|
|
5522
|
+
Instruction Type: CVI_VX_LATE
|
|
5523
|
+
Execution Slots: SLOT23
|
|
5524
|
+
========================================================================== */
|
|
5525
|
+
|
|
5526
|
+
#define Q6_V_vfneg_V(Vu) \
|
|
5527
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfneg_f8)(Vu)
|
|
5528
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5529
|
+
|
|
5530
|
+
#if __HVX_ARCH__ >= 79
|
|
5531
|
+
/* ==========================================================================
|
|
5532
|
+
Assembly Syntax: Vd32=vmerge(Vu32.x,Vv32.w)
|
|
5533
|
+
C Intrinsic Prototype: HVX_Vector Q6_V_vmerge_VVw(HVX_Vector Vu, HVX_Vector
|
|
5534
|
+
Vv) Instruction Type: CVI_VS Execution Slots: SLOT0123
|
|
5535
|
+
========================================================================== */
|
|
5536
|
+
|
|
5537
|
+
#define Q6_V_vmerge_VVw(Vu, Vv) \
|
|
5538
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmerge_qf)(Vu, Vv)
|
|
5539
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5540
|
+
|
|
5541
|
+
#if __HVX_ARCH__ >= 79
|
|
5542
|
+
/* ==========================================================================
|
|
5543
|
+
Assembly Syntax: Vdd32.hf=vmpy(Vu32.f8,Vv32.f8)
|
|
5544
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vmpy_VV(HVX_Vector Vu,
|
|
5545
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5546
|
+
========================================================================== */
|
|
5547
|
+
|
|
5548
|
+
#define Q6_Whf_vmpy_VV(Vu, Vv) \
|
|
5549
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_hf_f8)(Vu, Vv)
|
|
5550
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5551
|
+
|
|
5552
|
+
#if __HVX_ARCH__ >= 79
|
|
5553
|
+
/* ==========================================================================
|
|
5554
|
+
Assembly Syntax: Vxx32.hf+=vmpy(Vu32.f8,Vv32.f8)
|
|
5555
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vmpyacc_WhfVV(HVX_VectorPair
|
|
5556
|
+
Vxx, HVX_Vector Vu, HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution
|
|
5557
|
+
Slots: SLOT23
|
|
5558
|
+
========================================================================== */
|
|
5559
|
+
|
|
5560
|
+
#define Q6_Whf_vmpyacc_WhfVV(Vxx, Vu, Vv) \
|
|
5561
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_hf_f8_acc)(Vxx, Vu, Vv)
|
|
5562
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5563
|
+
|
|
5564
|
+
#if __HVX_ARCH__ >= 79
|
|
5565
|
+
/* ==========================================================================
|
|
5566
|
+
Assembly Syntax: Vd32.qf16=vmpy(Vu32.hf,Rt32.hf)
|
|
5567
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vqf16_vmpy_VhfRhf(HVX_Vector Vu, Word32
|
|
5568
|
+
Rt) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5569
|
+
========================================================================== */
|
|
5570
|
+
|
|
5571
|
+
#define Q6_Vqf16_vmpy_VhfRhf(Vu, Rt) \
|
|
5572
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_rt_hf)(Vu, Rt)
|
|
5573
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5574
|
+
|
|
5575
|
+
#if __HVX_ARCH__ >= 79
|
|
5576
|
+
/* ==========================================================================
|
|
5577
|
+
Assembly Syntax: Vd32.qf16=vmpy(Vu32.qf16,Rt32.hf)
|
|
5578
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vqf16_vmpy_Vqf16Rhf(HVX_Vector Vu,
|
|
5579
|
+
Word32 Rt) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5580
|
+
========================================================================== */
|
|
5581
|
+
|
|
5582
|
+
#define Q6_Vqf16_vmpy_Vqf16Rhf(Vu, Rt) \
|
|
5583
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_rt_qf16)(Vu, Rt)
|
|
5584
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5585
|
+
|
|
5586
|
+
#if __HVX_ARCH__ >= 79
|
|
5587
|
+
/* ==========================================================================
|
|
5588
|
+
Assembly Syntax: Vd32.qf32=vmpy(Vu32.sf,Rt32.sf)
|
|
5589
|
+
C Intrinsic Prototype: HVX_Vector Q6_Vqf32_vmpy_VsfRsf(HVX_Vector Vu, Word32
|
|
5590
|
+
Rt) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5591
|
+
========================================================================== */
|
|
5592
|
+
|
|
5593
|
+
#define Q6_Vqf32_vmpy_VsfRsf(Vu, Rt) \
|
|
5594
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_rt_sf)(Vu, Rt)
|
|
5595
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5596
|
+
|
|
5597
|
+
#if __HVX_ARCH__ >= 79
|
|
5598
|
+
/* ==========================================================================
|
|
5599
|
+
Assembly Syntax: Vdd32.hf=vsub(Vu32.f8,Vv32.f8)
|
|
5600
|
+
C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vsub_VV(HVX_Vector Vu,
|
|
5601
|
+
HVX_Vector Vv) Instruction Type: CVI_VX_DV Execution Slots: SLOT23
|
|
5602
|
+
========================================================================== */
|
|
5603
|
+
|
|
5604
|
+
#define Q6_Whf_vsub_VV(Vu, Vv) \
|
|
5605
|
+
__BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_hf_f8)(Vu, Vv)
|
|
5606
|
+
#endif /* __HEXAGON_ARCH___ >= 79 */
|
|
5607
|
+
|
|
5181
5608
|
#endif /* __HVX__ */
|
|
5182
5609
|
|
|
5183
5610
|
#endif
|
|
@@ -605,6 +605,20 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
605
605
|
#include <movdirintrin.h>
|
|
606
606
|
#endif
|
|
607
607
|
|
|
608
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__MOVRS__)
|
|
609
|
+
#include <movrsintrin.h>
|
|
610
|
+
#endif
|
|
611
|
+
|
|
612
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
613
|
+
(defined(__AVX10_2__) && defined(__MOVRS__))
|
|
614
|
+
#include <movrs_avx10_2intrin.h>
|
|
615
|
+
#endif
|
|
616
|
+
|
|
617
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
618
|
+
(defined(__AVX10_2_512__) && defined(__MOVRS__))
|
|
619
|
+
#include <movrs_avx10_2_512intrin.h>
|
|
620
|
+
#endif
|
|
621
|
+
|
|
608
622
|
#if !defined(__SCE__) || __has_feature(modules) || defined(__PCONFIG__)
|
|
609
623
|
#include <pconfigintrin.h>
|
|
610
624
|
#endif
|
|
@@ -620,9 +634,6 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
620
634
|
#if !defined(__SCE__) || __has_feature(modules) || defined(__INVPCID__)
|
|
621
635
|
#include <invpcidintrin.h>
|
|
622
636
|
#endif
|
|
623
|
-
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_FP16__)
|
|
624
|
-
#include <amxfp16intrin.h>
|
|
625
|
-
#endif
|
|
626
637
|
|
|
627
638
|
#if !defined(__SCE__) || __has_feature(modules) || defined(__KL__) || \
|
|
628
639
|
defined(__WIDEKL__)
|
|
@@ -634,10 +645,59 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
634
645
|
#include <amxintrin.h>
|
|
635
646
|
#endif
|
|
636
647
|
|
|
648
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_FP16__)
|
|
649
|
+
#include <amxfp16intrin.h>
|
|
650
|
+
#endif
|
|
651
|
+
|
|
637
652
|
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_COMPLEX__)
|
|
638
653
|
#include <amxcomplexintrin.h>
|
|
639
654
|
#endif
|
|
640
655
|
|
|
656
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_FP8__)
|
|
657
|
+
#include <amxfp8intrin.h>
|
|
658
|
+
#endif
|
|
659
|
+
|
|
660
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_TRANSPOSE__)
|
|
661
|
+
#include <amxtransposeintrin.h>
|
|
662
|
+
#endif
|
|
663
|
+
|
|
664
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_MOVRS__)
|
|
665
|
+
#include <amxmovrsintrin.h>
|
|
666
|
+
#endif
|
|
667
|
+
|
|
668
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
669
|
+
(defined(__AMX_MOVRS__) && defined(__AMX_TRANSPOSE__))
|
|
670
|
+
#include <amxmovrstransposeintrin.h>
|
|
671
|
+
#endif
|
|
672
|
+
|
|
673
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_AVX512__)
|
|
674
|
+
#include <amxavx512intrin.h>
|
|
675
|
+
#endif
|
|
676
|
+
|
|
677
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AMX_TF32__)
|
|
678
|
+
#include <amxtf32intrin.h>
|
|
679
|
+
#endif
|
|
680
|
+
|
|
681
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
682
|
+
(defined(__AMX_TF32__) && defined(__AMX_TRANSPOSE__))
|
|
683
|
+
#include <amxtf32transposeintrin.h>
|
|
684
|
+
#endif
|
|
685
|
+
|
|
686
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
687
|
+
(defined(__AMX_BF16__) && defined(__AMX_TRANSPOSE__))
|
|
688
|
+
#include <amxbf16transposeintrin.h>
|
|
689
|
+
#endif
|
|
690
|
+
|
|
691
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
692
|
+
(defined(__AMX_FP16__) && defined(__AMX_TRANSPOSE__))
|
|
693
|
+
#include <amxfp16transposeintrin.h>
|
|
694
|
+
#endif
|
|
695
|
+
|
|
696
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
697
|
+
(defined(__AMX_COMPLEX__) && defined(__AMX_TRANSPOSE__))
|
|
698
|
+
#include <amxcomplextransposeintrin.h>
|
|
699
|
+
#endif
|
|
700
|
+
|
|
641
701
|
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
642
702
|
defined(__AVX512VP2INTERSECT__)
|
|
643
703
|
#include <avx512vp2intersectintrin.h>
|
|
@@ -648,6 +708,30 @@ _storebe_i64(void * __P, long long __D) {
|
|
|
648
708
|
#include <avx512vlvp2intersectintrin.h>
|
|
649
709
|
#endif
|
|
650
710
|
|
|
711
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AVX10_2__)
|
|
712
|
+
#include <avx10_2bf16intrin.h>
|
|
713
|
+
#include <avx10_2convertintrin.h>
|
|
714
|
+
#include <avx10_2copyintrin.h>
|
|
715
|
+
#include <avx10_2minmaxintrin.h>
|
|
716
|
+
#include <avx10_2niintrin.h>
|
|
717
|
+
#include <avx10_2satcvtdsintrin.h>
|
|
718
|
+
#include <avx10_2satcvtintrin.h>
|
|
719
|
+
#endif
|
|
720
|
+
|
|
721
|
+
#if !defined(__SCE__) || __has_feature(modules) || defined(__AVX10_2_512__)
|
|
722
|
+
#include <avx10_2_512bf16intrin.h>
|
|
723
|
+
#include <avx10_2_512convertintrin.h>
|
|
724
|
+
#include <avx10_2_512minmaxintrin.h>
|
|
725
|
+
#include <avx10_2_512niintrin.h>
|
|
726
|
+
#include <avx10_2_512satcvtdsintrin.h>
|
|
727
|
+
#include <avx10_2_512satcvtintrin.h>
|
|
728
|
+
#endif
|
|
729
|
+
|
|
730
|
+
#if !defined(__SCE__) || __has_feature(modules) || \
|
|
731
|
+
(defined(__AVX10_2_512__) && defined(__SM4__))
|
|
732
|
+
#include <sm4evexintrin.h>
|
|
733
|
+
#endif
|
|
734
|
+
|
|
651
735
|
#if !defined(__SCE__) || __has_feature(modules) || defined(__ENQCMD__)
|
|
652
736
|
#include <enqcmdintrin.h>
|
|
653
737
|
#endif
|
|
@@ -94,8 +94,8 @@ void __outwordstring(unsigned short, unsigned short *, unsigned long);
|
|
|
94
94
|
unsigned long __readcr0(void);
|
|
95
95
|
unsigned long __readcr2(void);
|
|
96
96
|
unsigned __LPTRINT_TYPE__ __readcr3(void);
|
|
97
|
-
unsigned
|
|
98
|
-
unsigned
|
|
97
|
+
unsigned __LPTRINT_TYPE__ __readcr4(void);
|
|
98
|
+
unsigned __int64 __readcr8(void);
|
|
99
99
|
unsigned int __readdr(unsigned int);
|
|
100
100
|
#ifdef __i386__
|
|
101
101
|
unsigned char __readfsbyte(unsigned long);
|
|
@@ -124,8 +124,8 @@ void __vmx_vmptrst(unsigned __int64 *);
|
|
|
124
124
|
void __wbinvd(void);
|
|
125
125
|
void __writecr0(unsigned int);
|
|
126
126
|
void __writecr3(unsigned __INTPTR_TYPE__);
|
|
127
|
-
void __writecr4(unsigned
|
|
128
|
-
void __writecr8(unsigned
|
|
127
|
+
void __writecr4(unsigned __INTPTR_TYPE__);
|
|
128
|
+
void __writecr8(unsigned __int64);
|
|
129
129
|
void __writedr(unsigned int, unsigned int);
|
|
130
130
|
void __writefsbyte(unsigned long, unsigned char);
|
|
131
131
|
void __writefsdword(unsigned long, unsigned long);
|
|
@@ -330,33 +330,33 @@ static __inline__ void __DEFAULT_FN_ATTRS __halt(void) {
|
|
|
330
330
|
__asm__ volatile("hlt");
|
|
331
331
|
}
|
|
332
332
|
|
|
333
|
-
static
|
|
333
|
+
static __inline__ unsigned char __inbyte(unsigned short port) {
|
|
334
334
|
unsigned char ret;
|
|
335
335
|
__asm__ __volatile__("inb %w1, %b0" : "=a"(ret) : "Nd"(port));
|
|
336
336
|
return ret;
|
|
337
337
|
}
|
|
338
338
|
|
|
339
|
-
static
|
|
339
|
+
static __inline__ unsigned short __inword(unsigned short port) {
|
|
340
340
|
unsigned short ret;
|
|
341
341
|
__asm__ __volatile__("inw %w1, %w0" : "=a"(ret) : "Nd"(port));
|
|
342
342
|
return ret;
|
|
343
343
|
}
|
|
344
344
|
|
|
345
|
-
static
|
|
345
|
+
static __inline__ unsigned long __indword(unsigned short port) {
|
|
346
346
|
unsigned long ret;
|
|
347
347
|
__asm__ __volatile__("inl %w1, %k0" : "=a"(ret) : "Nd"(port));
|
|
348
348
|
return ret;
|
|
349
349
|
}
|
|
350
350
|
|
|
351
|
-
static
|
|
351
|
+
static __inline__ void __outbyte(unsigned short port, unsigned char data) {
|
|
352
352
|
__asm__ __volatile__("outb %b0, %w1" : : "a"(data), "Nd"(port));
|
|
353
353
|
}
|
|
354
354
|
|
|
355
|
-
static
|
|
355
|
+
static __inline__ void __outword(unsigned short port, unsigned short data) {
|
|
356
356
|
__asm__ __volatile__("outw %w0, %w1" : : "a"(data), "Nd"(port));
|
|
357
357
|
}
|
|
358
358
|
|
|
359
|
-
static
|
|
359
|
+
static __inline__ void __outdword(unsigned short port, unsigned long data) {
|
|
360
360
|
__asm__ __volatile__("outl %k0, %w1" : : "a"(data), "Nd"(port));
|
|
361
361
|
}
|
|
362
362
|
#endif
|
|
@@ -396,6 +396,16 @@ unsigned short __readx18word(unsigned long offset);
|
|
|
396
396
|
unsigned long __readx18dword(unsigned long offset);
|
|
397
397
|
unsigned __int64 __readx18qword(unsigned long offset);
|
|
398
398
|
|
|
399
|
+
void __addx18byte(unsigned long offset, unsigned char data);
|
|
400
|
+
void __addx18word(unsigned long offset, unsigned short data);
|
|
401
|
+
void __addx18dword(unsigned long offset, unsigned long data);
|
|
402
|
+
void __addx18qword(unsigned long offset, unsigned __int64 data);
|
|
403
|
+
|
|
404
|
+
void __incx18byte(unsigned long offset);
|
|
405
|
+
void __incx18word(unsigned long offset);
|
|
406
|
+
void __incx18dword(unsigned long offset);
|
|
407
|
+
void __incx18qword(unsigned long offset);
|
|
408
|
+
|
|
399
409
|
double _CopyDoubleFromInt64(__int64);
|
|
400
410
|
float _CopyFloatFromInt32(__int32);
|
|
401
411
|
__int32 _CopyInt32FromFloat(float);
|
|
@@ -44,7 +44,7 @@ unsigned char _InterlockedCompareExchange128_rel(__int64 volatile *_Destination,
|
|
|
44
44
|
__int64 *_ComparandResult);
|
|
45
45
|
#endif
|
|
46
46
|
|
|
47
|
-
#
|
|
47
|
+
#if defined(__x86_64__) && !defined(__arm64ec__)
|
|
48
48
|
unsigned __int64 _umul128(unsigned __int64, unsigned __int64,
|
|
49
49
|
unsigned __int64 *);
|
|
50
50
|
unsigned __int64 __shiftleft128(unsigned __int64 _LowPart,
|
|
@@ -207,6 +207,9 @@ long _InterlockedExchange_rel(long volatile *_Target, long _Value);
|
|
|
207
207
|
__int64 _InterlockedExchange64_acq(__int64 volatile *_Target, __int64 _Value);
|
|
208
208
|
__int64 _InterlockedExchange64_nf(__int64 volatile *_Target, __int64 _Value);
|
|
209
209
|
__int64 _InterlockedExchange64_rel(__int64 volatile *_Target, __int64 _Value);
|
|
210
|
+
void *_InterlockedExchangePointer_acq(void *volatile *_Target, void *_Value);
|
|
211
|
+
void *_InterlockedExchangePointer_nf(void *volatile *_Target, void *_Value);
|
|
212
|
+
void *_InterlockedExchangePointer_rel(void *volatile *_Target, void *_Value);
|
|
210
213
|
|
|
211
214
|
/*----------------------------------------------------------------------------*\
|
|
212
215
|
|* Interlocked Compare Exchange
|
|
@@ -237,6 +240,12 @@ __int64 _InterlockedCompareExchange64_nf(__int64 volatile *_Destination,
|
|
|
237
240
|
__int64 _InterlockedCompareExchange64_rel(__int64 volatile *_Destination,
|
|
238
241
|
__int64 _Exchange,
|
|
239
242
|
__int64 _Comparand);
|
|
243
|
+
void *_InterlockedCompareExchangePointer_acq(void *volatile *_Destination,
|
|
244
|
+
void *_Exchange, void *_Comparand);
|
|
245
|
+
void *_InterlockedCompareExchangePointer_nf(void *volatile *_Destination,
|
|
246
|
+
void *_Exchange, void *_Comparand);
|
|
247
|
+
void *_InterlockedCompareExchangePointer_rel(void *volatile *_Destination,
|
|
248
|
+
void *_Exchange, void *_Comparand);
|
|
240
249
|
#endif
|
|
241
250
|
|
|
242
251
|
#ifdef __cplusplus
|