@cpp-linter/clang-tidy-win32-x64 19.1.0 → 21.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.exe +2 -2
- package/lib/clang/{19 → 21}/include/__clang_cuda_device_functions.h +14 -0
- package/lib/clang/{19 → 21}/include/__clang_cuda_intrinsics.h +295 -8
- package/lib/clang/{19 → 21}/include/__clang_cuda_math.h +5 -0
- package/lib/clang/{19 → 21}/include/__clang_cuda_runtime_wrapper.h +1 -0
- package/lib/clang/{19 → 21}/include/__clang_cuda_texture_intrinsics.h +437 -2
- package/lib/clang/{19 → 21}/include/__clang_hip_cmath.h +15 -9
- package/lib/clang/{19 → 21}/include/__clang_hip_libdevice_declares.h +12 -20
- package/lib/clang/{19 → 21}/include/__clang_hip_math.h +110 -29
- package/lib/clang/{19 → 21}/include/__clang_hip_runtime_wrapper.h +3 -0
- package/lib/clang/21/include/__clang_spirv_builtins.h +217 -0
- package/lib/clang/{19 → 21}/include/__stdarg_va_arg.h +2 -2
- package/lib/clang/{19 → 21}/include/adcintrin.h +5 -0
- package/lib/clang/{19 → 21}/include/adxintrin.h +5 -0
- package/lib/clang/{19 → 21}/include/altivec.h +90 -87
- package/lib/clang/21/include/amdgpuintrin.h +191 -0
- package/lib/clang/21/include/amxavx512intrin.h +382 -0
- package/lib/clang/21/include/amxbf16transposeintrin.h +94 -0
- package/lib/clang/{19 → 21}/include/amxcomplexintrin.h +4 -6
- package/lib/clang/21/include/amxcomplextransposeintrin.h +303 -0
- package/lib/clang/{19 → 21}/include/amxfp16intrin.h +35 -0
- package/lib/clang/21/include/amxfp16transposeintrin.h +94 -0
- package/lib/clang/21/include/amxfp8intrin.h +230 -0
- package/lib/clang/{19 → 21}/include/amxintrin.h +5 -35
- package/lib/clang/21/include/amxmovrsintrin.h +48 -0
- package/lib/clang/21/include/amxmovrstransposeintrin.h +200 -0
- package/lib/clang/21/include/amxtf32intrin.h +108 -0
- package/lib/clang/21/include/amxtf32transposeintrin.h +105 -0
- package/lib/clang/21/include/amxtransposeintrin.h +248 -0
- package/lib/clang/{19/include/hlsl.h → 21/include/andes_vector.h} +7 -6
- package/lib/clang/{19 → 21}/include/arm_acle.h +29 -62
- package/lib/clang/{19 → 21}/include/arm_fp16.h +89 -89
- package/lib/clang/{19 → 21}/include/arm_neon.h +24549 -20140
- package/lib/clang/{19 → 21}/include/arm_sme.h +1016 -94
- package/lib/clang/{19 → 21}/include/arm_sve.h +4633 -3272
- package/lib/clang/{19 → 21}/include/arm_vector_types.h +87 -0
- package/lib/clang/21/include/avx10_2_512bf16intrin.h +561 -0
- package/lib/clang/21/include/avx10_2_512convertintrin.h +322 -0
- package/lib/clang/21/include/avx10_2_512minmaxintrin.h +127 -0
- package/lib/clang/21/include/avx10_2_512niintrin.h +314 -0
- package/lib/clang/21/include/avx10_2_512satcvtdsintrin.h +307 -0
- package/lib/clang/21/include/avx10_2_512satcvtintrin.h +301 -0
- package/lib/clang/21/include/avx10_2bf16intrin.h +1085 -0
- package/lib/clang/21/include/avx10_2convertintrin.h +3257 -0
- package/lib/clang/21/include/avx10_2copyintrin.h +66 -0
- package/lib/clang/21/include/avx10_2minmaxintrin.h +232 -0
- package/lib/clang/21/include/avx10_2niintrin.h +409 -0
- package/lib/clang/21/include/avx10_2satcvtdsintrin.h +376 -0
- package/lib/clang/21/include/avx10_2satcvtintrin.h +312 -0
- package/lib/clang/{19 → 21}/include/avx2intrin.h +9 -0
- package/lib/clang/{19 → 21}/include/avx512bitalgintrin.h +2 -2
- package/lib/clang/{19 → 21}/include/avx512fintrin.h +22 -14
- package/lib/clang/{19 → 21}/include/avx512fp16intrin.h +2 -1
- package/lib/clang/{19 → 21}/include/avx512vlbitalgintrin.h +4 -4
- package/lib/clang/{19 → 21}/include/avx512vpopcntdqintrin.h +12 -4
- package/lib/clang/{19 → 21}/include/avx512vpopcntdqvlintrin.h +16 -8
- package/lib/clang/{19 → 21}/include/avxintrin.h +30 -16
- package/lib/clang/{19 → 21}/include/avxvnniint16intrin.h +36 -77
- package/lib/clang/{19 → 21}/include/avxvnniint8intrin.h +36 -77
- package/lib/clang/{19 → 21}/include/bmi2intrin.h +15 -17
- package/lib/clang/{19 → 21}/include/bmiintrin.h +31 -41
- package/lib/clang/{19 → 21}/include/cmpccxaddintrin.h +1 -1
- package/lib/clang/{19 → 21}/include/cpuid.h +36 -33
- package/lib/clang/21/include/cuda_wrappers/bits/c++config.h +61 -0
- package/lib/clang/21/include/cuda_wrappers/cmath +44 -0
- package/lib/clang/{19 → 21}/include/cuda_wrappers/new +2 -0
- package/lib/clang/{19 → 21}/include/emmintrin.h +141 -107
- package/lib/clang/{19 → 21}/include/float.h +2 -11
- package/lib/clang/{19 → 21}/include/gfniintrin.h +32 -10
- package/lib/clang/21/include/gpuintrin.h +328 -0
- package/lib/clang/{19 → 21}/include/hexagon_types.h +8 -4
- package/lib/clang/{19/include/hlsl/hlsl_intrinsics.h → 21/include/hlsl/hlsl_alias_intrinsics.h} +1214 -100
- package/lib/clang/{19 → 21}/include/hlsl/hlsl_basic_types.h +47 -1
- package/lib/clang/21/include/hlsl/hlsl_compat_overloads.h +427 -0
- package/lib/clang/21/include/hlsl/hlsl_detail.h +54 -0
- package/lib/clang/21/include/hlsl/hlsl_intrinsic_helpers.h +144 -0
- package/lib/clang/21/include/hlsl/hlsl_intrinsics.h +526 -0
- package/lib/clang/21/include/hlsl/hlsl_spirv.h +28 -0
- package/lib/clang/21/include/hlsl.h +38 -0
- package/lib/clang/{19 → 21}/include/hvx_hexagon_protos.h +427 -0
- package/lib/clang/{19 → 21}/include/immintrin.h +45 -185
- package/lib/clang/{19 → 21}/include/intrin.h +41 -14
- package/lib/clang/{19 → 21}/include/intrin0.h +10 -1
- package/lib/clang/{19 → 21}/include/keylockerintrin.h +0 -9
- package/lib/clang/{19 → 21}/include/larchintrin.h +22 -8
- package/lib/clang/{19 → 21}/include/lasxintrin.h +27 -25
- package/lib/clang/{19 → 21}/include/limits.h +7 -4
- package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/ctype.h +38 -0
- package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/stdlib.h +9 -1
- package/lib/clang/21/include/llvm_offload_wrappers/__llvm_offload.h +31 -0
- package/lib/clang/21/include/llvm_offload_wrappers/__llvm_offload_device.h +10 -0
- package/lib/clang/21/include/llvm_offload_wrappers/__llvm_offload_host.h +15 -0
- package/lib/clang/{19 → 21}/include/lsxintrin.h +27 -25
- package/lib/clang/{19 → 21}/include/lzcntintrin.h +13 -8
- package/lib/clang/{19 → 21}/include/mmintrin.h +209 -155
- package/lib/clang/{19 → 21}/include/module.modulemap +15 -4
- package/lib/clang/21/include/movrs_avx10_2_512intrin.h +98 -0
- package/lib/clang/21/include/movrs_avx10_2intrin.h +174 -0
- package/lib/clang/21/include/movrsintrin.h +59 -0
- package/lib/clang/21/include/nvptxintrin.h +219 -0
- package/lib/clang/{19 → 21}/include/opencl-c-base.h +23 -1
- package/lib/clang/{19 → 21}/include/opencl-c.h +298 -39
- package/lib/clang/{19 → 21}/include/openmp_wrappers/__clang_openmp_device_functions.h +4 -5
- package/lib/clang/{19 → 21}/include/openmp_wrappers/complex_cmath.h +7 -2
- package/lib/clang/{19 → 21}/include/pmmintrin.h +16 -3
- package/lib/clang/{19 → 21}/include/popcntintrin.h +7 -7
- package/lib/clang/{19 → 21}/include/prfchwintrin.h +10 -13
- package/lib/clang/{19 → 21}/include/ptrauth.h +65 -2
- package/lib/clang/21/include/riscv_corev_alu.h +128 -0
- package/lib/clang/{19 → 21}/include/riscv_vector.h +0 -5
- package/lib/clang/{19 → 21}/include/shaintrin.h +3 -2
- package/lib/clang/21/include/sm4evexintrin.h +32 -0
- package/lib/clang/{19 → 21}/include/smmintrin.h +6 -0
- package/lib/clang/{19 → 21}/include/stdalign.h +0 -5
- package/lib/clang/21/include/stdcountof.h +15 -0
- package/lib/clang/{19 → 21}/include/stdint.h +18 -129
- package/lib/clang/{19 → 21}/include/tbmintrin.h +25 -37
- package/lib/clang/{19 → 21}/include/tmmintrin.h +64 -38
- package/lib/clang/{19 → 21}/include/vecintrin.h +1784 -61
- package/lib/clang/{19 → 21}/include/wasm_simd128.h +167 -21
- package/lib/clang/{19 → 21}/include/x86gprintrin.h +0 -14
- package/lib/clang/{19 → 21}/include/x86intrin.h +0 -18
- package/lib/clang/{19 → 21}/include/xmmintrin.h +173 -179
- package/package.json +6 -6
- package/lib/clang/19/include/cuda_wrappers/cmath +0 -90
- /package/lib/clang/{19 → 21}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{19 → 21}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{19 → 21}/include/__clang_cuda_complex_builtins.h +0 -0
- /package/lib/clang/{19 → 21}/include/__clang_cuda_libdevice_declares.h +0 -0
- /package/lib/clang/{19 → 21}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{19 → 21}/include/__clang_hip_stdlib.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stdarg___gnuc_va_list.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stdarg___va_copy.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stdarg_header_macro.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stdarg_va_copy.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stdarg_va_list.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_header_macro.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_null.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_nullptr_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_offsetof.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_ptrdiff_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_rsize_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_size_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_unreachable.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_wchar_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__stddef_wint_t.h +0 -0
- /package/lib/clang/{19 → 21}/include/__wmmintrin_aes.h +0 -0
- /package/lib/clang/{19 → 21}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{19 → 21}/include/ammintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm64intr.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm_bf16.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm_cde.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm_cmse.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm_mve.h +0 -0
- /package/lib/clang/{19 → 21}/include/arm_neon_sve_bridge.h +0 -0
- /package/lib/clang/{19 → 21}/include/armintr.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512bf16intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512bwintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512dqintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512ifmavlintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vbmi2intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlbf16intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlbwintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vldqintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlfp16intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlvbmi2intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlvnniintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avxifmaintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avxneconvertintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/avxvnniintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/builtins.h +0 -0
- /package/lib/clang/{19 → 21}/include/cet.h +0 -0
- /package/lib/clang/{19 → 21}/include/cetintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/clwbintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/clzerointrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/crc32intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{19 → 21}/include/cuda_wrappers/bits/basic_string.h +0 -0
- /package/lib/clang/{19 → 21}/include/cuda_wrappers/bits/basic_string.tcc +0 -0
- /package/lib/clang/{19 → 21}/include/cuda_wrappers/bits/shared_ptr_base.h +0 -0
- /package/lib/clang/{19 → 21}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{19 → 21}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/f16cintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/fma4intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/fmaintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{19 → 21}/include/hexagon_protos.h +0 -0
- /package/lib/clang/{19 → 21}/include/hresetintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/htmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ia32intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/inttypes.h +0 -0
- /package/lib/clang/{19 → 21}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/iso646.h +0 -0
- /package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/assert.h +0 -0
- /package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/inttypes.h +0 -0
- /package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/stdio.h +0 -0
- /package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/string.h +0 -0
- /package/lib/clang/{19 → 21}/include/llvm_libc_wrappers/time.h +0 -0
- /package/lib/clang/{19 → 21}/include/lwpintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/mm3dnow.h +0 -0
- /package/lib/clang/{19 → 21}/include/mm_malloc.h +0 -0
- /package/lib/clang/{19 → 21}/include/movdirintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/msa.h +0 -0
- /package/lib/clang/{19 → 21}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/nmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{19 → 21}/include/openmp_wrappers/complex +0 -0
- /package/lib/clang/{19 → 21}/include/openmp_wrappers/complex.h +0 -0
- /package/lib/clang/{19 → 21}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{19 → 21}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{19 → 21}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/pkuintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/bmi2intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/bmiintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/emmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/immintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/mm_malloc.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/mmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/nmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/pmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/smmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/tmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/x86gprintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/x86intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ppc_wrappers/xmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/prfchiintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/raointintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/rdpruintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/riscv_bitmanip.h +0 -0
- /package/lib/clang/{19 → 21}/include/riscv_crypto.h +0 -0
- /package/lib/clang/{19 → 21}/include/riscv_ntlh.h +0 -0
- /package/lib/clang/{19 → 21}/include/rtmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/s390intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/serializeintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/sgxintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/sha512intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/sifive_vector.h +0 -0
- /package/lib/clang/{19 → 21}/include/sm3intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/sm4intrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/stdarg.h +0 -0
- /package/lib/clang/{19 → 21}/include/stdatomic.h +0 -0
- /package/lib/clang/{19 → 21}/include/stdbool.h +0 -0
- /package/lib/clang/{19 → 21}/include/stdckdint.h +0 -0
- /package/lib/clang/{19 → 21}/include/stddef.h +0 -0
- /package/lib/clang/{19 → 21}/include/stdnoreturn.h +0 -0
- /package/lib/clang/{19 → 21}/include/tgmath.h +0 -0
- /package/lib/clang/{19 → 21}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/uintrintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/unwind.h +0 -0
- /package/lib/clang/{19 → 21}/include/usermsrintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/vadefs.h +0 -0
- /package/lib/clang/{19 → 21}/include/vaesintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/varargs.h +0 -0
- /package/lib/clang/{19 → 21}/include/velintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/velintrin_approx.h +0 -0
- /package/lib/clang/{19 → 21}/include/velintrin_gen.h +0 -0
- /package/lib/clang/{19 → 21}/include/vpclmulqdqintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/wmmintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xopintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/xtestintrin.h +0 -0
- /package/lib/clang/{19 → 21}/include/yvals_core.h +0 -0
- /package/lib/clang/{19 → 21}/include/zos_wrappers/builtins.h +0 -0
|
@@ -15,12 +15,21 @@
|
|
|
15
15
|
#define __AVX2INTRIN_H
|
|
16
16
|
|
|
17
17
|
/* Define the default attributes for the functions in this file. */
|
|
18
|
+
#if defined(__EVEX512__) && !defined(__AVX10_1_512__)
|
|
18
19
|
#define __DEFAULT_FN_ATTRS256 \
|
|
19
20
|
__attribute__((__always_inline__, __nodebug__, \
|
|
20
21
|
__target__("avx2,no-evex512"), __min_vector_width__(256)))
|
|
21
22
|
#define __DEFAULT_FN_ATTRS128 \
|
|
22
23
|
__attribute__((__always_inline__, __nodebug__, \
|
|
23
24
|
__target__("avx2,no-evex512"), __min_vector_width__(128)))
|
|
25
|
+
#else
|
|
26
|
+
#define __DEFAULT_FN_ATTRS256 \
|
|
27
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx2"), \
|
|
28
|
+
__min_vector_width__(256)))
|
|
29
|
+
#define __DEFAULT_FN_ATTRS128 \
|
|
30
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx2"), \
|
|
31
|
+
__min_vector_width__(128)))
|
|
32
|
+
#endif
|
|
24
33
|
|
|
25
34
|
/* SSE4 Multiple Packed Sums of Absolute Difference. */
|
|
26
35
|
/// Computes sixteen sum of absolute difference (SAD) operations on sets of
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
24
24
|
_mm512_popcnt_epi16(__m512i __A)
|
|
25
25
|
{
|
|
26
|
-
return (__m512i)
|
|
26
|
+
return (__m512i)__builtin_elementwise_popcount((__v32hu)__A);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
@@ -45,7 +45,7 @@ _mm512_maskz_popcnt_epi16(__mmask32 __U, __m512i __B)
|
|
|
45
45
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
46
46
|
_mm512_popcnt_epi8(__m512i __A)
|
|
47
47
|
{
|
|
48
|
-
return (__m512i)
|
|
48
|
+
return (__m512i)__builtin_elementwise_popcount((__v64qu)__A);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
@@ -175,12 +175,21 @@ typedef enum
|
|
|
175
175
|
__attribute__((__always_inline__, __nodebug__, \
|
|
176
176
|
__target__("avx512f,no-evex512")))
|
|
177
177
|
|
|
178
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
179
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
|
|
180
|
+
#define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512 constexpr
|
|
181
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
|
|
182
|
+
#else
|
|
183
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS128
|
|
184
|
+
#define __DEFAULT_FN_ATTRS512_CONSTEXPR __DEFAULT_FN_ATTRS512
|
|
185
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS
|
|
186
|
+
#endif
|
|
187
|
+
|
|
178
188
|
/* Create vectors with repeated elements */
|
|
179
189
|
|
|
180
|
-
static
|
|
181
|
-
_mm512_setzero_si512(void)
|
|
182
|
-
{
|
|
183
|
-
return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
|
|
190
|
+
static __inline __m512i __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
191
|
+
_mm512_setzero_si512(void) {
|
|
192
|
+
return __extension__(__m512i)(__v8di){0, 0, 0, 0, 0, 0, 0, 0};
|
|
184
193
|
}
|
|
185
194
|
|
|
186
195
|
#define _mm512_setzero_epi32 _mm512_setzero_si512
|
|
@@ -256,20 +265,16 @@ _mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
|
|
|
256
265
|
(__v8di) _mm512_setzero_si512());
|
|
257
266
|
}
|
|
258
267
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
{
|
|
263
|
-
return __extension__ (__m512){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,
|
|
264
|
-
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
|
|
268
|
+
static __inline __m512 __DEFAULT_FN_ATTRS512_CONSTEXPR _mm512_setzero_ps(void) {
|
|
269
|
+
return __extension__(__m512){0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,
|
|
270
|
+
0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f};
|
|
265
271
|
}
|
|
266
272
|
|
|
267
273
|
#define _mm512_setzero _mm512_setzero_ps
|
|
268
274
|
|
|
269
|
-
static
|
|
270
|
-
_mm512_setzero_pd(void)
|
|
271
|
-
{
|
|
272
|
-
return __extension__ (__m512d){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
|
|
275
|
+
static __inline __m512d __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
276
|
+
_mm512_setzero_pd(void) {
|
|
277
|
+
return __extension__(__m512d){0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0};
|
|
273
278
|
}
|
|
274
279
|
|
|
275
280
|
static __inline __m512 __DEFAULT_FN_ATTRS512
|
|
@@ -9775,5 +9780,8 @@ _mm512_cvtsi512_si32(__m512i __A) {
|
|
|
9775
9780
|
#undef __DEFAULT_FN_ATTRS512
|
|
9776
9781
|
#undef __DEFAULT_FN_ATTRS128
|
|
9777
9782
|
#undef __DEFAULT_FN_ATTRS
|
|
9783
|
+
#undef __DEFAULT_FN_ATTRS512_CONSTEXPR
|
|
9784
|
+
#undef __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
9785
|
+
#undef __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
9778
9786
|
|
|
9779
9787
|
#endif /* __AVX512FINTRIN_H */
|
|
@@ -553,7 +553,8 @@ static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_abs_ph(__m512h __A) {
|
|
|
553
553
|
}
|
|
554
554
|
|
|
555
555
|
static __inline__ __m512h __DEFAULT_FN_ATTRS512 _mm512_conj_pch(__m512h __A) {
|
|
556
|
-
return (__m512h)
|
|
556
|
+
return (__m512h)_mm512_xor_epi32((__m512i)__A,
|
|
557
|
+
_mm512_set1_epi32(-2147483648));
|
|
557
558
|
}
|
|
558
559
|
|
|
559
560
|
static __inline__ __m512h __DEFAULT_FN_ATTRS512
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
28
28
|
_mm256_popcnt_epi16(__m256i __A)
|
|
29
29
|
{
|
|
30
|
-
return (__m256i)
|
|
30
|
+
return (__m256i)__builtin_elementwise_popcount((__v16hu)__A);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
@@ -49,7 +49,7 @@ _mm256_maskz_popcnt_epi16(__mmask16 __U, __m256i __B)
|
|
|
49
49
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
50
50
|
_mm_popcnt_epi16(__m128i __A)
|
|
51
51
|
{
|
|
52
|
-
return (__m128i)
|
|
52
|
+
return (__m128i)__builtin_elementwise_popcount((__v8hu)__A);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
@@ -71,7 +71,7 @@ _mm_maskz_popcnt_epi16(__mmask8 __U, __m128i __B)
|
|
|
71
71
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
72
72
|
_mm256_popcnt_epi8(__m256i __A)
|
|
73
73
|
{
|
|
74
|
-
return (__m256i)
|
|
74
|
+
return (__m256i)__builtin_elementwise_popcount((__v32qu)__A);
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
@@ -93,7 +93,7 @@ _mm256_maskz_popcnt_epi8(__mmask32 __U, __m256i __B)
|
|
|
93
93
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
94
94
|
_mm_popcnt_epi8(__m128i __A)
|
|
95
95
|
{
|
|
96
|
-
return (__m128i)
|
|
96
|
+
return (__m128i)__builtin_elementwise_popcount((__v16qu)__A);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
@@ -21,8 +21,15 @@
|
|
|
21
21
|
__target__("avx512vpopcntdq,evex512"), \
|
|
22
22
|
__min_vector_width__(512)))
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
25
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
|
|
26
|
+
#else
|
|
27
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS
|
|
28
|
+
#endif
|
|
29
|
+
|
|
30
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
31
|
+
_mm512_popcnt_epi64(__m512i __A) {
|
|
32
|
+
return (__m512i)__builtin_elementwise_popcount((__v8du)__A);
|
|
26
33
|
}
|
|
27
34
|
|
|
28
35
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
@@ -36,8 +43,9 @@ _mm512_maskz_popcnt_epi64(__mmask8 __U, __m512i __A) {
|
|
|
36
43
|
return _mm512_mask_popcnt_epi64((__m512i)_mm512_setzero_si512(), __U, __A);
|
|
37
44
|
}
|
|
38
45
|
|
|
39
|
-
static __inline__ __m512i
|
|
40
|
-
|
|
46
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
47
|
+
_mm512_popcnt_epi32(__m512i __A) {
|
|
48
|
+
return (__m512i)__builtin_elementwise_popcount((__v16su)__A);
|
|
41
49
|
}
|
|
42
50
|
|
|
43
51
|
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
@@ -25,9 +25,17 @@
|
|
|
25
25
|
__target__("avx512vpopcntdq,avx512vl,no-evex512"), \
|
|
26
26
|
__min_vector_width__(256)))
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
29
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
|
|
30
|
+
#define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256 constexpr
|
|
31
|
+
#else
|
|
32
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
|
|
33
|
+
#define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256
|
|
34
|
+
#endif
|
|
35
|
+
|
|
36
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
29
37
|
_mm_popcnt_epi64(__m128i __A) {
|
|
30
|
-
return (__m128i)
|
|
38
|
+
return (__m128i)__builtin_elementwise_popcount((__v2du)__A);
|
|
31
39
|
}
|
|
32
40
|
|
|
33
41
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
@@ -41,9 +49,9 @@ _mm_maskz_popcnt_epi64(__mmask8 __U, __m128i __A) {
|
|
|
41
49
|
return _mm_mask_popcnt_epi64((__m128i)_mm_setzero_si128(), __U, __A);
|
|
42
50
|
}
|
|
43
51
|
|
|
44
|
-
static __inline__ __m128i
|
|
52
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
45
53
|
_mm_popcnt_epi32(__m128i __A) {
|
|
46
|
-
return (__m128i)
|
|
54
|
+
return (__m128i)__builtin_elementwise_popcount((__v4su)__A);
|
|
47
55
|
}
|
|
48
56
|
|
|
49
57
|
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
@@ -57,9 +65,9 @@ _mm_maskz_popcnt_epi32(__mmask8 __U, __m128i __A) {
|
|
|
57
65
|
return _mm_mask_popcnt_epi32((__m128i)_mm_setzero_si128(), __U, __A);
|
|
58
66
|
}
|
|
59
67
|
|
|
60
|
-
static __inline__ __m256i
|
|
68
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
|
|
61
69
|
_mm256_popcnt_epi64(__m256i __A) {
|
|
62
|
-
return (__m256i)
|
|
70
|
+
return (__m256i)__builtin_elementwise_popcount((__v4du)__A);
|
|
63
71
|
}
|
|
64
72
|
|
|
65
73
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
@@ -73,9 +81,9 @@ _mm256_maskz_popcnt_epi64(__mmask8 __U, __m256i __A) {
|
|
|
73
81
|
return _mm256_mask_popcnt_epi64((__m256i)_mm256_setzero_si256(), __U, __A);
|
|
74
82
|
}
|
|
75
83
|
|
|
76
|
-
static __inline__ __m256i
|
|
84
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
|
|
77
85
|
_mm256_popcnt_epi32(__m256i __A) {
|
|
78
|
-
return (__m256i)
|
|
86
|
+
return (__m256i)__builtin_elementwise_popcount((__v8su)__A);
|
|
79
87
|
}
|
|
80
88
|
|
|
81
89
|
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
@@ -50,12 +50,29 @@ typedef __bf16 __m256bh __attribute__((__vector_size__(32), __aligned__(32)));
|
|
|
50
50
|
#endif
|
|
51
51
|
|
|
52
52
|
/* Define the default attributes for the functions in this file. */
|
|
53
|
+
#if defined(__EVEX512__) && !defined(__AVX10_1_512__)
|
|
53
54
|
#define __DEFAULT_FN_ATTRS \
|
|
54
55
|
__attribute__((__always_inline__, __nodebug__, __target__("avx,no-evex512"), \
|
|
55
56
|
__min_vector_width__(256)))
|
|
56
57
|
#define __DEFAULT_FN_ATTRS128 \
|
|
57
58
|
__attribute__((__always_inline__, __nodebug__, __target__("avx,no-evex512"), \
|
|
58
59
|
__min_vector_width__(128)))
|
|
60
|
+
#else
|
|
61
|
+
#define __DEFAULT_FN_ATTRS \
|
|
62
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx"), \
|
|
63
|
+
__min_vector_width__(256)))
|
|
64
|
+
#define __DEFAULT_FN_ATTRS128 \
|
|
65
|
+
__attribute__((__always_inline__, __nodebug__, __target__("avx"), \
|
|
66
|
+
__min_vector_width__(128)))
|
|
67
|
+
#endif
|
|
68
|
+
|
|
69
|
+
#if defined(__cplusplus) && (__cplusplus >= 201103L)
|
|
70
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS constexpr
|
|
71
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
|
|
72
|
+
#else
|
|
73
|
+
#define __DEFAULT_FN_ATTRS_CONSTEXPR __DEFAULT_FN_ATTRS128
|
|
74
|
+
#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS
|
|
75
|
+
#endif
|
|
59
76
|
|
|
60
77
|
/* Arithmetic */
|
|
61
78
|
/// Adds two 256-bit vectors of [4 x double].
|
|
@@ -3689,7 +3706,7 @@ _mm256_undefined_si256(void)
|
|
|
3689
3706
|
/// A double-precision floating-point value used to initialize bits [63:0]
|
|
3690
3707
|
/// of the result.
|
|
3691
3708
|
/// \returns An initialized 256-bit floating-point vector of [4 x double].
|
|
3692
|
-
static __inline __m256d
|
|
3709
|
+
static __inline __m256d __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
3693
3710
|
_mm256_set_pd(double __a, double __b, double __c, double __d)
|
|
3694
3711
|
{
|
|
3695
3712
|
return __extension__ (__m256d){ __d, __c, __b, __a };
|
|
@@ -3728,7 +3745,7 @@ _mm256_set_pd(double __a, double __b, double __c, double __d)
|
|
|
3728
3745
|
/// A single-precision floating-point value used to initialize bits [31:0]
|
|
3729
3746
|
/// of the result.
|
|
3730
3747
|
/// \returns An initialized 256-bit floating-point vector of [8 x float].
|
|
3731
|
-
static __inline __m256
|
|
3748
|
+
static __inline __m256 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
3732
3749
|
_mm256_set_ps(float __a, float __b, float __c, float __d,
|
|
3733
3750
|
float __e, float __f, float __g, float __h)
|
|
3734
3751
|
{
|
|
@@ -3955,7 +3972,7 @@ _mm256_set_epi64x(long long __a, long long __b, long long __c, long long __d)
|
|
|
3955
3972
|
/// A double-precision floating-point value used to initialize bits [255:192]
|
|
3956
3973
|
/// of the result.
|
|
3957
3974
|
/// \returns An initialized 256-bit floating-point vector of [4 x double].
|
|
3958
|
-
static __inline __m256d
|
|
3975
|
+
static __inline __m256d __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
3959
3976
|
_mm256_setr_pd(double __a, double __b, double __c, double __d)
|
|
3960
3977
|
{
|
|
3961
3978
|
return _mm256_set_pd(__d, __c, __b, __a);
|
|
@@ -3995,7 +4012,7 @@ _mm256_setr_pd(double __a, double __b, double __c, double __d)
|
|
|
3995
4012
|
/// A single-precision floating-point value used to initialize bits [255:224]
|
|
3996
4013
|
/// of the result.
|
|
3997
4014
|
/// \returns An initialized 256-bit floating-point vector of [8 x float].
|
|
3998
|
-
static __inline __m256
|
|
4015
|
+
static __inline __m256 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
3999
4016
|
_mm256_setr_ps(float __a, float __b, float __c, float __d,
|
|
4000
4017
|
float __e, float __f, float __g, float __h)
|
|
4001
4018
|
{
|
|
@@ -4212,7 +4229,7 @@ _mm256_setr_epi64x(long long __a, long long __b, long long __c, long long __d)
|
|
|
4212
4229
|
/// A double-precision floating-point value used to initialize each vector
|
|
4213
4230
|
/// element of the result.
|
|
4214
4231
|
/// \returns An initialized 256-bit floating-point vector of [4 x double].
|
|
4215
|
-
static __inline __m256d
|
|
4232
|
+
static __inline __m256d __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
4216
4233
|
_mm256_set1_pd(double __w)
|
|
4217
4234
|
{
|
|
4218
4235
|
return _mm256_set_pd(__w, __w, __w, __w);
|
|
@@ -4231,7 +4248,7 @@ _mm256_set1_pd(double __w)
|
|
|
4231
4248
|
/// A single-precision floating-point value used to initialize each vector
|
|
4232
4249
|
/// element of the result.
|
|
4233
4250
|
/// \returns An initialized 256-bit floating-point vector of [8 x float].
|
|
4234
|
-
static __inline __m256
|
|
4251
|
+
static __inline __m256 __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
4235
4252
|
_mm256_set1_ps(float __w)
|
|
4236
4253
|
{
|
|
4237
4254
|
return _mm256_set_ps(__w, __w, __w, __w, __w, __w, __w, __w);
|
|
@@ -4322,10 +4339,8 @@ _mm256_set1_epi64x(long long __q)
|
|
|
4322
4339
|
/// This intrinsic corresponds to the <c> VXORPS </c> instruction.
|
|
4323
4340
|
///
|
|
4324
4341
|
/// \returns A 256-bit vector of [4 x double] with all elements set to zero.
|
|
4325
|
-
static __inline __m256d
|
|
4326
|
-
|
|
4327
|
-
{
|
|
4328
|
-
return __extension__ (__m256d){ 0.0, 0.0, 0.0, 0.0 };
|
|
4342
|
+
static __inline __m256d __DEFAULT_FN_ATTRS_CONSTEXPR _mm256_setzero_pd(void) {
|
|
4343
|
+
return __extension__(__m256d){0.0, 0.0, 0.0, 0.0};
|
|
4329
4344
|
}
|
|
4330
4345
|
|
|
4331
4346
|
/// Constructs a 256-bit floating-point vector of [8 x float] with all
|
|
@@ -4336,9 +4351,7 @@ _mm256_setzero_pd(void)
|
|
|
4336
4351
|
/// This intrinsic corresponds to the <c> VXORPS </c> instruction.
|
|
4337
4352
|
///
|
|
4338
4353
|
/// \returns A 256-bit vector of [8 x float] with all elements set to zero.
|
|
4339
|
-
static __inline __m256
|
|
4340
|
-
_mm256_setzero_ps(void)
|
|
4341
|
-
{
|
|
4354
|
+
static __inline __m256 __DEFAULT_FN_ATTRS_CONSTEXPR _mm256_setzero_ps(void) {
|
|
4342
4355
|
return __extension__ (__m256){ 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
|
|
4343
4356
|
}
|
|
4344
4357
|
|
|
@@ -4349,9 +4362,8 @@ _mm256_setzero_ps(void)
|
|
|
4349
4362
|
/// This intrinsic corresponds to the <c> VXORPS </c> instruction.
|
|
4350
4363
|
///
|
|
4351
4364
|
/// \returns A 256-bit integer vector initialized to zero.
|
|
4352
|
-
static __inline __m256i
|
|
4353
|
-
_mm256_setzero_si256(void)
|
|
4354
|
-
{
|
|
4365
|
+
static __inline __m256i __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
4366
|
+
_mm256_setzero_si256(void) {
|
|
4355
4367
|
return __extension__ (__m256i)(__v4di){ 0, 0, 0, 0 };
|
|
4356
4368
|
}
|
|
4357
4369
|
|
|
@@ -5121,6 +5133,8 @@ _mm256_storeu2_m128i(__m128i_u *__addr_hi, __m128i_u *__addr_lo, __m256i __a)
|
|
|
5121
5133
|
}
|
|
5122
5134
|
|
|
5123
5135
|
#undef __DEFAULT_FN_ATTRS
|
|
5136
|
+
#undef __DEFAULT_FN_ATTRS_CONSTEXPR
|
|
5124
5137
|
#undef __DEFAULT_FN_ATTRS128
|
|
5138
|
+
#undef __DEFAULT_FN_ATTRS128_CONSTEXPR
|
|
5125
5139
|
|
|
5126
5140
|
#endif /* __AVXINTRIN_H */
|
|
@@ -15,14 +15,6 @@
|
|
|
15
15
|
#ifndef __AVXVNNIINT16INTRIN_H
|
|
16
16
|
#define __AVXVNNIINT16INTRIN_H
|
|
17
17
|
|
|
18
|
-
/* Define the default attributes for the functions in this file. */
|
|
19
|
-
#define __DEFAULT_FN_ATTRS128 \
|
|
20
|
-
__attribute__((__always_inline__, __nodebug__, __target__("avxvnniint16"), \
|
|
21
|
-
__min_vector_width__(128)))
|
|
22
|
-
#define __DEFAULT_FN_ATTRS256 \
|
|
23
|
-
__attribute__((__always_inline__, __nodebug__, __target__("avxvnniint16"), \
|
|
24
|
-
__min_vector_width__(256)))
|
|
25
|
-
|
|
26
18
|
/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
|
|
27
19
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
28
20
|
/// signed 16-bit results. Sum these 2 results with the corresponding
|
|
@@ -53,12 +45,9 @@
|
|
|
53
45
|
/// ENDFOR
|
|
54
46
|
/// dst[MAX:128] := 0
|
|
55
47
|
/// \endcode
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return (__m128i)__builtin_ia32_vpdpwsud128((__v4si)__W, (__v4si)__A,
|
|
60
|
-
(__v4si)__B);
|
|
61
|
-
}
|
|
48
|
+
#define _mm_dpwsud_epi32(__W, __A, __B) \
|
|
49
|
+
((__m128i)__builtin_ia32_vpdpwsud128((__v4si)(__W), (__v4si)(__A), \
|
|
50
|
+
(__v4si)(__B)))
|
|
62
51
|
|
|
63
52
|
/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
|
|
64
53
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -90,11 +79,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwsud_epi32(__m128i __W,
|
|
|
90
79
|
/// ENDFOR
|
|
91
80
|
/// dst[MAX:256] := 0
|
|
92
81
|
/// \endcode
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
(__v8si)__B);
|
|
97
|
-
}
|
|
82
|
+
#define _mm256_dpwsud_epi32(__W, __A, __B) \
|
|
83
|
+
((__m256i)__builtin_ia32_vpdpwsud256((__v8si)(__W), (__v8si)(__A), \
|
|
84
|
+
(__v8si)(__B)))
|
|
98
85
|
|
|
99
86
|
/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
|
|
100
87
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -127,12 +114,9 @@ _mm256_dpwsud_epi32(__m256i __W, __m256i __A, __m256i __B) {
|
|
|
127
114
|
/// ENDFOR
|
|
128
115
|
/// dst[MAX:128] := 0
|
|
129
116
|
/// \endcode
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
return (__m128i)__builtin_ia32_vpdpwsuds128((__v4si)__W, (__v4si)__A,
|
|
134
|
-
(__v4si)__B);
|
|
135
|
-
}
|
|
117
|
+
#define _mm_dpwsuds_epi32(__W, __A, __B) \
|
|
118
|
+
((__m128i)__builtin_ia32_vpdpwsuds128((__v4si)(__W), (__v4si)(__A), \
|
|
119
|
+
(__v4si)(__B)))
|
|
136
120
|
|
|
137
121
|
/// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
|
|
138
122
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -165,11 +149,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwsuds_epi32(__m128i __W,
|
|
|
165
149
|
/// ENDFOR
|
|
166
150
|
/// dst[MAX:256] := 0
|
|
167
151
|
/// \endcode
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
(__v8si)__B);
|
|
172
|
-
}
|
|
152
|
+
#define _mm256_dpwsuds_epi32(__W, __A, __B) \
|
|
153
|
+
((__m256i)__builtin_ia32_vpdpwsuds256((__v8si)(__W), (__v8si)(__A), \
|
|
154
|
+
(__v8si)(__B)))
|
|
173
155
|
|
|
174
156
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
175
157
|
/// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -201,12 +183,9 @@ _mm256_dpwsuds_epi32(__m256i __W, __m256i __A, __m256i __B) {
|
|
|
201
183
|
/// ENDFOR
|
|
202
184
|
/// dst[MAX:128] := 0
|
|
203
185
|
/// \endcode
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
return (__m128i)__builtin_ia32_vpdpwusd128((__v4si)__W, (__v4si)__A,
|
|
208
|
-
(__v4si)__B);
|
|
209
|
-
}
|
|
186
|
+
#define _mm_dpwusd_epi32(__W, __A, __B) \
|
|
187
|
+
((__m128i)__builtin_ia32_vpdpwusd128((__v4si)(__W), (__v4si)(__A), \
|
|
188
|
+
(__v4si)(__B)))
|
|
210
189
|
|
|
211
190
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
212
191
|
/// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -238,11 +217,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwusd_epi32(__m128i __W,
|
|
|
238
217
|
/// ENDFOR
|
|
239
218
|
/// dst[MAX:256] := 0
|
|
240
219
|
/// \endcode
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
(__v8si)__B);
|
|
245
|
-
}
|
|
220
|
+
#define _mm256_dpwusd_epi32(__W, __A, __B) \
|
|
221
|
+
((__m256i)__builtin_ia32_vpdpwusd256((__v8si)(__W), (__v8si)(__A), \
|
|
222
|
+
(__v8si)(__B)))
|
|
246
223
|
|
|
247
224
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
248
225
|
/// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -275,12 +252,9 @@ _mm256_dpwusd_epi32(__m256i __W, __m256i __A, __m256i __B) {
|
|
|
275
252
|
/// ENDFOR
|
|
276
253
|
/// dst[MAX:128] := 0
|
|
277
254
|
/// \endcode
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
return (__m128i)__builtin_ia32_vpdpwusds128((__v4si)__W, (__v4si)__A,
|
|
282
|
-
(__v4si)__B);
|
|
283
|
-
}
|
|
255
|
+
#define _mm_dpwusds_epi32(__W, __A, __B) \
|
|
256
|
+
((__m128i)__builtin_ia32_vpdpwusds128((__v4si)(__W), (__v4si)(__A), \
|
|
257
|
+
(__v4si)(__B)))
|
|
284
258
|
|
|
285
259
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
286
260
|
/// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -313,11 +287,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwusds_epi32(__m128i __W,
|
|
|
313
287
|
/// ENDFOR
|
|
314
288
|
/// dst[MAX:256] := 0
|
|
315
289
|
/// \endcode
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
(__v8si)__B);
|
|
320
|
-
}
|
|
290
|
+
#define _mm256_dpwusds_epi32(__W, __A, __B) \
|
|
291
|
+
((__m256i)__builtin_ia32_vpdpwusds256((__v8si)(__W), (__v8si)(__A), \
|
|
292
|
+
(__v8si)(__B)))
|
|
321
293
|
|
|
322
294
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
323
295
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -349,12 +321,9 @@ _mm256_dpwusds_epi32(__m256i __W, __m256i __A, __m256i __B) {
|
|
|
349
321
|
/// ENDFOR
|
|
350
322
|
/// dst[MAX:128] := 0
|
|
351
323
|
/// \endcode
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
return (__m128i)__builtin_ia32_vpdpwuud128((__v4si)__W, (__v4si)__A,
|
|
356
|
-
(__v4si)__B);
|
|
357
|
-
}
|
|
324
|
+
#define _mm_dpwuud_epi32(__W, __A, __B) \
|
|
325
|
+
((__m128i)__builtin_ia32_vpdpwuud128((__v4si)(__W), (__v4si)(__A), \
|
|
326
|
+
(__v4si)(__B)))
|
|
358
327
|
|
|
359
328
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
360
329
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -386,11 +355,9 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwuud_epi32(__m128i __W,
|
|
|
386
355
|
/// ENDFOR
|
|
387
356
|
/// dst[MAX:256] := 0
|
|
388
357
|
/// \endcode
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
(__v8si)__B);
|
|
393
|
-
}
|
|
358
|
+
#define _mm256_dpwuud_epi32(__W, __A, __B) \
|
|
359
|
+
((__m256i)__builtin_ia32_vpdpwuud256((__v8si)(__W), (__v8si)(__A), \
|
|
360
|
+
(__v8si)(__B)))
|
|
394
361
|
|
|
395
362
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
396
363
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -423,12 +390,9 @@ _mm256_dpwuud_epi32(__m256i __W, __m256i __A, __m256i __B) {
|
|
|
423
390
|
/// ENDFOR
|
|
424
391
|
/// dst[MAX:128] := 0
|
|
425
392
|
/// \endcode
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
return (__m128i)__builtin_ia32_vpdpwuuds128((__v4si)__W, (__v4si)__A,
|
|
430
|
-
(__v4si)__B);
|
|
431
|
-
}
|
|
393
|
+
#define _mm_dpwuuds_epi32(__W, __A, __B) \
|
|
394
|
+
((__m128i)__builtin_ia32_vpdpwuuds128((__v4si)(__W), (__v4si)(__A), \
|
|
395
|
+
(__v4si)(__B)))
|
|
432
396
|
|
|
433
397
|
/// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
|
|
434
398
|
/// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
|
|
@@ -461,13 +425,8 @@ static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_dpwuuds_epi32(__m128i __W,
|
|
|
461
425
|
/// ENDFOR
|
|
462
426
|
/// dst[MAX:256] := 0
|
|
463
427
|
/// \endcode
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
(__v8si)__B);
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
#undef __DEFAULT_FN_ATTRS128
|
|
471
|
-
#undef __DEFAULT_FN_ATTRS256
|
|
428
|
+
#define _mm256_dpwuuds_epi32(__W, __A, __B) \
|
|
429
|
+
((__m256i)__builtin_ia32_vpdpwuuds256((__v8si)(__W), (__v8si)(__A), \
|
|
430
|
+
(__v8si)(__B)))
|
|
472
431
|
|
|
473
432
|
#endif // __AVXVNNIINT16INTRIN_H
|