@cpp-linter/clang-tidy-darwin-arm64 19.1.7 → 20.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/clang-tidy +2 -2
- package/lib/clang/{19 → 20}/include/__clang_cuda_device_functions.h +14 -0
- package/lib/clang/{19 → 20}/include/__clang_cuda_intrinsics.h +8 -8
- 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 +322 -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 +307 -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 +577 -0
- package/lib/clang/20/include/avx10_2copyintrin.h +66 -0
- package/lib/clang/20/include/avx10_2minmaxintrin.h +232 -0
- package/lib/clang/20/include/avx10_2niintrin.h +409 -0
- package/lib/clang/20/include/avx10_2satcvtdsintrin.h +390 -0
- package/lib/clang/20/include/avx10_2satcvtintrin.h +332 -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 +9 -0
- 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 +203 -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 +1779 -74
- 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_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
|
@@ -0,0 +1,577 @@
|
|
|
1
|
+
/*===--------------- avx10_2convertintrin.h - AVX10_2CONVERT ---------------===
|
|
2
|
+
*
|
|
3
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
*
|
|
7
|
+
*===-----------------------------------------------------------------------===
|
|
8
|
+
*/
|
|
9
|
+
#ifndef __IMMINTRIN_H
|
|
10
|
+
#error \
|
|
11
|
+
"Never use <avx10_2convertintrin.h> directly; include <immintrin.h> instead."
|
|
12
|
+
#endif // __IMMINTRIN_H
|
|
13
|
+
|
|
14
|
+
#ifdef __SSE2__
|
|
15
|
+
|
|
16
|
+
#ifndef __AVX10_2CONVERTINTRIN_H
|
|
17
|
+
#define __AVX10_2CONVERTINTRIN_H
|
|
18
|
+
|
|
19
|
+
/* Define the default attributes for the functions in this file. */
|
|
20
|
+
#define __DEFAULT_FN_ATTRS128 \
|
|
21
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx10.2-256"), \
|
|
22
|
+
__min_vector_width__(128)))
|
|
23
|
+
#define __DEFAULT_FN_ATTRS256 \
|
|
24
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx10.2-256"), \
|
|
25
|
+
__min_vector_width__(256)))
|
|
26
|
+
|
|
27
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtx2ps_ph(__m128 __A,
|
|
28
|
+
__m128 __B) {
|
|
29
|
+
return (__m128h)__builtin_ia32_vcvt2ps2phx128_mask(
|
|
30
|
+
(__v4sf)__A, (__v4sf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)(-1));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
34
|
+
_mm_mask_cvtx2ps_ph(__m128h __W, __mmask8 __U, __m128 __A, __m128 __B) {
|
|
35
|
+
return (__m128h)__builtin_ia32_vcvt2ps2phx128_mask(
|
|
36
|
+
(__v4sf)__A, (__v4sf)__B, (__v8hf)__W, (__mmask8)__U);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
40
|
+
_mm_maskz_cvtx2ps_ph(__mmask8 __U, __m128 __A, __m128 __B) {
|
|
41
|
+
return (__m128h)__builtin_ia32_vcvt2ps2phx128_mask(
|
|
42
|
+
(__v4sf)__A, (__v4sf)__B, (__v8hf)_mm_setzero_ph(), (__mmask8)__U);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_cvtx2ps_ph(__m256 __A,
|
|
46
|
+
__m256 __B) {
|
|
47
|
+
return (__m256h)__builtin_ia32_vcvt2ps2phx256_mask(
|
|
48
|
+
(__v8sf)__A, (__v8sf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)(-1),
|
|
49
|
+
_MM_FROUND_CUR_DIRECTION);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
53
|
+
_mm256_mask_cvtx2ps_ph(__m256h __W, __mmask16 __U, __m256 __A, __m256 __B) {
|
|
54
|
+
return (__m256h)__builtin_ia32_vcvt2ps2phx256_mask(
|
|
55
|
+
(__v8sf)__A, (__v8sf)__B, (__v16hf)__W, (__mmask16)__U,
|
|
56
|
+
_MM_FROUND_CUR_DIRECTION);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
60
|
+
_mm256_maskz_cvtx2ps_ph(__mmask16 __U, __m256 __A, __m256 __B) {
|
|
61
|
+
return (__m256h)__builtin_ia32_vcvt2ps2phx256_mask(
|
|
62
|
+
(__v8sf)__A, (__v8sf)__B, (__v16hf)_mm256_setzero_ph(), (__mmask16)__U,
|
|
63
|
+
_MM_FROUND_CUR_DIRECTION);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
67
|
+
_mm_cvtbiasph_bf8(__m128i __A, __m128h __B) {
|
|
68
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_128_mask(
|
|
69
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)_mm_undefined_si128(), (__mmask8)-1);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
73
|
+
_mm_mask_cvtbiasph_bf8(__m128i __W, __mmask8 __U, __m128i __A, __m128h __B) {
|
|
74
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_128_mask(
|
|
75
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
79
|
+
_mm_maskz_cvtbiasph_bf8(__mmask8 __U, __m128i __A, __m128h __B) {
|
|
80
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_128_mask(
|
|
81
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
82
|
+
(__mmask8)__U);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
86
|
+
_mm256_cvtbiasph_bf8(__m256i __A, __m256h __B) {
|
|
87
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_256_mask(
|
|
88
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_undefined_si128(),
|
|
89
|
+
(__mmask16)-1);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtbiasph_bf8(
|
|
93
|
+
__m128i __W, __mmask16 __U, __m256i __A, __m256h __B) {
|
|
94
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_256_mask(
|
|
95
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
99
|
+
_mm256_maskz_cvtbiasph_bf8(__mmask16 __U, __m256i __A, __m256h __B) {
|
|
100
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8_256_mask(
|
|
101
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
102
|
+
(__mmask16)__U);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
106
|
+
_mm_cvts_biasph_bf8(__m128i __A, __m128h __B) {
|
|
107
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_128_mask(
|
|
108
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)_mm_undefined_si128(), (__mmask8)-1);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
112
|
+
_mm_mask_cvts_biasph_bf8(__m128i __W, __mmask8 __U, __m128i __A, __m128h __B) {
|
|
113
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_128_mask(
|
|
114
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
118
|
+
_mm_maskz_cvts_biasph_bf8(__mmask8 __U, __m128i __A, __m128h __B) {
|
|
119
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_128_mask(
|
|
120
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
121
|
+
(__mmask8)__U);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
125
|
+
_mm256_cvts_biasph_bf8(__m256i __A, __m256h __B) {
|
|
126
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_256_mask(
|
|
127
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_undefined_si128(),
|
|
128
|
+
(__mmask16)-1);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvts_biasph_bf8(
|
|
132
|
+
__m128i __W, __mmask16 __U, __m256i __A, __m256h __B) {
|
|
133
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_256_mask(
|
|
134
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
138
|
+
_mm256_maskz_cvts_biasph_bf8(__mmask16 __U, __m256i __A, __m256h __B) {
|
|
139
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2bf8s_256_mask(
|
|
140
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
141
|
+
(__mmask16)__U);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtbiasph_hf8(__m128i __A,
|
|
145
|
+
__m128h __B) {
|
|
146
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_128_mask(
|
|
147
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)_mm_undefined_si128(), (__mmask8)-1);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
151
|
+
_mm_mask_cvtbiasph_hf8(__m128i __W, __mmask8 __U, __m128i __A, __m128h __B) {
|
|
152
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_128_mask(
|
|
153
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
157
|
+
_mm_maskz_cvtbiasph_hf8(__mmask8 __U, __m128i __A, __m128h __B) {
|
|
158
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_128_mask(
|
|
159
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
160
|
+
(__mmask8)__U);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
164
|
+
_mm256_cvtbiasph_hf8(__m256i __A, __m256h __B) {
|
|
165
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_256_mask(
|
|
166
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_undefined_si128(),
|
|
167
|
+
(__mmask16)-1);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtbiasph_hf8(
|
|
171
|
+
__m128i __W, __mmask16 __U, __m256i __A, __m256h __B) {
|
|
172
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_256_mask(
|
|
173
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
177
|
+
_mm256_maskz_cvtbiasph_hf8(__mmask16 __U, __m256i __A, __m256h __B) {
|
|
178
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8_256_mask(
|
|
179
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
180
|
+
(__mmask16)__U);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
184
|
+
_mm_cvts_biasph_hf8(__m128i __A, __m128h __B) {
|
|
185
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_128_mask(
|
|
186
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)_mm_undefined_si128(), (__mmask8)-1);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
190
|
+
_mm_mask_cvts_biasph_hf8(__m128i __W, __mmask8 __U, __m128i __A, __m128h __B) {
|
|
191
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_128_mask(
|
|
192
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
196
|
+
_mm_maskz_cvts_biasph_hf8(__mmask8 __U, __m128i __A, __m128h __B) {
|
|
197
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_128_mask(
|
|
198
|
+
(__v16qi)__A, (__v8hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
199
|
+
(__mmask8)__U);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
203
|
+
_mm256_cvts_biasph_hf8(__m256i __A, __m256h __B) {
|
|
204
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_256_mask(
|
|
205
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_undefined_si128(),
|
|
206
|
+
(__mmask16)-1);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvts_biasph_hf8(
|
|
210
|
+
__m128i __W, __mmask16 __U, __m256i __A, __m256h __B) {
|
|
211
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_256_mask(
|
|
212
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
216
|
+
_mm256_maskz_cvts_biasph_hf8(__mmask16 __U, __m256i __A, __m256h __B) {
|
|
217
|
+
return (__m128i)__builtin_ia32_vcvtbiasph2hf8s_256_mask(
|
|
218
|
+
(__v32qi)__A, (__v16hf)__B, (__v16qi)(__m128i)_mm_setzero_si128(),
|
|
219
|
+
(__mmask16)__U);
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvt2ph_bf8(__m128h __A,
|
|
223
|
+
__m128h __B) {
|
|
224
|
+
return (__m128i)__builtin_ia32_vcvt2ph2bf8_128((__v8hf)(__A), (__v8hf)(__B));
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
228
|
+
_mm_mask_cvt2ph_bf8(__m128i __W, __mmask16 __U, __m128h __A, __m128h __B) {
|
|
229
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
230
|
+
(__mmask16)__U, (__v16qi)_mm_cvt2ph_bf8(__A, __B), (__v16qi)__W);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
234
|
+
_mm_maskz_cvt2ph_bf8(__mmask16 __U, __m128h __A, __m128h __B) {
|
|
235
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
236
|
+
(__mmask16)__U, (__v16qi)_mm_cvt2ph_bf8(__A, __B),
|
|
237
|
+
(__v16qi)(__m128i)_mm_setzero_si128());
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_cvt2ph_bf8(__m256h __A,
|
|
241
|
+
__m256h __B) {
|
|
242
|
+
return (__m256i)__builtin_ia32_vcvt2ph2bf8_256((__v16hf)(__A),
|
|
243
|
+
(__v16hf)(__B));
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
247
|
+
_mm256_mask_cvt2ph_bf8(__m256i __W, __mmask32 __U, __m256h __A, __m256h __B) {
|
|
248
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
249
|
+
(__mmask32)__U, (__v32qi)_mm256_cvt2ph_bf8(__A, __B), (__v32qi)__W);
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
253
|
+
_mm256_maskz_cvt2ph_bf8(__mmask32 __U, __m256h __A, __m256h __B) {
|
|
254
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
255
|
+
(__mmask32)__U, (__v32qi)_mm256_cvt2ph_bf8(__A, __B),
|
|
256
|
+
(__v32qi)(__m256i)_mm256_setzero_si256());
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvts_2ph_bf8(__m128h __A,
|
|
260
|
+
__m128h __B) {
|
|
261
|
+
return (__m128i)__builtin_ia32_vcvt2ph2bf8s_128((__v8hf)(__A), (__v8hf)(__B));
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
265
|
+
_mm_mask_cvts_2ph_bf8(__m128i __W, __mmask16 __U, __m128h __A, __m128h __B) {
|
|
266
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
267
|
+
(__mmask16)__U, (__v16qi)_mm_cvts_2ph_bf8(__A, __B), (__v16qi)__W);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
271
|
+
_mm_maskz_cvts_2ph_bf8(__mmask16 __U, __m128h __A, __m128h __B) {
|
|
272
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
273
|
+
(__mmask16)__U, (__v16qi)_mm_cvts_2ph_bf8(__A, __B),
|
|
274
|
+
(__v16qi)(__m128i)_mm_setzero_si128());
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
278
|
+
_mm256_cvts_2ph_bf8(__m256h __A, __m256h __B) {
|
|
279
|
+
return (__m256i)__builtin_ia32_vcvt2ph2bf8s_256((__v16hf)(__A),
|
|
280
|
+
(__v16hf)(__B));
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
284
|
+
_mm256_mask_cvts_2ph_bf8(__m256i __W, __mmask32 __U, __m256h __A, __m256h __B) {
|
|
285
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
286
|
+
(__mmask32)__U, (__v32qi)_mm256_cvts_2ph_bf8(__A, __B), (__v32qi)__W);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
290
|
+
_mm256_maskz_cvts_2ph_bf8(__mmask32 __U, __m256h __A, __m256h __B) {
|
|
291
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
292
|
+
(__mmask32)__U, (__v32qi)_mm256_cvts_2ph_bf8(__A, __B),
|
|
293
|
+
(__v32qi)(__m256i)_mm256_setzero_si256());
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvt2ph_hf8(__m128h __A,
|
|
297
|
+
__m128h __B) {
|
|
298
|
+
return (__m128i)__builtin_ia32_vcvt2ph2hf8_128((__v8hf)(__A), (__v8hf)(__B));
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
302
|
+
_mm_mask_cvt2ph_hf8(__m128i __W, __mmask16 __U, __m128h __A, __m128h __B) {
|
|
303
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
304
|
+
(__mmask16)__U, (__v16qi)_mm_cvt2ph_hf8(__A, __B), (__v16qi)__W);
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
308
|
+
_mm_maskz_cvt2ph_hf8(__mmask16 __U, __m128h __A, __m128h __B) {
|
|
309
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
310
|
+
(__mmask16)__U, (__v16qi)_mm_cvt2ph_hf8(__A, __B),
|
|
311
|
+
(__v16qi)(__m128i)_mm_setzero_si128());
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_cvt2ph_hf8(__m256h __A,
|
|
315
|
+
__m256h __B) {
|
|
316
|
+
return (__m256i)__builtin_ia32_vcvt2ph2hf8_256((__v16hf)(__A),
|
|
317
|
+
(__v16hf)(__B));
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
321
|
+
_mm256_mask_cvt2ph_hf8(__m256i __W, __mmask32 __U, __m256h __A, __m256h __B) {
|
|
322
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
323
|
+
(__mmask32)__U, (__v32qi)_mm256_cvt2ph_hf8(__A, __B), (__v32qi)__W);
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
327
|
+
_mm256_maskz_cvt2ph_hf8(__mmask32 __U, __m256h __A, __m256h __B) {
|
|
328
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
329
|
+
(__mmask32)__U, (__v32qi)_mm256_cvt2ph_hf8(__A, __B),
|
|
330
|
+
(__v32qi)(__m256i)_mm256_setzero_si256());
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvts_2ph_hf8(__m128h __A,
|
|
334
|
+
__m128h __B) {
|
|
335
|
+
return (__m128i)__builtin_ia32_vcvt2ph2hf8s_128((__v8hf)(__A), (__v8hf)(__B));
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
339
|
+
_mm_mask_cvts_2ph_hf8(__m128i __W, __mmask16 __U, __m128h __A, __m128h __B) {
|
|
340
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
341
|
+
(__mmask16)__U, (__v16qi)_mm_cvts_2ph_hf8(__A, __B), (__v16qi)__W);
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
345
|
+
_mm_maskz_cvts_2ph_hf8(__mmask16 __U, __m128h __A, __m128h __B) {
|
|
346
|
+
return (__m128i)__builtin_ia32_selectb_128(
|
|
347
|
+
(__mmask16)__U, (__v16qi)_mm_cvts_2ph_hf8(__A, __B),
|
|
348
|
+
(__v16qi)(__m128i)_mm_setzero_si128());
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
352
|
+
_mm256_cvts_2ph_hf8(__m256h __A, __m256h __B) {
|
|
353
|
+
return (__m256i)__builtin_ia32_vcvt2ph2hf8s_256((__v16hf)(__A),
|
|
354
|
+
(__v16hf)(__B));
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
358
|
+
_mm256_mask_cvts_2ph_hf8(__m256i __W, __mmask32 __U, __m256h __A, __m256h __B) {
|
|
359
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
360
|
+
(__mmask32)__U, (__v32qi)_mm256_cvts_2ph_hf8(__A, __B), (__v32qi)__W);
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
364
|
+
_mm256_maskz_cvts_2ph_hf8(__mmask32 __U, __m256h __A, __m256h __B) {
|
|
365
|
+
return (__m256i)__builtin_ia32_selectb_256(
|
|
366
|
+
(__mmask32)__U, (__v32qi)_mm256_cvts_2ph_hf8(__A, __B),
|
|
367
|
+
(__v32qi)(__m256i)_mm256_setzero_si256());
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvthf8_ph(__m128i __A) {
|
|
371
|
+
return (__m128h)__builtin_ia32_vcvthf8_2ph128_mask(
|
|
372
|
+
(__v16qi)__A, (__v8hf)(__m128h)_mm_undefined_ph(), (__mmask8)-1);
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
376
|
+
_mm_mask_cvthf8_ph(__m128h __W, __mmask8 __U, __m128i __A) {
|
|
377
|
+
return (__m128h)__builtin_ia32_vcvthf8_2ph128_mask(
|
|
378
|
+
(__v16qi)__A, (__v8hf)(__m128h)__W, (__mmask8)__U);
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
382
|
+
_mm_maskz_cvthf8_ph(__mmask8 __U, __m128i __A) {
|
|
383
|
+
return (__m128h)__builtin_ia32_vcvthf8_2ph128_mask(
|
|
384
|
+
(__v16qi)__A, (__v8hf)(__m128h)_mm_setzero_ph(), (__mmask8)__U);
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_cvthf8_ph(__m128i __A) {
|
|
388
|
+
return (__m256h)__builtin_ia32_vcvthf8_2ph256_mask(
|
|
389
|
+
(__v16qi)__A, (__v16hf)(__m256h)_mm256_undefined_ph(), (__mmask16)-1);
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
393
|
+
_mm256_mask_cvthf8_ph(__m256h __W, __mmask16 __U, __m128i __A) {
|
|
394
|
+
return (__m256h)__builtin_ia32_vcvthf8_2ph256_mask(
|
|
395
|
+
(__v16qi)__A, (__v16hf)(__m256h)__W, (__mmask16)__U);
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
399
|
+
_mm256_maskz_cvthf8_ph(__mmask16 __U, __m128i __A) {
|
|
400
|
+
return (__m256h)__builtin_ia32_vcvthf8_2ph256_mask(
|
|
401
|
+
(__v16qi)__A, (__v16hf)(__m256h)_mm256_setzero_ph(), (__mmask16)__U);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_bf8(__m128h __A) {
|
|
405
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_128_mask(
|
|
406
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask8)-1);
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
410
|
+
_mm_mask_cvtph_bf8(__m128i __W, __mmask8 __U, __m128h __A) {
|
|
411
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_128_mask(
|
|
412
|
+
(__v8hf)__A, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
416
|
+
_mm_maskz_cvtph_bf8(__mmask8 __U, __m128h __A) {
|
|
417
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_128_mask(
|
|
418
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask8)__U);
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_cvtph_bf8(__m256h __A) {
|
|
422
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_256_mask(
|
|
423
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask16)-1);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
427
|
+
_mm256_mask_cvtph_bf8(__m128i __W, __mmask16 __U, __m256h __A) {
|
|
428
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_256_mask(
|
|
429
|
+
(__v16hf)__A, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
433
|
+
_mm256_maskz_cvtph_bf8(__mmask16 __U, __m256h __A) {
|
|
434
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8_256_mask(
|
|
435
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask16)__U);
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvts_ph_bf8(__m128h __A) {
|
|
439
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_128_mask(
|
|
440
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask8)-1);
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
444
|
+
_mm_mask_cvts_ph_bf8(__m128i __W, __mmask8 __U, __m128h __A) {
|
|
445
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_128_mask(
|
|
446
|
+
(__v8hf)__A, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
450
|
+
_mm_maskz_cvts_ph_bf8(__mmask8 __U, __m128h __A) {
|
|
451
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_128_mask(
|
|
452
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask8)__U);
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
456
|
+
_mm256_cvts_ph_bf8(__m256h __A) {
|
|
457
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_256_mask(
|
|
458
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask16)-1);
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
462
|
+
_mm256_mask_cvts_ph_bf8(__m128i __W, __mmask16 __U, __m256h __A) {
|
|
463
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_256_mask(
|
|
464
|
+
(__v16hf)__A, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
468
|
+
_mm256_maskz_cvts_ph_bf8(__mmask16 __U, __m256h __A) {
|
|
469
|
+
return (__m128i)__builtin_ia32_vcvtph2bf8s_256_mask(
|
|
470
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask16)__U);
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtph_hf8(__m128h __A) {
|
|
474
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_128_mask(
|
|
475
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask8)-1);
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
479
|
+
_mm_mask_cvtph_hf8(__m128i __W, __mmask8 __U, __m128h __A) {
|
|
480
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_128_mask(
|
|
481
|
+
(__v8hf)__A, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
485
|
+
_mm_maskz_cvtph_hf8(__mmask8 __U, __m128h __A) {
|
|
486
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_128_mask(
|
|
487
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask8)__U);
|
|
488
|
+
}
|
|
489
|
+
|
|
490
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_cvtph_hf8(__m256h __A) {
|
|
491
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_256_mask(
|
|
492
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask16)-1);
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
496
|
+
_mm256_mask_cvtph_hf8(__m128i __W, __mmask16 __U, __m256h __A) {
|
|
497
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_256_mask(
|
|
498
|
+
(__v16hf)__A, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
502
|
+
_mm256_maskz_cvtph_hf8(__mmask16 __U, __m256h __A) {
|
|
503
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8_256_mask(
|
|
504
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask16)__U);
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvts_ph_hf8(__m128h __A) {
|
|
508
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_128_mask(
|
|
509
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask8)-1);
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
513
|
+
_mm_mask_cvts_ph_hf8(__m128i __W, __mmask8 __U, __m128h __A) {
|
|
514
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_128_mask(
|
|
515
|
+
(__v8hf)__A, (__v16qi)(__m128i)__W, (__mmask8)__U);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
519
|
+
_mm_maskz_cvts_ph_hf8(__mmask8 __U, __m128h __A) {
|
|
520
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_128_mask(
|
|
521
|
+
(__v8hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask8)__U);
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
525
|
+
_mm256_cvts_ph_hf8(__m256h __A) {
|
|
526
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_256_mask(
|
|
527
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_undefined_si128(), (__mmask16)-1);
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
531
|
+
_mm256_mask_cvts_ph_hf8(__m128i __W, __mmask16 __U, __m256h __A) {
|
|
532
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_256_mask(
|
|
533
|
+
(__v16hf)__A, (__v16qi)(__m128i)__W, (__mmask16)__U);
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS256
|
|
537
|
+
_mm256_maskz_cvts_ph_hf8(__mmask16 __U, __m256h __A) {
|
|
538
|
+
return (__m128i)__builtin_ia32_vcvtph2hf8s_256_mask(
|
|
539
|
+
(__v16hf)__A, (__v16qi)(__m128i)_mm_setzero_si128(), (__mmask16)__U);
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128 _mm_cvtbf8_ph(__m128i __A) {
|
|
543
|
+
return _mm_castsi128_ph(_mm_slli_epi16(_mm_cvtepi8_epi16(__A), 8));
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
547
|
+
_mm_mask_cvtbf8_ph(__m128h __S, __mmask8 __U, __m128i __A) {
|
|
548
|
+
return _mm_castsi128_ph(
|
|
549
|
+
_mm_mask_slli_epi16((__m128i)__S, __U, _mm_cvtepi8_epi16(__A), 8));
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
static __inline__ __m128h __DEFAULT_FN_ATTRS128
|
|
553
|
+
_mm_maskz_cvtbf8_ph(__mmask8 __U, __m128i __A) {
|
|
554
|
+
return _mm_castsi128_ph(_mm_slli_epi16(_mm_maskz_cvtepi8_epi16(__U, __A), 8));
|
|
555
|
+
}
|
|
556
|
+
|
|
557
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256 _mm256_cvtbf8_ph(__m128i __A) {
|
|
558
|
+
return _mm256_castsi256_ph(_mm256_slli_epi16(_mm256_cvtepi8_epi16(__A), 8));
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
562
|
+
_mm256_mask_cvtbf8_ph(__m256h __S, __mmask16 __U, __m128i __A) {
|
|
563
|
+
return _mm256_castsi256_ph(
|
|
564
|
+
_mm256_mask_slli_epi16((__m256i)__S, __U, _mm256_cvtepi8_epi16(__A), 8));
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
static __inline__ __m256h __DEFAULT_FN_ATTRS256
|
|
568
|
+
_mm256_maskz_cvtbf8_ph(__mmask16 __U, __m128i __A) {
|
|
569
|
+
return _mm256_castsi256_ph(
|
|
570
|
+
_mm256_slli_epi16(_mm256_maskz_cvtepi8_epi16(__U, __A), 8));
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
#undef __DEFAULT_FN_ATTRS128
|
|
574
|
+
#undef __DEFAULT_FN_ATTRS256
|
|
575
|
+
|
|
576
|
+
#endif // __AVX10_2CONVERTINTRIN_H
|
|
577
|
+
#endif // __SSE2__
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/*===---- avx10_2copyintrin.h - AVX10.2 Copy intrinsics -------------------===
|
|
2
|
+
*
|
|
3
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
4
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
6
|
+
*
|
|
7
|
+
*===-----------------------------------------------------------------------===
|
|
8
|
+
*/
|
|
9
|
+
#ifndef __IMMINTRIN_H
|
|
10
|
+
#error \
|
|
11
|
+
"Never use <avx10_2copyintrin.h> directly; include <immintrin.h> instead."
|
|
12
|
+
#endif // __IMMINTRIN_H
|
|
13
|
+
|
|
14
|
+
#ifndef __AVX10_2COPYINTRIN_H
|
|
15
|
+
#define __AVX10_2COPYINTRIN_H
|
|
16
|
+
|
|
17
|
+
/* Define the default attributes for the functions in this file. */
|
|
18
|
+
#define __DEFAULT_FN_ATTRS128 \
|
|
19
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx10.2-256"), \
|
|
20
|
+
__min_vector_width__(128)))
|
|
21
|
+
|
|
22
|
+
/// Constructs a 128-bit integer vector, setting the lower 32 bits to the
|
|
23
|
+
/// lower 32 bits of the parameter \a __A; the upper bits are zeoroed.
|
|
24
|
+
///
|
|
25
|
+
/// \code{.operation}
|
|
26
|
+
/// result[31:0] := __A[31:0]
|
|
27
|
+
/// result[MAX:32] := 0
|
|
28
|
+
/// \endcode
|
|
29
|
+
///
|
|
30
|
+
/// \headerfile <immintrin.h>
|
|
31
|
+
///
|
|
32
|
+
/// This intrinsic corresponds to the <c> VMOVD </c> instruction.
|
|
33
|
+
///
|
|
34
|
+
/// \param __A
|
|
35
|
+
/// A 128-bit integer vector.
|
|
36
|
+
/// \returns A 128-bit integer vector. The lower 32 bits are copied from the
|
|
37
|
+
/// parameter \a __A; the upper bits are zeroed.
|
|
38
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_move_epi32(__m128i __A) {
|
|
39
|
+
return (__m128i)__builtin_shufflevector(
|
|
40
|
+
(__v4si)__A, (__v4si)_mm_setzero_si128(), 0, 4, 4, 4);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/// Constructs a 128-bit integer vector, setting the lower 16 bits to the
|
|
44
|
+
/// lower 16 bits of the parameter \a __A; the upper bits are zeoroed.
|
|
45
|
+
///
|
|
46
|
+
/// \code{.operation}
|
|
47
|
+
/// result[15:0] := __A[15:0]
|
|
48
|
+
/// result[MAX:16] := 0
|
|
49
|
+
/// \endcode
|
|
50
|
+
///
|
|
51
|
+
/// \headerfile <immintrin.h>
|
|
52
|
+
///
|
|
53
|
+
/// This intrinsic corresponds to the <c> VMOVW </c> instruction.
|
|
54
|
+
///
|
|
55
|
+
/// \param __A
|
|
56
|
+
/// A 128-bit integer vector.
|
|
57
|
+
/// \returns A 128-bit integer vector. The lower 16 bits are copied from the
|
|
58
|
+
/// parameter \a __A; the upper bits are zeroed.
|
|
59
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_move_epi16(__m128i __A) {
|
|
60
|
+
return (__m128i)__builtin_shufflevector(
|
|
61
|
+
(__v8hi)__A, (__v8hi)_mm_setzero_si128(), 0, 8, 8, 8, 8, 8, 8, 8);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
#undef __DEFAULT_FN_ATTRS128
|
|
65
|
+
|
|
66
|
+
#endif // __AVX10_2COPYINTRIN_H
|