@cpp-linter/clang-tidy-win32-x64 12.0.1
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/LICENSE.TXT +279 -0
- package/README.md +7 -0
- package/bin/clang-tidy.exe +4 -0
- package/lib/clang/12.0.1/include/__clang_cuda_builtin_vars.h +121 -0
- package/lib/clang/12.0.1/include/__clang_cuda_cmath.h +512 -0
- package/lib/clang/12.0.1/include/__clang_cuda_complex_builtins.h +285 -0
- package/lib/clang/12.0.1/include/__clang_cuda_device_functions.h +1486 -0
- package/lib/clang/12.0.1/include/__clang_cuda_intrinsics.h +486 -0
- package/lib/clang/12.0.1/include/__clang_cuda_libdevice_declares.h +462 -0
- package/lib/clang/12.0.1/include/__clang_cuda_math.h +348 -0
- package/lib/clang/12.0.1/include/__clang_cuda_math_forward_declares.h +284 -0
- package/lib/clang/12.0.1/include/__clang_cuda_runtime_wrapper.h +443 -0
- package/lib/clang/12.0.1/include/__clang_hip_cmath.h +664 -0
- package/lib/clang/12.0.1/include/__clang_hip_libdevice_declares.h +334 -0
- package/lib/clang/12.0.1/include/__clang_hip_math.h +1275 -0
- package/lib/clang/12.0.1/include/__clang_hip_runtime_wrapper.h +69 -0
- package/lib/clang/12.0.1/include/__stddef_max_align_t.h +27 -0
- package/lib/clang/12.0.1/include/__wmmintrin_aes.h +140 -0
- package/lib/clang/12.0.1/include/__wmmintrin_pclmul.h +48 -0
- package/lib/clang/12.0.1/include/adxintrin.h +72 -0
- package/lib/clang/12.0.1/include/altivec.h +18239 -0
- package/lib/clang/12.0.1/include/ammintrin.h +179 -0
- package/lib/clang/12.0.1/include/amxintrin.h +278 -0
- package/lib/clang/12.0.1/include/arm64intr.h +35 -0
- package/lib/clang/12.0.1/include/arm_acle.h +716 -0
- package/lib/clang/12.0.1/include/arm_bf16.h +20 -0
- package/lib/clang/12.0.1/include/arm_cde.h +410 -0
- package/lib/clang/12.0.1/include/arm_cmse.h +217 -0
- package/lib/clang/12.0.1/include/arm_fp16.h +596 -0
- package/lib/clang/12.0.1/include/arm_mve.h +19187 -0
- package/lib/clang/12.0.1/include/arm_neon.h +68982 -0
- package/lib/clang/12.0.1/include/arm_sve.h +18148 -0
- package/lib/clang/12.0.1/include/armintr.h +31 -0
- package/lib/clang/12.0.1/include/avx2intrin.h +1148 -0
- package/lib/clang/12.0.1/include/avx512bf16intrin.h +279 -0
- package/lib/clang/12.0.1/include/avx512bitalgintrin.h +83 -0
- package/lib/clang/12.0.1/include/avx512bwintrin.h +2024 -0
- package/lib/clang/12.0.1/include/avx512cdintrin.h +123 -0
- package/lib/clang/12.0.1/include/avx512dqintrin.h +1377 -0
- package/lib/clang/12.0.1/include/avx512erintrin.h +271 -0
- package/lib/clang/12.0.1/include/avx512fintrin.h +9618 -0
- package/lib/clang/12.0.1/include/avx512ifmaintrin.h +68 -0
- package/lib/clang/12.0.1/include/avx512ifmavlintrin.h +119 -0
- package/lib/clang/12.0.1/include/avx512pfintrin.h +97 -0
- package/lib/clang/12.0.1/include/avx512vbmi2intrin.h +357 -0
- package/lib/clang/12.0.1/include/avx512vbmiintrin.h +105 -0
- package/lib/clang/12.0.1/include/avx512vbmivlintrin.h +188 -0
- package/lib/clang/12.0.1/include/avx512vlbf16intrin.h +474 -0
- package/lib/clang/12.0.1/include/avx512vlbitalgintrin.h +145 -0
- package/lib/clang/12.0.1/include/avx512vlbwintrin.h +2809 -0
- package/lib/clang/12.0.1/include/avx512vlcdintrin.h +225 -0
- package/lib/clang/12.0.1/include/avx512vldqintrin.h +1167 -0
- package/lib/clang/12.0.1/include/avx512vlintrin.h +8445 -0
- package/lib/clang/12.0.1/include/avx512vlvbmi2intrin.h +689 -0
- package/lib/clang/12.0.1/include/avx512vlvnniintrin.h +304 -0
- package/lib/clang/12.0.1/include/avx512vlvp2intersectintrin.h +121 -0
- package/lib/clang/12.0.1/include/avx512vnniintrin.h +115 -0
- package/lib/clang/12.0.1/include/avx512vp2intersectintrin.h +77 -0
- package/lib/clang/12.0.1/include/avx512vpopcntdqintrin.h +54 -0
- package/lib/clang/12.0.1/include/avx512vpopcntdqvlintrin.h +91 -0
- package/lib/clang/12.0.1/include/avxintrin.h +5053 -0
- package/lib/clang/12.0.1/include/avxvnniintrin.h +225 -0
- package/lib/clang/12.0.1/include/bmi2intrin.h +81 -0
- package/lib/clang/12.0.1/include/bmiintrin.h +427 -0
- package/lib/clang/12.0.1/include/cet.h +66 -0
- package/lib/clang/12.0.1/include/cetintrin.h +99 -0
- package/lib/clang/12.0.1/include/cldemoteintrin.h +36 -0
- package/lib/clang/12.0.1/include/clflushoptintrin.h +27 -0
- package/lib/clang/12.0.1/include/clwbintrin.h +38 -0
- package/lib/clang/12.0.1/include/clzerointrin.h +36 -0
- package/lib/clang/12.0.1/include/cpuid.h +319 -0
- package/lib/clang/12.0.1/include/cuda_wrappers/algorithm +116 -0
- package/lib/clang/12.0.1/include/cuda_wrappers/complex +82 -0
- package/lib/clang/12.0.1/include/cuda_wrappers/new +106 -0
- package/lib/clang/12.0.1/include/emmintrin.h +4981 -0
- package/lib/clang/12.0.1/include/enqcmdintrin.h +63 -0
- package/lib/clang/12.0.1/include/f16cintrin.h +162 -0
- package/lib/clang/12.0.1/include/float.h +152 -0
- package/lib/clang/12.0.1/include/fma4intrin.h +218 -0
- package/lib/clang/12.0.1/include/fmaintrin.h +216 -0
- package/lib/clang/12.0.1/include/fxsrintrin.h +91 -0
- package/lib/clang/12.0.1/include/gfniintrin.h +193 -0
- package/lib/clang/12.0.1/include/hresetintrin.h +49 -0
- package/lib/clang/12.0.1/include/htmintrin.h +212 -0
- package/lib/clang/12.0.1/include/htmxlintrin.h +345 -0
- package/lib/clang/12.0.1/include/ia32intrin.h +441 -0
- package/lib/clang/12.0.1/include/immintrin.h +600 -0
- package/lib/clang/12.0.1/include/intrin.h +585 -0
- package/lib/clang/12.0.1/include/inttypes.h +97 -0
- package/lib/clang/12.0.1/include/invpcidintrin.h +23 -0
- package/lib/clang/12.0.1/include/iso646.h +27 -0
- package/lib/clang/12.0.1/include/keylockerintrin.h +506 -0
- package/lib/clang/12.0.1/include/limits.h +102 -0
- package/lib/clang/12.0.1/include/lwpintrin.h +136 -0
- package/lib/clang/12.0.1/include/lzcntintrin.h +104 -0
- package/lib/clang/12.0.1/include/mm3dnow.h +157 -0
- package/lib/clang/12.0.1/include/mm_malloc.h +67 -0
- package/lib/clang/12.0.1/include/mmintrin.h +1558 -0
- package/lib/clang/12.0.1/include/module.modulemap +164 -0
- package/lib/clang/12.0.1/include/movdirintrin.h +49 -0
- package/lib/clang/12.0.1/include/msa.h +573 -0
- package/lib/clang/12.0.1/include/mwaitxintrin.h +33 -0
- package/lib/clang/12.0.1/include/nmmintrin.h +16 -0
- package/lib/clang/12.0.1/include/opencl-c-base.h +589 -0
- package/lib/clang/12.0.1/include/opencl-c.h +17162 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/__clang_openmp_device_functions.h +42 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/cmath +78 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/complex +52 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/complex.h +27 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/complex_cmath.h +388 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/math.h +51 -0
- package/lib/clang/12.0.1/include/openmp_wrappers/new +70 -0
- package/lib/clang/12.0.1/include/pconfigintrin.h +40 -0
- package/lib/clang/12.0.1/include/pkuintrin.h +34 -0
- package/lib/clang/12.0.1/include/pmmintrin.h +290 -0
- package/lib/clang/12.0.1/include/popcntintrin.h +59 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/emmintrin.h +2324 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/mm_malloc.h +50 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/mmintrin.h +1450 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/pmmintrin.h +150 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/smmintrin.h +109 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/tmmintrin.h +495 -0
- package/lib/clang/12.0.1/include/ppc_wrappers/xmmintrin.h +1843 -0
- package/lib/clang/12.0.1/include/prfchwintrin.h +55 -0
- package/lib/clang/12.0.1/include/ptwriteintrin.h +37 -0
- package/lib/clang/12.0.1/include/rdseedintrin.h +42 -0
- package/lib/clang/12.0.1/include/rtmintrin.h +45 -0
- package/lib/clang/12.0.1/include/s390intrin.h +25 -0
- package/lib/clang/12.0.1/include/serializeintrin.h +30 -0
- package/lib/clang/12.0.1/include/sgxintrin.h +60 -0
- package/lib/clang/12.0.1/include/shaintrin.h +61 -0
- package/lib/clang/12.0.1/include/smmintrin.h +2430 -0
- package/lib/clang/12.0.1/include/stdalign.h +21 -0
- package/lib/clang/12.0.1/include/stdarg.h +35 -0
- package/lib/clang/12.0.1/include/stdatomic.h +176 -0
- package/lib/clang/12.0.1/include/stdbool.h +31 -0
- package/lib/clang/12.0.1/include/stddef.h +121 -0
- package/lib/clang/12.0.1/include/stdint.h +693 -0
- package/lib/clang/12.0.1/include/stdnoreturn.h +16 -0
- package/lib/clang/12.0.1/include/tbmintrin.h +140 -0
- package/lib/clang/12.0.1/include/tgmath.h +1368 -0
- package/lib/clang/12.0.1/include/tmmintrin.h +771 -0
- package/lib/clang/12.0.1/include/tsxldtrkintrin.h +56 -0
- package/lib/clang/12.0.1/include/uintrintrin.h +150 -0
- package/lib/clang/12.0.1/include/unwind.h +327 -0
- package/lib/clang/12.0.1/include/vadefs.h +51 -0
- package/lib/clang/12.0.1/include/vaesintrin.h +84 -0
- package/lib/clang/12.0.1/include/varargs.h +12 -0
- package/lib/clang/12.0.1/include/vecintrin.h +10998 -0
- package/lib/clang/12.0.1/include/vpclmulqdqintrin.h +28 -0
- package/lib/clang/12.0.1/include/waitpkgintrin.h +42 -0
- package/lib/clang/12.0.1/include/wasm_simd128.h +1167 -0
- package/lib/clang/12.0.1/include/wbnoinvdintrin.h +24 -0
- package/lib/clang/12.0.1/include/wmmintrin.h +19 -0
- package/lib/clang/12.0.1/include/x86gprintrin.h +23 -0
- package/lib/clang/12.0.1/include/x86intrin.h +63 -0
- package/lib/clang/12.0.1/include/xmmintrin.h +3008 -0
- package/lib/clang/12.0.1/include/xopintrin.h +770 -0
- package/lib/clang/12.0.1/include/xsavecintrin.h +34 -0
- package/lib/clang/12.0.1/include/xsaveintrin.h +63 -0
- package/lib/clang/12.0.1/include/xsaveoptintrin.h +34 -0
- package/lib/clang/12.0.1/include/xsavesintrin.h +44 -0
- package/lib/clang/12.0.1/include/xtestintrin.h +27 -0
- package/package.json +32 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/*===------------- avx512vbmiintrin.h - VBMI intrinsics ------------------===
|
|
2
|
+
*
|
|
3
|
+
*
|
|
4
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
5
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
7
|
+
*
|
|
8
|
+
*===-----------------------------------------------------------------------===
|
|
9
|
+
*/
|
|
10
|
+
#ifndef __IMMINTRIN_H
|
|
11
|
+
#error "Never use <avx512vbmiintrin.h> directly; include <immintrin.h> instead."
|
|
12
|
+
#endif
|
|
13
|
+
|
|
14
|
+
#ifndef __VBMIINTRIN_H
|
|
15
|
+
#define __VBMIINTRIN_H
|
|
16
|
+
|
|
17
|
+
/* Define the default attributes for the functions in this file. */
|
|
18
|
+
#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi"), __min_vector_width__(512)))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
22
|
+
_mm512_permutex2var_epi8(__m512i __A, __m512i __I, __m512i __B)
|
|
23
|
+
{
|
|
24
|
+
return (__m512i)__builtin_ia32_vpermi2varqi512((__v64qi)__A, (__v64qi)__I,
|
|
25
|
+
(__v64qi) __B);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
29
|
+
_mm512_mask_permutex2var_epi8(__m512i __A, __mmask64 __U, __m512i __I,
|
|
30
|
+
__m512i __B)
|
|
31
|
+
{
|
|
32
|
+
return (__m512i)__builtin_ia32_selectb_512(__U,
|
|
33
|
+
(__v64qi)_mm512_permutex2var_epi8(__A, __I, __B),
|
|
34
|
+
(__v64qi)__A);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
38
|
+
_mm512_mask2_permutex2var_epi8(__m512i __A, __m512i __I, __mmask64 __U,
|
|
39
|
+
__m512i __B)
|
|
40
|
+
{
|
|
41
|
+
return (__m512i)__builtin_ia32_selectb_512(__U,
|
|
42
|
+
(__v64qi)_mm512_permutex2var_epi8(__A, __I, __B),
|
|
43
|
+
(__v64qi)__I);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
47
|
+
_mm512_maskz_permutex2var_epi8(__mmask64 __U, __m512i __A, __m512i __I,
|
|
48
|
+
__m512i __B)
|
|
49
|
+
{
|
|
50
|
+
return (__m512i)__builtin_ia32_selectb_512(__U,
|
|
51
|
+
(__v64qi)_mm512_permutex2var_epi8(__A, __I, __B),
|
|
52
|
+
(__v64qi)_mm512_setzero_si512());
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
56
|
+
_mm512_permutexvar_epi8 (__m512i __A, __m512i __B)
|
|
57
|
+
{
|
|
58
|
+
return (__m512i)__builtin_ia32_permvarqi512((__v64qi) __B, (__v64qi) __A);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
62
|
+
_mm512_maskz_permutexvar_epi8 (__mmask64 __M, __m512i __A,
|
|
63
|
+
__m512i __B)
|
|
64
|
+
{
|
|
65
|
+
return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M,
|
|
66
|
+
(__v64qi)_mm512_permutexvar_epi8(__A, __B),
|
|
67
|
+
(__v64qi)_mm512_setzero_si512());
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
71
|
+
_mm512_mask_permutexvar_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
|
|
72
|
+
__m512i __B)
|
|
73
|
+
{
|
|
74
|
+
return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M,
|
|
75
|
+
(__v64qi)_mm512_permutexvar_epi8(__A, __B),
|
|
76
|
+
(__v64qi)__W);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
80
|
+
_mm512_multishift_epi64_epi8(__m512i __X, __m512i __Y)
|
|
81
|
+
{
|
|
82
|
+
return (__m512i)__builtin_ia32_vpmultishiftqb512((__v64qi)__X, (__v64qi) __Y);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
86
|
+
_mm512_mask_multishift_epi64_epi8(__m512i __W, __mmask64 __M, __m512i __X,
|
|
87
|
+
__m512i __Y)
|
|
88
|
+
{
|
|
89
|
+
return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M,
|
|
90
|
+
(__v64qi)_mm512_multishift_epi64_epi8(__X, __Y),
|
|
91
|
+
(__v64qi)__W);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
static __inline__ __m512i __DEFAULT_FN_ATTRS
|
|
95
|
+
_mm512_maskz_multishift_epi64_epi8(__mmask64 __M, __m512i __X, __m512i __Y)
|
|
96
|
+
{
|
|
97
|
+
return (__m512i)__builtin_ia32_selectb_512((__mmask64)__M,
|
|
98
|
+
(__v64qi)_mm512_multishift_epi64_epi8(__X, __Y),
|
|
99
|
+
(__v64qi)_mm512_setzero_si512());
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
#undef __DEFAULT_FN_ATTRS
|
|
104
|
+
|
|
105
|
+
#endif
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
/*===------------- avx512vbmivlintrin.h - VBMI intrinsics ------------------===
|
|
2
|
+
*
|
|
3
|
+
*
|
|
4
|
+
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
5
|
+
* See https://llvm.org/LICENSE.txt for license information.
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
7
|
+
*
|
|
8
|
+
*===-----------------------------------------------------------------------===
|
|
9
|
+
*/
|
|
10
|
+
#ifndef __IMMINTRIN_H
|
|
11
|
+
#error "Never use <avx512vbmivlintrin.h> directly; include <immintrin.h> instead."
|
|
12
|
+
#endif
|
|
13
|
+
|
|
14
|
+
#ifndef __VBMIVLINTRIN_H
|
|
15
|
+
#define __VBMIVLINTRIN_H
|
|
16
|
+
|
|
17
|
+
/* Define the default attributes for the functions in this file. */
|
|
18
|
+
#define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(128)))
|
|
19
|
+
#define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vbmi,avx512vl"), __min_vector_width__(256)))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
23
|
+
_mm_permutex2var_epi8(__m128i __A, __m128i __I, __m128i __B)
|
|
24
|
+
{
|
|
25
|
+
return (__m128i)__builtin_ia32_vpermi2varqi128((__v16qi)__A,
|
|
26
|
+
(__v16qi)__I,
|
|
27
|
+
(__v16qi)__B);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
31
|
+
_mm_mask_permutex2var_epi8(__m128i __A, __mmask16 __U, __m128i __I,
|
|
32
|
+
__m128i __B)
|
|
33
|
+
{
|
|
34
|
+
return (__m128i)__builtin_ia32_selectb_128(__U,
|
|
35
|
+
(__v16qi)_mm_permutex2var_epi8(__A, __I, __B),
|
|
36
|
+
(__v16qi)__A);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
40
|
+
_mm_mask2_permutex2var_epi8(__m128i __A, __m128i __I, __mmask16 __U,
|
|
41
|
+
__m128i __B)
|
|
42
|
+
{
|
|
43
|
+
return (__m128i)__builtin_ia32_selectb_128(__U,
|
|
44
|
+
(__v16qi)_mm_permutex2var_epi8(__A, __I, __B),
|
|
45
|
+
(__v16qi)__I);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
49
|
+
_mm_maskz_permutex2var_epi8(__mmask16 __U, __m128i __A, __m128i __I,
|
|
50
|
+
__m128i __B)
|
|
51
|
+
{
|
|
52
|
+
return (__m128i)__builtin_ia32_selectb_128(__U,
|
|
53
|
+
(__v16qi)_mm_permutex2var_epi8(__A, __I, __B),
|
|
54
|
+
(__v16qi)_mm_setzero_si128());
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
58
|
+
_mm256_permutex2var_epi8(__m256i __A, __m256i __I, __m256i __B)
|
|
59
|
+
{
|
|
60
|
+
return (__m256i)__builtin_ia32_vpermi2varqi256((__v32qi)__A, (__v32qi)__I,
|
|
61
|
+
(__v32qi)__B);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
65
|
+
_mm256_mask_permutex2var_epi8(__m256i __A, __mmask32 __U, __m256i __I,
|
|
66
|
+
__m256i __B)
|
|
67
|
+
{
|
|
68
|
+
return (__m256i)__builtin_ia32_selectb_256(__U,
|
|
69
|
+
(__v32qi)_mm256_permutex2var_epi8(__A, __I, __B),
|
|
70
|
+
(__v32qi)__A);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
74
|
+
_mm256_mask2_permutex2var_epi8(__m256i __A, __m256i __I, __mmask32 __U,
|
|
75
|
+
__m256i __B)
|
|
76
|
+
{
|
|
77
|
+
return (__m256i)__builtin_ia32_selectb_256(__U,
|
|
78
|
+
(__v32qi)_mm256_permutex2var_epi8(__A, __I, __B),
|
|
79
|
+
(__v32qi)__I);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
83
|
+
_mm256_maskz_permutex2var_epi8(__mmask32 __U, __m256i __A, __m256i __I,
|
|
84
|
+
__m256i __B)
|
|
85
|
+
{
|
|
86
|
+
return (__m256i)__builtin_ia32_selectb_256(__U,
|
|
87
|
+
(__v32qi)_mm256_permutex2var_epi8(__A, __I, __B),
|
|
88
|
+
(__v32qi)_mm256_setzero_si256());
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
92
|
+
_mm_permutexvar_epi8 (__m128i __A, __m128i __B)
|
|
93
|
+
{
|
|
94
|
+
return (__m128i)__builtin_ia32_permvarqi128((__v16qi)__B, (__v16qi)__A);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
98
|
+
_mm_maskz_permutexvar_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
|
|
99
|
+
{
|
|
100
|
+
return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
|
|
101
|
+
(__v16qi)_mm_permutexvar_epi8(__A, __B),
|
|
102
|
+
(__v16qi)_mm_setzero_si128());
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
106
|
+
_mm_mask_permutexvar_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
|
|
107
|
+
__m128i __B)
|
|
108
|
+
{
|
|
109
|
+
return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
|
|
110
|
+
(__v16qi)_mm_permutexvar_epi8(__A, __B),
|
|
111
|
+
(__v16qi)__W);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
115
|
+
_mm256_permutexvar_epi8 (__m256i __A, __m256i __B)
|
|
116
|
+
{
|
|
117
|
+
return (__m256i)__builtin_ia32_permvarqi256((__v32qi) __B, (__v32qi) __A);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
121
|
+
_mm256_maskz_permutexvar_epi8 (__mmask32 __M, __m256i __A,
|
|
122
|
+
__m256i __B)
|
|
123
|
+
{
|
|
124
|
+
return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
|
|
125
|
+
(__v32qi)_mm256_permutexvar_epi8(__A, __B),
|
|
126
|
+
(__v32qi)_mm256_setzero_si256());
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
130
|
+
_mm256_mask_permutexvar_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
|
|
131
|
+
__m256i __B)
|
|
132
|
+
{
|
|
133
|
+
return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
|
|
134
|
+
(__v32qi)_mm256_permutexvar_epi8(__A, __B),
|
|
135
|
+
(__v32qi)__W);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
139
|
+
_mm_multishift_epi64_epi8(__m128i __X, __m128i __Y)
|
|
140
|
+
{
|
|
141
|
+
return (__m128i)__builtin_ia32_vpmultishiftqb128((__v16qi)__X, (__v16qi)__Y);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
145
|
+
_mm_mask_multishift_epi64_epi8(__m128i __W, __mmask16 __M, __m128i __X,
|
|
146
|
+
__m128i __Y)
|
|
147
|
+
{
|
|
148
|
+
return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
|
|
149
|
+
(__v16qi)_mm_multishift_epi64_epi8(__X, __Y),
|
|
150
|
+
(__v16qi)__W);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
static __inline__ __m128i __DEFAULT_FN_ATTRS128
|
|
154
|
+
_mm_maskz_multishift_epi64_epi8(__mmask16 __M, __m128i __X, __m128i __Y)
|
|
155
|
+
{
|
|
156
|
+
return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
|
|
157
|
+
(__v16qi)_mm_multishift_epi64_epi8(__X, __Y),
|
|
158
|
+
(__v16qi)_mm_setzero_si128());
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
162
|
+
_mm256_multishift_epi64_epi8(__m256i __X, __m256i __Y)
|
|
163
|
+
{
|
|
164
|
+
return (__m256i)__builtin_ia32_vpmultishiftqb256((__v32qi)__X, (__v32qi)__Y);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
168
|
+
_mm256_mask_multishift_epi64_epi8(__m256i __W, __mmask32 __M, __m256i __X,
|
|
169
|
+
__m256i __Y)
|
|
170
|
+
{
|
|
171
|
+
return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
|
|
172
|
+
(__v32qi)_mm256_multishift_epi64_epi8(__X, __Y),
|
|
173
|
+
(__v32qi)__W);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
static __inline__ __m256i __DEFAULT_FN_ATTRS256
|
|
177
|
+
_mm256_maskz_multishift_epi64_epi8(__mmask32 __M, __m256i __X, __m256i __Y)
|
|
178
|
+
{
|
|
179
|
+
return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
|
|
180
|
+
(__v32qi)_mm256_multishift_epi64_epi8(__X, __Y),
|
|
181
|
+
(__v32qi)_mm256_setzero_si256());
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
#undef __DEFAULT_FN_ATTRS128
|
|
186
|
+
#undef __DEFAULT_FN_ATTRS256
|
|
187
|
+
|
|
188
|
+
#endif
|