@cpp-linter/clang-tidy-win32-x64 13.0.0 → 14.0.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/{13.0.0 → 14.0.0}/include/__clang_cuda_complex_builtins.h +3 -3
- package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_intrinsics.h +32 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_libdevice_declares.h +6 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_math.h +1 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_runtime_wrapper.h +62 -7
- package/lib/clang/14.0.0/include/__clang_cuda_texture_intrinsics.h +740 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_hip_runtime_wrapper.h +17 -4
- package/lib/clang/{13.0.0 → 14.0.0}/include/__wmmintrin_aes.h +1 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/altivec.h +202 -92
- package/lib/clang/{13.0.0 → 14.0.0}/include/ammintrin.h +4 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/amxintrin.h +17 -16
- package/lib/clang/{13.0.0 → 14.0.0}/include/arm_acle.h +6 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/arm_neon.h +4467 -4469
- package/lib/clang/14.0.0/include/arm_neon_sve_bridge.h +184 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx2intrin.h +181 -181
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512bf16intrin.h +3 -3
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512bwintrin.h +71 -71
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512dqintrin.h +365 -365
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512erintrin.h +102 -102
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512fintrin.h +1573 -1569
- package/lib/clang/14.0.0/include/avx512fp16intrin.h +3349 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vbmi2intrin.h +48 -48
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlbf16intrin.h +51 -3
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlbwintrin.h +94 -94
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vldqintrin.h +134 -134
- package/lib/clang/14.0.0/include/avx512vlfp16intrin.h +2068 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlintrin.h +563 -563
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlvbmi2intrin.h +96 -96
- package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlvnniintrin.h +8 -8
- package/lib/clang/{13.0.0 → 14.0.0}/include/avxintrin.h +189 -192
- package/lib/clang/{13.0.0 → 14.0.0}/include/cetintrin.h +10 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/cpuid.h +2 -1
- package/lib/clang/14.0.0/include/crc32intrin.h +100 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/emmintrin.h +21 -17
- package/lib/clang/{13.0.0 → 14.0.0}/include/f16cintrin.h +4 -4
- package/lib/clang/{13.0.0 → 14.0.0}/include/float.h +15 -6
- package/lib/clang/{13.0.0 → 14.0.0}/include/gfniintrin.h +47 -48
- package/lib/clang/{13.0.0 → 14.0.0}/include/hexagon_protos.h +0 -11
- package/lib/clang/{13.0.0 → 14.0.0}/include/hexagon_types.h +0 -32
- package/lib/clang/{13.0.0 → 14.0.0}/include/hvx_hexagon_protos.h +1200 -409
- package/lib/clang/{13.0.0 → 14.0.0}/include/ia32intrin.h +6 -6
- package/lib/clang/{13.0.0 → 14.0.0}/include/immintrin.h +26 -8
- package/lib/clang/{13.0.0 → 14.0.0}/include/intrin.h +24 -16
- package/lib/clang/{13.0.0 → 14.0.0}/include/keylockerintrin.h +2 -8
- package/lib/clang/{13.0.0 → 14.0.0}/include/limits.h +20 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/mmintrin.h +4 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/nmmintrin.h +4 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/opencl-c-base.h +69 -11
- package/lib/clang/{13.0.0 → 14.0.0}/include/opencl-c.h +1699 -459
- package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/complex +10 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/complex.h +9 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/pmmintrin.h +4 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/emmintrin.h +3 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/mm_malloc.h +2 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/mmintrin.h +3 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/pmmintrin.h +3 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/smmintrin.h +4 -3
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/tmmintrin.h +3 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/ppc_wrappers/xmmintrin.h +3 -2
- package/lib/clang/{13.0.0 → 14.0.0}/include/prfchwintrin.h +5 -2
- package/lib/clang/14.0.0/include/riscv_vector.h +95423 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/smmintrin.h +80 -159
- package/lib/clang/{13.0.0 → 14.0.0}/include/stdatomic.h +14 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/stdint.h +168 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/tmmintrin.h +10 -6
- package/lib/clang/{13.0.0 → 14.0.0}/include/unwind.h +2 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/vaesintrin.h +1 -1
- package/lib/clang/{13.0.0 → 14.0.0}/include/vpclmulqdqintrin.h +6 -6
- package/lib/clang/{13.0.0 → 14.0.0}/include/wasm_simd128.h +167 -24
- package/lib/clang/{13.0.0 → 14.0.0}/include/wmmintrin.h +4 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/x86gprintrin.h +12 -0
- package/lib/clang/{13.0.0 → 14.0.0}/include/xmmintrin.h +9 -5
- package/lib/clang/{13.0.0 → 14.0.0}/include/xopintrin.h +31 -31
- package/package.json +6 -6
- package/lib/clang/13.0.0/include/riscv_vector.h +0 -123865
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_builtin_vars.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_cmath.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_device_functions.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_cuda_math_forward_declares.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_hip_cmath.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_hip_libdevice_declares.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__clang_hip_math.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__stddef_max_align_t.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/__wmmintrin_pclmul.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/adxintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm64intr.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_bf16.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_cde.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_cmse.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_fp16.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_mve.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/arm_sve.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/armintr.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512bitalgintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512cdintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512ifmaintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512ifmavlintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512pfintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vbmiintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vbmivlintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlbitalgintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlcdintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vlvp2intersectintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vnniintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vp2intersectintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vpopcntdqintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avx512vpopcntdqvlintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/avxvnniintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/bmi2intrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/bmiintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/builtins.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/cet.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/cldemoteintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/clflushoptintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/clwbintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/clzerointrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/cuda_wrappers/algorithm +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/cuda_wrappers/complex +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/cuda_wrappers/new +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/enqcmdintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/fma4intrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/fmaintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/fxsrintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/hexagon_circ_brev_intrinsics.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/hresetintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/htmintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/htmxlintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/inttypes.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/invpcidintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/iso646.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/lwpintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/lzcntintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/mm3dnow.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/mm_malloc.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/module.modulemap +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/movdirintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/msa.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/mwaitxintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/cmath +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/complex_cmath.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/math.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/openmp_wrappers/new +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/pconfigintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/pkuintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/popcntintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/ptwriteintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/rdseedintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/rtmintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/s390intrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/serializeintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/sgxintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/shaintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/stdalign.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/stdarg.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/stdbool.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/stddef.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/stdnoreturn.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/tbmintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/tgmath.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/tsxldtrkintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/uintrintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/vadefs.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/varargs.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/vecintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/waitpkgintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/wbnoinvdintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/x86intrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/xsavecintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/xsaveintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/xsaveoptintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/xsavesintrin.h +0 -0
- /package/lib/clang/{13.0.0 → 14.0.0}/include/xtestintrin.h +0 -0
|
@@ -195,11 +195,12 @@
|
|
|
195
195
|
#define bit_PCONFIG 0x00040000
|
|
196
196
|
#define bit_IBT 0x00100000
|
|
197
197
|
#define bit_AMXBF16 0x00400000
|
|
198
|
+
#define bit_AVX512FP16 0x00800000
|
|
198
199
|
#define bit_AMXTILE 0x01000000
|
|
199
200
|
#define bit_AMXINT8 0x02000000
|
|
200
201
|
|
|
201
202
|
/* Features in %eax for leaf 7 sub-leaf 1 */
|
|
202
|
-
#define bit_AVXVNNI
|
|
203
|
+
#define bit_AVXVNNI 0x00000010
|
|
203
204
|
#define bit_AVX512BF16 0x00000020
|
|
204
205
|
#define bit_HRESET 0x00400000
|
|
205
206
|
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/*===---- crc32intrin.h - SSE4.2 Accumulate CRC32 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
|
+
|
|
10
|
+
#ifndef __CRC32INTRIN_H
|
|
11
|
+
#define __CRC32INTRIN_H
|
|
12
|
+
|
|
13
|
+
#define __DEFAULT_FN_ATTRS \
|
|
14
|
+
__attribute__((__always_inline__, __nodebug__, __target__("crc32")))
|
|
15
|
+
|
|
16
|
+
/// Adds the unsigned integer operand to the CRC-32C checksum of the
|
|
17
|
+
/// unsigned char operand.
|
|
18
|
+
///
|
|
19
|
+
/// \headerfile <x86intrin.h>
|
|
20
|
+
///
|
|
21
|
+
/// This intrinsic corresponds to the <c> CRC32B </c> instruction.
|
|
22
|
+
///
|
|
23
|
+
/// \param __C
|
|
24
|
+
/// An unsigned integer operand to add to the CRC-32C checksum of operand
|
|
25
|
+
/// \a __D.
|
|
26
|
+
/// \param __D
|
|
27
|
+
/// An unsigned 8-bit integer operand used to compute the CRC-32C checksum.
|
|
28
|
+
/// \returns The result of adding operand \a __C to the CRC-32C checksum of
|
|
29
|
+
/// operand \a __D.
|
|
30
|
+
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
31
|
+
_mm_crc32_u8(unsigned int __C, unsigned char __D)
|
|
32
|
+
{
|
|
33
|
+
return __builtin_ia32_crc32qi(__C, __D);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/// Adds the unsigned integer operand to the CRC-32C checksum of the
|
|
37
|
+
/// unsigned short operand.
|
|
38
|
+
///
|
|
39
|
+
/// \headerfile <x86intrin.h>
|
|
40
|
+
///
|
|
41
|
+
/// This intrinsic corresponds to the <c> CRC32W </c> instruction.
|
|
42
|
+
///
|
|
43
|
+
/// \param __C
|
|
44
|
+
/// An unsigned integer operand to add to the CRC-32C checksum of operand
|
|
45
|
+
/// \a __D.
|
|
46
|
+
/// \param __D
|
|
47
|
+
/// An unsigned 16-bit integer operand used to compute the CRC-32C checksum.
|
|
48
|
+
/// \returns The result of adding operand \a __C to the CRC-32C checksum of
|
|
49
|
+
/// operand \a __D.
|
|
50
|
+
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
51
|
+
_mm_crc32_u16(unsigned int __C, unsigned short __D)
|
|
52
|
+
{
|
|
53
|
+
return __builtin_ia32_crc32hi(__C, __D);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/// Adds the first unsigned integer operand to the CRC-32C checksum of
|
|
57
|
+
/// the second unsigned integer operand.
|
|
58
|
+
///
|
|
59
|
+
/// \headerfile <x86intrin.h>
|
|
60
|
+
///
|
|
61
|
+
/// This intrinsic corresponds to the <c> CRC32L </c> instruction.
|
|
62
|
+
///
|
|
63
|
+
/// \param __C
|
|
64
|
+
/// An unsigned integer operand to add to the CRC-32C checksum of operand
|
|
65
|
+
/// \a __D.
|
|
66
|
+
/// \param __D
|
|
67
|
+
/// An unsigned 32-bit integer operand used to compute the CRC-32C checksum.
|
|
68
|
+
/// \returns The result of adding operand \a __C to the CRC-32C checksum of
|
|
69
|
+
/// operand \a __D.
|
|
70
|
+
static __inline__ unsigned int __DEFAULT_FN_ATTRS
|
|
71
|
+
_mm_crc32_u32(unsigned int __C, unsigned int __D)
|
|
72
|
+
{
|
|
73
|
+
return __builtin_ia32_crc32si(__C, __D);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
#ifdef __x86_64__
|
|
77
|
+
/// Adds the unsigned integer operand to the CRC-32C checksum of the
|
|
78
|
+
/// unsigned 64-bit integer operand.
|
|
79
|
+
///
|
|
80
|
+
/// \headerfile <x86intrin.h>
|
|
81
|
+
///
|
|
82
|
+
/// This intrinsic corresponds to the <c> CRC32Q </c> instruction.
|
|
83
|
+
///
|
|
84
|
+
/// \param __C
|
|
85
|
+
/// An unsigned integer operand to add to the CRC-32C checksum of operand
|
|
86
|
+
/// \a __D.
|
|
87
|
+
/// \param __D
|
|
88
|
+
/// An unsigned 64-bit integer operand used to compute the CRC-32C checksum.
|
|
89
|
+
/// \returns The result of adding operand \a __C to the CRC-32C checksum of
|
|
90
|
+
/// operand \a __D.
|
|
91
|
+
static __inline__ unsigned long long __DEFAULT_FN_ATTRS
|
|
92
|
+
_mm_crc32_u64(unsigned long long __C, unsigned long long __D)
|
|
93
|
+
{
|
|
94
|
+
return __builtin_ia32_crc32di(__C, __D);
|
|
95
|
+
}
|
|
96
|
+
#endif /* __x86_64__ */
|
|
97
|
+
|
|
98
|
+
#undef __DEFAULT_FN_ATTRS
|
|
99
|
+
|
|
100
|
+
#endif /* __CRC32INTRIN_H */
|
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
#ifndef __EMMINTRIN_H
|
|
11
11
|
#define __EMMINTRIN_H
|
|
12
12
|
|
|
13
|
+
#if !defined(__i386__) && !defined(__x86_64__)
|
|
14
|
+
#error "This header is only meant to be used on x86 and x64 architecture"
|
|
15
|
+
#endif
|
|
16
|
+
|
|
13
17
|
#include <xmmintrin.h>
|
|
14
18
|
|
|
15
19
|
typedef double __m128d __attribute__((__vector_size__(16), __aligned__(16)));
|
|
@@ -2371,7 +2375,7 @@ _mm_madd_epi16(__m128i __a, __m128i __b)
|
|
|
2371
2375
|
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
2372
2376
|
_mm_max_epi16(__m128i __a, __m128i __b)
|
|
2373
2377
|
{
|
|
2374
|
-
return (__m128i)
|
|
2378
|
+
return (__m128i)__builtin_elementwise_max((__v8hi)__a, (__v8hi)__b);
|
|
2375
2379
|
}
|
|
2376
2380
|
|
|
2377
2381
|
/// Compares corresponding elements of two 128-bit unsigned [16 x i8]
|
|
@@ -2391,7 +2395,7 @@ _mm_max_epi16(__m128i __a, __m128i __b)
|
|
|
2391
2395
|
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
2392
2396
|
_mm_max_epu8(__m128i __a, __m128i __b)
|
|
2393
2397
|
{
|
|
2394
|
-
return (__m128i)
|
|
2398
|
+
return (__m128i)__builtin_elementwise_max((__v16qu)__a, (__v16qu)__b);
|
|
2395
2399
|
}
|
|
2396
2400
|
|
|
2397
2401
|
/// Compares corresponding elements of two 128-bit signed [8 x i16]
|
|
@@ -2411,7 +2415,7 @@ _mm_max_epu8(__m128i __a, __m128i __b)
|
|
|
2411
2415
|
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
2412
2416
|
_mm_min_epi16(__m128i __a, __m128i __b)
|
|
2413
2417
|
{
|
|
2414
|
-
return (__m128i)
|
|
2418
|
+
return (__m128i)__builtin_elementwise_min((__v8hi)__a, (__v8hi)__b);
|
|
2415
2419
|
}
|
|
2416
2420
|
|
|
2417
2421
|
/// Compares corresponding elements of two 128-bit unsigned [16 x i8]
|
|
@@ -2431,7 +2435,7 @@ _mm_min_epi16(__m128i __a, __m128i __b)
|
|
|
2431
2435
|
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
2432
2436
|
_mm_min_epu8(__m128i __a, __m128i __b)
|
|
2433
2437
|
{
|
|
2434
|
-
return (__m128i)
|
|
2438
|
+
return (__m128i)__builtin_elementwise_min((__v16qu)__a, (__v16qu)__b);
|
|
2435
2439
|
}
|
|
2436
2440
|
|
|
2437
2441
|
/// Multiplies the corresponding elements of two signed [8 x i16]
|
|
@@ -2818,10 +2822,10 @@ _mm_xor_si128(__m128i __a, __m128i __b)
|
|
|
2818
2822
|
/// \a a.
|
|
2819
2823
|
/// \returns A 128-bit integer vector containing the left-shifted value.
|
|
2820
2824
|
#define _mm_slli_si128(a, imm) \
|
|
2821
|
-
(__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm))
|
|
2825
|
+
((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
|
|
2822
2826
|
|
|
2823
2827
|
#define _mm_bslli_si128(a, imm) \
|
|
2824
|
-
(__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm))
|
|
2828
|
+
((__m128i)__builtin_ia32_pslldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
|
|
2825
2829
|
|
|
2826
2830
|
/// Left-shifts each 16-bit value in the 128-bit integer vector operand
|
|
2827
2831
|
/// by the specified number of bits. Low-order bits are cleared.
|
|
@@ -3035,10 +3039,10 @@ _mm_sra_epi32(__m128i __a, __m128i __count)
|
|
|
3035
3039
|
/// \a a.
|
|
3036
3040
|
/// \returns A 128-bit integer vector containing the right-shifted value.
|
|
3037
3041
|
#define _mm_srli_si128(a, imm) \
|
|
3038
|
-
(__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm))
|
|
3042
|
+
((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
|
|
3039
3043
|
|
|
3040
3044
|
#define _mm_bsrli_si128(a, imm) \
|
|
3041
|
-
(__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm))
|
|
3045
|
+
((__m128i)__builtin_ia32_psrldqi128_byteshift((__v2di)(__m128i)(a), (int)(imm)))
|
|
3042
3046
|
|
|
3043
3047
|
/// Right-shifts each of 16-bit values in the 128-bit integer vector
|
|
3044
3048
|
/// operand by the specified number of bits. High-order bits are cleared.
|
|
@@ -4356,8 +4360,8 @@ _mm_packus_epi16(__m128i __a, __m128i __b)
|
|
|
4356
4360
|
/// \returns An integer, whose lower 16 bits are selected from the 128-bit
|
|
4357
4361
|
/// integer vector parameter and the remaining bits are assigned zeros.
|
|
4358
4362
|
#define _mm_extract_epi16(a, imm) \
|
|
4359
|
-
(int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \
|
|
4360
|
-
|
|
4363
|
+
((int)(unsigned short)__builtin_ia32_vec_ext_v8hi((__v8hi)(__m128i)(a), \
|
|
4364
|
+
(int)(imm)))
|
|
4361
4365
|
|
|
4362
4366
|
/// Constructs a 128-bit integer vector by first making a copy of the
|
|
4363
4367
|
/// 128-bit integer vector parameter, and then inserting the lower 16 bits
|
|
@@ -4380,8 +4384,8 @@ _mm_packus_epi16(__m128i __a, __m128i __b)
|
|
|
4380
4384
|
/// lower 16 bits of \a __b are written.
|
|
4381
4385
|
/// \returns A 128-bit integer vector containing the constructed values.
|
|
4382
4386
|
#define _mm_insert_epi16(a, b, imm) \
|
|
4383
|
-
(__m128i)__builtin_ia32_vec_set_v8hi((__v8hi)(__m128i)(a), (int)(b), \
|
|
4384
|
-
|
|
4387
|
+
((__m128i)__builtin_ia32_vec_set_v8hi((__v8hi)(__m128i)(a), (int)(b), \
|
|
4388
|
+
(int)(imm)))
|
|
4385
4389
|
|
|
4386
4390
|
/// Copies the values of the most significant bits from each 8-bit
|
|
4387
4391
|
/// element in a 128-bit integer vector of [16 x i8] to create a 16-bit mask
|
|
@@ -4430,7 +4434,7 @@ _mm_movemask_epi8(__m128i __a)
|
|
|
4430
4434
|
/// 11: assign values from bits [127:96] of \a a.
|
|
4431
4435
|
/// \returns A 128-bit integer vector containing the shuffled values.
|
|
4432
4436
|
#define _mm_shuffle_epi32(a, imm) \
|
|
4433
|
-
(__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm))
|
|
4437
|
+
((__m128i)__builtin_ia32_pshufd((__v4si)(__m128i)(a), (int)(imm)))
|
|
4434
4438
|
|
|
4435
4439
|
/// Constructs a 128-bit integer vector by shuffling four lower 16-bit
|
|
4436
4440
|
/// elements of a 128-bit integer vector of [8 x i16], using the immediate
|
|
@@ -4460,7 +4464,7 @@ _mm_movemask_epi8(__m128i __a)
|
|
|
4460
4464
|
/// 11: assign values from bits [63:48] of \a a. \n
|
|
4461
4465
|
/// \returns A 128-bit integer vector containing the shuffled values.
|
|
4462
4466
|
#define _mm_shufflelo_epi16(a, imm) \
|
|
4463
|
-
(__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm))
|
|
4467
|
+
((__m128i)__builtin_ia32_pshuflw((__v8hi)(__m128i)(a), (int)(imm)))
|
|
4464
4468
|
|
|
4465
4469
|
/// Constructs a 128-bit integer vector by shuffling four upper 16-bit
|
|
4466
4470
|
/// elements of a 128-bit integer vector of [8 x i16], using the immediate
|
|
@@ -4490,7 +4494,7 @@ _mm_movemask_epi8(__m128i __a)
|
|
|
4490
4494
|
/// 11: assign values from bits [127:112] of \a a. \n
|
|
4491
4495
|
/// \returns A 128-bit integer vector containing the shuffled values.
|
|
4492
4496
|
#define _mm_shufflehi_epi16(a, imm) \
|
|
4493
|
-
(__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm))
|
|
4497
|
+
((__m128i)__builtin_ia32_pshufhw((__v8hi)(__m128i)(a), (int)(imm)))
|
|
4494
4498
|
|
|
4495
4499
|
/// Unpacks the high-order (index 8-15) values from two 128-bit vectors
|
|
4496
4500
|
/// of [16 x i8] and interleaves them into a 128-bit vector of [16 x i8].
|
|
@@ -4844,8 +4848,8 @@ _mm_movemask_pd(__m128d __a)
|
|
|
4844
4848
|
/// Bit[1] = 1: upper element of \a b copied to upper element of result. \n
|
|
4845
4849
|
/// \returns A 128-bit vector of [2 x double] containing the shuffled values.
|
|
4846
4850
|
#define _mm_shuffle_pd(a, b, i) \
|
|
4847
|
-
(__m128d)__builtin_ia32_shufpd((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \
|
|
4848
|
-
|
|
4851
|
+
((__m128d)__builtin_ia32_shufpd((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \
|
|
4852
|
+
(int)(i)))
|
|
4849
4853
|
|
|
4850
4854
|
/// Casts a 128-bit floating-point vector of [2 x double] into a 128-bit
|
|
4851
4855
|
/// floating-point vector of [4 x float].
|
|
@@ -66,8 +66,8 @@ _cvtsh_ss(unsigned short __a)
|
|
|
66
66
|
/// 1XX: Use MXCSR.RC for rounding
|
|
67
67
|
/// \returns The converted 16-bit half-precision float value.
|
|
68
68
|
#define _cvtss_sh(a, imm) \
|
|
69
|
-
(unsigned short)(((__v8hi)__builtin_ia32_vcvtps2ph((__v4sf){a, 0, 0, 0}, \
|
|
70
|
-
(imm)))[0])
|
|
69
|
+
((unsigned short)(((__v8hi)__builtin_ia32_vcvtps2ph((__v4sf){a, 0, 0, 0}, \
|
|
70
|
+
(imm)))[0]))
|
|
71
71
|
|
|
72
72
|
/// Converts a 128-bit vector containing 32-bit float values into a
|
|
73
73
|
/// 128-bit vector containing 16-bit half-precision float values.
|
|
@@ -93,7 +93,7 @@ _cvtsh_ss(unsigned short __a)
|
|
|
93
93
|
/// values. The lower 64 bits are used to store the converted 16-bit
|
|
94
94
|
/// half-precision floating-point values.
|
|
95
95
|
#define _mm_cvtps_ph(a, imm) \
|
|
96
|
-
(__m128i)__builtin_ia32_vcvtps2ph((__v4sf)(__m128)(a), (imm))
|
|
96
|
+
((__m128i)__builtin_ia32_vcvtps2ph((__v4sf)(__m128)(a), (imm)))
|
|
97
97
|
|
|
98
98
|
/// Converts a 128-bit vector containing 16-bit half-precision float
|
|
99
99
|
/// values into a 128-bit vector containing 32-bit float values.
|
|
@@ -136,7 +136,7 @@ _mm_cvtph_ps(__m128i __a)
|
|
|
136
136
|
/// \returns A 128-bit vector containing the converted 16-bit half-precision
|
|
137
137
|
/// float values.
|
|
138
138
|
#define _mm256_cvtps_ph(a, imm) \
|
|
139
|
-
(__m128i)__builtin_ia32_vcvtps2ph256((__v8sf)(__m256)(a), (imm))
|
|
139
|
+
((__m128i)__builtin_ia32_vcvtps2ph256((__v8sf)(__m256)(a), (imm)))
|
|
140
140
|
|
|
141
141
|
/// Converts a 128-bit vector containing 16-bit half-precision float
|
|
142
142
|
/// values into a 256-bit vector of [8 x float].
|
|
@@ -14,10 +14,11 @@
|
|
|
14
14
|
* additional definitions provided for Windows.
|
|
15
15
|
* For more details see http://msdn.microsoft.com/en-us/library/y0ybw9fy.aspx
|
|
16
16
|
*
|
|
17
|
-
* Also fall back on Darwin to allow additional definitions and
|
|
17
|
+
* Also fall back on Darwin and AIX to allow additional definitions and
|
|
18
18
|
* implementation-defined values.
|
|
19
19
|
*/
|
|
20
|
-
#if (defined(__APPLE__) ||
|
|
20
|
+
#if (defined(__APPLE__) || defined(__MINGW32__) || defined(_MSC_VER) || \
|
|
21
|
+
defined(_AIX)) && \
|
|
21
22
|
__STDC_HOSTED__ && __has_include_next(<float.h>)
|
|
22
23
|
|
|
23
24
|
/* Prior to Apple's 10.7 SDK, float.h SDK header used to apply an extra level
|
|
@@ -37,7 +38,9 @@
|
|
|
37
38
|
# undef FLT_MANT_DIG
|
|
38
39
|
# undef DBL_MANT_DIG
|
|
39
40
|
# undef LDBL_MANT_DIG
|
|
40
|
-
# if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__) ||
|
|
41
|
+
# if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__) || \
|
|
42
|
+
__cplusplus >= 201103L || \
|
|
43
|
+
(__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE))
|
|
41
44
|
# undef DECIMAL_DIG
|
|
42
45
|
# endif
|
|
43
46
|
# undef FLT_DIG
|
|
@@ -64,7 +67,9 @@
|
|
|
64
67
|
# undef FLT_MIN
|
|
65
68
|
# undef DBL_MIN
|
|
66
69
|
# undef LDBL_MIN
|
|
67
|
-
# if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__) ||
|
|
70
|
+
# if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__) || \
|
|
71
|
+
__cplusplus >= 201703L || \
|
|
72
|
+
(__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE))
|
|
68
73
|
# undef FLT_TRUE_MIN
|
|
69
74
|
# undef DBL_TRUE_MIN
|
|
70
75
|
# undef LDBL_TRUE_MIN
|
|
@@ -87,7 +92,9 @@
|
|
|
87
92
|
#define DBL_MANT_DIG __DBL_MANT_DIG__
|
|
88
93
|
#define LDBL_MANT_DIG __LDBL_MANT_DIG__
|
|
89
94
|
|
|
90
|
-
#if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__) ||
|
|
95
|
+
#if __STDC_VERSION__ >= 199901L || !defined(__STRICT_ANSI__) || \
|
|
96
|
+
__cplusplus >= 201103L || \
|
|
97
|
+
(__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE))
|
|
91
98
|
# define DECIMAL_DIG __DECIMAL_DIG__
|
|
92
99
|
#endif
|
|
93
100
|
|
|
@@ -123,7 +130,9 @@
|
|
|
123
130
|
#define DBL_MIN __DBL_MIN__
|
|
124
131
|
#define LDBL_MIN __LDBL_MIN__
|
|
125
132
|
|
|
126
|
-
#if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__) ||
|
|
133
|
+
#if __STDC_VERSION__ >= 201112L || !defined(__STRICT_ANSI__) || \
|
|
134
|
+
__cplusplus >= 201703L || \
|
|
135
|
+
(__STDC_HOSTED__ && defined(_AIX) && defined(_ALL_SOURCE))
|
|
127
136
|
# define FLT_TRUE_MIN __FLT_DENORM_MIN__
|
|
128
137
|
# define DBL_TRUE_MIN __DBL_DENORM_MIN__
|
|
129
138
|
# define LDBL_TRUE_MIN __LDBL_DENORM_MIN__
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
#define __DEFAULT_FN_ATTRS_VL256 __attribute__((__always_inline__, __nodebug__, __target__("avx512bw,avx512vl,gfni"), __min_vector_width__(256)))
|
|
29
29
|
|
|
30
30
|
#define _mm_gf2p8affineinv_epi64_epi8(A, B, I) \
|
|
31
|
-
(__m128i)__builtin_ia32_vgf2p8affineinvqb_v16qi((__v16qi)(__m128i)(A),
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
((__m128i)__builtin_ia32_vgf2p8affineinvqb_v16qi((__v16qi)(__m128i)(A), \
|
|
32
|
+
(__v16qi)(__m128i)(B), \
|
|
33
|
+
(char)(I)))
|
|
34
34
|
|
|
35
35
|
#define _mm_gf2p8affine_epi64_epi8(A, B, I) \
|
|
36
|
-
(__m128i)__builtin_ia32_vgf2p8affineqb_v16qi((__v16qi)(__m128i)(A),
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
((__m128i)__builtin_ia32_vgf2p8affineqb_v16qi((__v16qi)(__m128i)(A), \
|
|
37
|
+
(__v16qi)(__m128i)(B), \
|
|
38
|
+
(char)(I)))
|
|
39
39
|
|
|
40
40
|
static __inline__ __m128i __DEFAULT_FN_ATTRS
|
|
41
41
|
_mm_gf2p8mul_epi8(__m128i __A, __m128i __B)
|
|
@@ -46,14 +46,14 @@ _mm_gf2p8mul_epi8(__m128i __A, __m128i __B)
|
|
|
46
46
|
|
|
47
47
|
#ifdef __AVXINTRIN_H
|
|
48
48
|
#define _mm256_gf2p8affineinv_epi64_epi8(A, B, I) \
|
|
49
|
-
(__m256i)__builtin_ia32_vgf2p8affineinvqb_v32qi((__v32qi)(__m256i)(A),
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
((__m256i)__builtin_ia32_vgf2p8affineinvqb_v32qi((__v32qi)(__m256i)(A), \
|
|
50
|
+
(__v32qi)(__m256i)(B), \
|
|
51
|
+
(char)(I)))
|
|
52
52
|
|
|
53
53
|
#define _mm256_gf2p8affine_epi64_epi8(A, B, I) \
|
|
54
|
-
(__m256i)__builtin_ia32_vgf2p8affineqb_v32qi((__v32qi)(__m256i)(A),
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
((__m256i)__builtin_ia32_vgf2p8affineqb_v32qi((__v32qi)(__m256i)(A), \
|
|
55
|
+
(__v32qi)(__m256i)(B), \
|
|
56
|
+
(char)(I)))
|
|
57
57
|
|
|
58
58
|
static __inline__ __m256i __DEFAULT_FN_ATTRS_Y
|
|
59
59
|
_mm256_gf2p8mul_epi8(__m256i __A, __m256i __B)
|
|
@@ -65,32 +65,32 @@ _mm256_gf2p8mul_epi8(__m256i __A, __m256i __B)
|
|
|
65
65
|
|
|
66
66
|
#ifdef __AVX512BWINTRIN_H
|
|
67
67
|
#define _mm512_gf2p8affineinv_epi64_epi8(A, B, I) \
|
|
68
|
-
(__m512i)__builtin_ia32_vgf2p8affineinvqb_v64qi((__v64qi)(__m512i)(A),
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
((__m512i)__builtin_ia32_vgf2p8affineinvqb_v64qi((__v64qi)(__m512i)(A), \
|
|
69
|
+
(__v64qi)(__m512i)(B), \
|
|
70
|
+
(char)(I)))
|
|
71
71
|
|
|
72
72
|
#define _mm512_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \
|
|
74
|
+
(__v64qi)_mm512_gf2p8affineinv_epi64_epi8(A, B, I), \
|
|
75
|
+
(__v64qi)(__m512i)(S)))
|
|
76
76
|
|
|
77
77
|
#define _mm512_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \
|
|
78
|
-
|
|
79
|
-
|
|
78
|
+
_mm512_mask_gf2p8affineinv_epi64_epi8((__m512i)_mm512_setzero_si512(), \
|
|
79
|
+
U, A, B, I)
|
|
80
80
|
|
|
81
81
|
#define _mm512_gf2p8affine_epi64_epi8(A, B, I) \
|
|
82
|
-
(__m512i)__builtin_ia32_vgf2p8affineqb_v64qi((__v64qi)(__m512i)(A),
|
|
83
|
-
|
|
84
|
-
|
|
82
|
+
((__m512i)__builtin_ia32_vgf2p8affineqb_v64qi((__v64qi)(__m512i)(A), \
|
|
83
|
+
(__v64qi)(__m512i)(B), \
|
|
84
|
+
(char)(I)))
|
|
85
85
|
|
|
86
86
|
#define _mm512_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
((__m512i)__builtin_ia32_selectb_512((__mmask64)(U), \
|
|
88
|
+
(__v64qi)_mm512_gf2p8affine_epi64_epi8((A), (B), (I)), \
|
|
89
|
+
(__v64qi)(__m512i)(S)))
|
|
90
90
|
|
|
91
91
|
#define _mm512_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
_mm512_mask_gf2p8affine_epi64_epi8((__m512i)_mm512_setzero_si512(), \
|
|
93
|
+
U, A, B, I)
|
|
94
94
|
|
|
95
95
|
static __inline__ __m512i __DEFAULT_FN_ATTRS_Z
|
|
96
96
|
_mm512_gf2p8mul_epi8(__m512i __A, __m512i __B)
|
|
@@ -117,40 +117,39 @@ _mm512_maskz_gf2p8mul_epi8(__mmask64 __U, __m512i __A, __m512i __B)
|
|
|
117
117
|
|
|
118
118
|
#ifdef __AVX512VLBWINTRIN_H
|
|
119
119
|
#define _mm_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \
|
|
120
|
-
(__m128i)__builtin_ia32_selectb_128((__mmask16)(U),
|
|
121
|
-
|
|
122
|
-
|
|
120
|
+
((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \
|
|
121
|
+
(__v16qi)_mm_gf2p8affineinv_epi64_epi8(A, B, I), \
|
|
122
|
+
(__v16qi)(__m128i)(S)))
|
|
123
123
|
|
|
124
124
|
#define _mm_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
_mm_mask_gf2p8affineinv_epi64_epi8((__m128i)_mm_setzero_si128(), \
|
|
126
|
+
U, A, B, I)
|
|
127
127
|
|
|
128
128
|
#define _mm256_mask_gf2p8affineinv_epi64_epi8(S, U, A, B, I) \
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \
|
|
130
|
+
(__v32qi)_mm256_gf2p8affineinv_epi64_epi8(A, B, I), \
|
|
131
|
+
(__v32qi)(__m256i)(S)))
|
|
132
132
|
|
|
133
133
|
#define _mm256_maskz_gf2p8affineinv_epi64_epi8(U, A, B, I) \
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
_mm256_mask_gf2p8affineinv_epi64_epi8((__m256i)_mm256_setzero_si256(), \
|
|
135
|
+
U, A, B, I)
|
|
136
136
|
|
|
137
137
|
#define _mm_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \
|
|
138
|
-
(__m128i)__builtin_ia32_selectb_128((__mmask16)(U),
|
|
139
|
-
|
|
140
|
-
|
|
138
|
+
((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \
|
|
139
|
+
(__v16qi)_mm_gf2p8affine_epi64_epi8(A, B, I), \
|
|
140
|
+
(__v16qi)(__m128i)(S)))
|
|
141
141
|
|
|
142
142
|
#define _mm_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \
|
|
143
|
-
|
|
144
|
-
U, A, B, I)
|
|
143
|
+
_mm_mask_gf2p8affine_epi64_epi8((__m128i)_mm_setzero_si128(), U, A, B, I)
|
|
145
144
|
|
|
146
145
|
#define _mm256_mask_gf2p8affine_epi64_epi8(S, U, A, B, I) \
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
146
|
+
((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \
|
|
147
|
+
(__v32qi)_mm256_gf2p8affine_epi64_epi8(A, B, I), \
|
|
148
|
+
(__v32qi)(__m256i)(S)))
|
|
150
149
|
|
|
151
150
|
#define _mm256_maskz_gf2p8affine_epi64_epi8(U, A, B, I) \
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
_mm256_mask_gf2p8affine_epi64_epi8((__m256i)_mm256_setzero_si256(), \
|
|
152
|
+
U, A, B, I)
|
|
154
153
|
|
|
155
154
|
static __inline__ __m128i __DEFAULT_FN_ATTRS_VL128
|
|
156
155
|
_mm_mask_gf2p8mul_epi8(__m128i __S, __mmask16 __U, __m128i __A, __m128i __B)
|
|
@@ -8003,17 +8003,6 @@
|
|
|
8003
8003
|
#define Q6_P_vtrunohb_PP __builtin_HEXAGON_S6_vtrunohb_ppp
|
|
8004
8004
|
#endif /* __HEXAGON_ARCH___ >= 62 */
|
|
8005
8005
|
|
|
8006
|
-
#if __HEXAGON_ARCH__ >= 62
|
|
8007
|
-
/* ==========================================================================
|
|
8008
|
-
Assembly Syntax: Vd32=vmem(Rt32):nt
|
|
8009
|
-
C Intrinsic Prototype: HVX_Vector Q6_V_vmem_R_nt(Word32 Rt)
|
|
8010
|
-
Instruction Type: MAPPING
|
|
8011
|
-
Execution Slots: SLOT0123
|
|
8012
|
-
========================================================================== */
|
|
8013
|
-
|
|
8014
|
-
#define Q6_V_vmem_R_nt __builtin_HEXAGON_V6_ldntnt0
|
|
8015
|
-
#endif /* __HEXAGON_ARCH___ >= 62 */
|
|
8016
|
-
|
|
8017
8006
|
#if __HEXAGON_ARCH__ >= 65
|
|
8018
8007
|
/* ==========================================================================
|
|
8019
8008
|
Assembly Syntax: Pd4=!any8(vcmpb.eq(Rss32,Rtt32))
|
|
@@ -1177,37 +1177,6 @@ private:
|
|
|
1177
1177
|
|
|
1178
1178
|
#endif /* __cplusplus */
|
|
1179
1179
|
|
|
1180
|
-
// V65 Silver types
|
|
1181
|
-
#if __Q6S_ARCH__ >= 65
|
|
1182
|
-
// Silver vector types are 128 bytes, and pairs are 256. The vector predicate
|
|
1183
|
-
// types are 16 bytes and 32 bytes for pairs.
|
|
1184
|
-
typedef long HEXAGON_VecPred128 __attribute__((__vector_size__(16)))
|
|
1185
|
-
__attribute__((aligned(128)));
|
|
1186
|
-
|
|
1187
|
-
typedef long HEXAGON_VecPred256 __attribute__((__vector_size__(32)))
|
|
1188
|
-
__attribute__((aligned(128)));
|
|
1189
|
-
|
|
1190
|
-
typedef long HEXAGON_Vect1024 __attribute__((__vector_size__(128)))
|
|
1191
|
-
__attribute__((aligned(128)));
|
|
1192
|
-
|
|
1193
|
-
typedef long HEXAGON_Vect2048 __attribute__((__vector_size__(256)))
|
|
1194
|
-
__attribute__((aligned(256)));
|
|
1195
|
-
|
|
1196
|
-
typedef long HEXAGON_UVect1024 __attribute__((__vector_size__(128)))
|
|
1197
|
-
__attribute__((aligned(4)));
|
|
1198
|
-
|
|
1199
|
-
typedef long HEXAGON_UVect2048 __attribute__((__vector_size__(256)))
|
|
1200
|
-
__attribute__((aligned(4)));
|
|
1201
|
-
|
|
1202
|
-
#define Q6S_VectorPredPair HEXAGON_VecPred256
|
|
1203
|
-
#define Q6S_VectorPred HEXAGON_VecPred128
|
|
1204
|
-
#define Q6S_Vector HEXAGON_Vect1024
|
|
1205
|
-
#define Q6S_VectorPair HEXAGON_Vect2048
|
|
1206
|
-
#define Q6S_UVector HEXAGON_UVect1024
|
|
1207
|
-
#define Q6S_UVectorPair HEXAGON_UVect2048
|
|
1208
|
-
|
|
1209
|
-
#else /* __Q6S_ARCH__ >= 65 */
|
|
1210
|
-
|
|
1211
1180
|
// V65 Vector types
|
|
1212
1181
|
#if __HVX_ARCH__ >= 65
|
|
1213
1182
|
#if defined __HVX__ && (__HVX_LENGTH__ == 128)
|
|
@@ -1256,7 +1225,6 @@ private:
|
|
|
1256
1225
|
#endif /* defined __HVX__ && (__HVX_LENGTH__ == 64) */
|
|
1257
1226
|
#endif /* defined __HVX__ && (__HVX_LENGTH__ == 128) */
|
|
1258
1227
|
#endif /* __HVX_ARCH__ >= 65 */
|
|
1259
|
-
#endif /* __Q6S_ARCH__ >= 65 */
|
|
1260
1228
|
|
|
1261
1229
|
/* Predicates */
|
|
1262
1230
|
|