@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.
Files changed (164) hide show
  1. package/LICENSE.TXT +279 -0
  2. package/README.md +7 -0
  3. package/bin/clang-tidy.exe +4 -0
  4. package/lib/clang/12.0.1/include/__clang_cuda_builtin_vars.h +121 -0
  5. package/lib/clang/12.0.1/include/__clang_cuda_cmath.h +512 -0
  6. package/lib/clang/12.0.1/include/__clang_cuda_complex_builtins.h +285 -0
  7. package/lib/clang/12.0.1/include/__clang_cuda_device_functions.h +1486 -0
  8. package/lib/clang/12.0.1/include/__clang_cuda_intrinsics.h +486 -0
  9. package/lib/clang/12.0.1/include/__clang_cuda_libdevice_declares.h +462 -0
  10. package/lib/clang/12.0.1/include/__clang_cuda_math.h +348 -0
  11. package/lib/clang/12.0.1/include/__clang_cuda_math_forward_declares.h +284 -0
  12. package/lib/clang/12.0.1/include/__clang_cuda_runtime_wrapper.h +443 -0
  13. package/lib/clang/12.0.1/include/__clang_hip_cmath.h +664 -0
  14. package/lib/clang/12.0.1/include/__clang_hip_libdevice_declares.h +334 -0
  15. package/lib/clang/12.0.1/include/__clang_hip_math.h +1275 -0
  16. package/lib/clang/12.0.1/include/__clang_hip_runtime_wrapper.h +69 -0
  17. package/lib/clang/12.0.1/include/__stddef_max_align_t.h +27 -0
  18. package/lib/clang/12.0.1/include/__wmmintrin_aes.h +140 -0
  19. package/lib/clang/12.0.1/include/__wmmintrin_pclmul.h +48 -0
  20. package/lib/clang/12.0.1/include/adxintrin.h +72 -0
  21. package/lib/clang/12.0.1/include/altivec.h +18239 -0
  22. package/lib/clang/12.0.1/include/ammintrin.h +179 -0
  23. package/lib/clang/12.0.1/include/amxintrin.h +278 -0
  24. package/lib/clang/12.0.1/include/arm64intr.h +35 -0
  25. package/lib/clang/12.0.1/include/arm_acle.h +716 -0
  26. package/lib/clang/12.0.1/include/arm_bf16.h +20 -0
  27. package/lib/clang/12.0.1/include/arm_cde.h +410 -0
  28. package/lib/clang/12.0.1/include/arm_cmse.h +217 -0
  29. package/lib/clang/12.0.1/include/arm_fp16.h +596 -0
  30. package/lib/clang/12.0.1/include/arm_mve.h +19187 -0
  31. package/lib/clang/12.0.1/include/arm_neon.h +68982 -0
  32. package/lib/clang/12.0.1/include/arm_sve.h +18148 -0
  33. package/lib/clang/12.0.1/include/armintr.h +31 -0
  34. package/lib/clang/12.0.1/include/avx2intrin.h +1148 -0
  35. package/lib/clang/12.0.1/include/avx512bf16intrin.h +279 -0
  36. package/lib/clang/12.0.1/include/avx512bitalgintrin.h +83 -0
  37. package/lib/clang/12.0.1/include/avx512bwintrin.h +2024 -0
  38. package/lib/clang/12.0.1/include/avx512cdintrin.h +123 -0
  39. package/lib/clang/12.0.1/include/avx512dqintrin.h +1377 -0
  40. package/lib/clang/12.0.1/include/avx512erintrin.h +271 -0
  41. package/lib/clang/12.0.1/include/avx512fintrin.h +9618 -0
  42. package/lib/clang/12.0.1/include/avx512ifmaintrin.h +68 -0
  43. package/lib/clang/12.0.1/include/avx512ifmavlintrin.h +119 -0
  44. package/lib/clang/12.0.1/include/avx512pfintrin.h +97 -0
  45. package/lib/clang/12.0.1/include/avx512vbmi2intrin.h +357 -0
  46. package/lib/clang/12.0.1/include/avx512vbmiintrin.h +105 -0
  47. package/lib/clang/12.0.1/include/avx512vbmivlintrin.h +188 -0
  48. package/lib/clang/12.0.1/include/avx512vlbf16intrin.h +474 -0
  49. package/lib/clang/12.0.1/include/avx512vlbitalgintrin.h +145 -0
  50. package/lib/clang/12.0.1/include/avx512vlbwintrin.h +2809 -0
  51. package/lib/clang/12.0.1/include/avx512vlcdintrin.h +225 -0
  52. package/lib/clang/12.0.1/include/avx512vldqintrin.h +1167 -0
  53. package/lib/clang/12.0.1/include/avx512vlintrin.h +8445 -0
  54. package/lib/clang/12.0.1/include/avx512vlvbmi2intrin.h +689 -0
  55. package/lib/clang/12.0.1/include/avx512vlvnniintrin.h +304 -0
  56. package/lib/clang/12.0.1/include/avx512vlvp2intersectintrin.h +121 -0
  57. package/lib/clang/12.0.1/include/avx512vnniintrin.h +115 -0
  58. package/lib/clang/12.0.1/include/avx512vp2intersectintrin.h +77 -0
  59. package/lib/clang/12.0.1/include/avx512vpopcntdqintrin.h +54 -0
  60. package/lib/clang/12.0.1/include/avx512vpopcntdqvlintrin.h +91 -0
  61. package/lib/clang/12.0.1/include/avxintrin.h +5053 -0
  62. package/lib/clang/12.0.1/include/avxvnniintrin.h +225 -0
  63. package/lib/clang/12.0.1/include/bmi2intrin.h +81 -0
  64. package/lib/clang/12.0.1/include/bmiintrin.h +427 -0
  65. package/lib/clang/12.0.1/include/cet.h +66 -0
  66. package/lib/clang/12.0.1/include/cetintrin.h +99 -0
  67. package/lib/clang/12.0.1/include/cldemoteintrin.h +36 -0
  68. package/lib/clang/12.0.1/include/clflushoptintrin.h +27 -0
  69. package/lib/clang/12.0.1/include/clwbintrin.h +38 -0
  70. package/lib/clang/12.0.1/include/clzerointrin.h +36 -0
  71. package/lib/clang/12.0.1/include/cpuid.h +319 -0
  72. package/lib/clang/12.0.1/include/cuda_wrappers/algorithm +116 -0
  73. package/lib/clang/12.0.1/include/cuda_wrappers/complex +82 -0
  74. package/lib/clang/12.0.1/include/cuda_wrappers/new +106 -0
  75. package/lib/clang/12.0.1/include/emmintrin.h +4981 -0
  76. package/lib/clang/12.0.1/include/enqcmdintrin.h +63 -0
  77. package/lib/clang/12.0.1/include/f16cintrin.h +162 -0
  78. package/lib/clang/12.0.1/include/float.h +152 -0
  79. package/lib/clang/12.0.1/include/fma4intrin.h +218 -0
  80. package/lib/clang/12.0.1/include/fmaintrin.h +216 -0
  81. package/lib/clang/12.0.1/include/fxsrintrin.h +91 -0
  82. package/lib/clang/12.0.1/include/gfniintrin.h +193 -0
  83. package/lib/clang/12.0.1/include/hresetintrin.h +49 -0
  84. package/lib/clang/12.0.1/include/htmintrin.h +212 -0
  85. package/lib/clang/12.0.1/include/htmxlintrin.h +345 -0
  86. package/lib/clang/12.0.1/include/ia32intrin.h +441 -0
  87. package/lib/clang/12.0.1/include/immintrin.h +600 -0
  88. package/lib/clang/12.0.1/include/intrin.h +585 -0
  89. package/lib/clang/12.0.1/include/inttypes.h +97 -0
  90. package/lib/clang/12.0.1/include/invpcidintrin.h +23 -0
  91. package/lib/clang/12.0.1/include/iso646.h +27 -0
  92. package/lib/clang/12.0.1/include/keylockerintrin.h +506 -0
  93. package/lib/clang/12.0.1/include/limits.h +102 -0
  94. package/lib/clang/12.0.1/include/lwpintrin.h +136 -0
  95. package/lib/clang/12.0.1/include/lzcntintrin.h +104 -0
  96. package/lib/clang/12.0.1/include/mm3dnow.h +157 -0
  97. package/lib/clang/12.0.1/include/mm_malloc.h +67 -0
  98. package/lib/clang/12.0.1/include/mmintrin.h +1558 -0
  99. package/lib/clang/12.0.1/include/module.modulemap +164 -0
  100. package/lib/clang/12.0.1/include/movdirintrin.h +49 -0
  101. package/lib/clang/12.0.1/include/msa.h +573 -0
  102. package/lib/clang/12.0.1/include/mwaitxintrin.h +33 -0
  103. package/lib/clang/12.0.1/include/nmmintrin.h +16 -0
  104. package/lib/clang/12.0.1/include/opencl-c-base.h +589 -0
  105. package/lib/clang/12.0.1/include/opencl-c.h +17162 -0
  106. package/lib/clang/12.0.1/include/openmp_wrappers/__clang_openmp_device_functions.h +42 -0
  107. package/lib/clang/12.0.1/include/openmp_wrappers/cmath +78 -0
  108. package/lib/clang/12.0.1/include/openmp_wrappers/complex +52 -0
  109. package/lib/clang/12.0.1/include/openmp_wrappers/complex.h +27 -0
  110. package/lib/clang/12.0.1/include/openmp_wrappers/complex_cmath.h +388 -0
  111. package/lib/clang/12.0.1/include/openmp_wrappers/math.h +51 -0
  112. package/lib/clang/12.0.1/include/openmp_wrappers/new +70 -0
  113. package/lib/clang/12.0.1/include/pconfigintrin.h +40 -0
  114. package/lib/clang/12.0.1/include/pkuintrin.h +34 -0
  115. package/lib/clang/12.0.1/include/pmmintrin.h +290 -0
  116. package/lib/clang/12.0.1/include/popcntintrin.h +59 -0
  117. package/lib/clang/12.0.1/include/ppc_wrappers/emmintrin.h +2324 -0
  118. package/lib/clang/12.0.1/include/ppc_wrappers/mm_malloc.h +50 -0
  119. package/lib/clang/12.0.1/include/ppc_wrappers/mmintrin.h +1450 -0
  120. package/lib/clang/12.0.1/include/ppc_wrappers/pmmintrin.h +150 -0
  121. package/lib/clang/12.0.1/include/ppc_wrappers/smmintrin.h +109 -0
  122. package/lib/clang/12.0.1/include/ppc_wrappers/tmmintrin.h +495 -0
  123. package/lib/clang/12.0.1/include/ppc_wrappers/xmmintrin.h +1843 -0
  124. package/lib/clang/12.0.1/include/prfchwintrin.h +55 -0
  125. package/lib/clang/12.0.1/include/ptwriteintrin.h +37 -0
  126. package/lib/clang/12.0.1/include/rdseedintrin.h +42 -0
  127. package/lib/clang/12.0.1/include/rtmintrin.h +45 -0
  128. package/lib/clang/12.0.1/include/s390intrin.h +25 -0
  129. package/lib/clang/12.0.1/include/serializeintrin.h +30 -0
  130. package/lib/clang/12.0.1/include/sgxintrin.h +60 -0
  131. package/lib/clang/12.0.1/include/shaintrin.h +61 -0
  132. package/lib/clang/12.0.1/include/smmintrin.h +2430 -0
  133. package/lib/clang/12.0.1/include/stdalign.h +21 -0
  134. package/lib/clang/12.0.1/include/stdarg.h +35 -0
  135. package/lib/clang/12.0.1/include/stdatomic.h +176 -0
  136. package/lib/clang/12.0.1/include/stdbool.h +31 -0
  137. package/lib/clang/12.0.1/include/stddef.h +121 -0
  138. package/lib/clang/12.0.1/include/stdint.h +693 -0
  139. package/lib/clang/12.0.1/include/stdnoreturn.h +16 -0
  140. package/lib/clang/12.0.1/include/tbmintrin.h +140 -0
  141. package/lib/clang/12.0.1/include/tgmath.h +1368 -0
  142. package/lib/clang/12.0.1/include/tmmintrin.h +771 -0
  143. package/lib/clang/12.0.1/include/tsxldtrkintrin.h +56 -0
  144. package/lib/clang/12.0.1/include/uintrintrin.h +150 -0
  145. package/lib/clang/12.0.1/include/unwind.h +327 -0
  146. package/lib/clang/12.0.1/include/vadefs.h +51 -0
  147. package/lib/clang/12.0.1/include/vaesintrin.h +84 -0
  148. package/lib/clang/12.0.1/include/varargs.h +12 -0
  149. package/lib/clang/12.0.1/include/vecintrin.h +10998 -0
  150. package/lib/clang/12.0.1/include/vpclmulqdqintrin.h +28 -0
  151. package/lib/clang/12.0.1/include/waitpkgintrin.h +42 -0
  152. package/lib/clang/12.0.1/include/wasm_simd128.h +1167 -0
  153. package/lib/clang/12.0.1/include/wbnoinvdintrin.h +24 -0
  154. package/lib/clang/12.0.1/include/wmmintrin.h +19 -0
  155. package/lib/clang/12.0.1/include/x86gprintrin.h +23 -0
  156. package/lib/clang/12.0.1/include/x86intrin.h +63 -0
  157. package/lib/clang/12.0.1/include/xmmintrin.h +3008 -0
  158. package/lib/clang/12.0.1/include/xopintrin.h +770 -0
  159. package/lib/clang/12.0.1/include/xsavecintrin.h +34 -0
  160. package/lib/clang/12.0.1/include/xsaveintrin.h +63 -0
  161. package/lib/clang/12.0.1/include/xsaveoptintrin.h +34 -0
  162. package/lib/clang/12.0.1/include/xsavesintrin.h +44 -0
  163. package/lib/clang/12.0.1/include/xtestintrin.h +27 -0
  164. package/package.json +32 -0
@@ -0,0 +1,689 @@
1
+ /*===------------- avx512vlvbmi2intrin.h - VBMI2 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 <avx512vlvbmi2intrin.h> directly; include <immintrin.h> instead."
12
+ #endif
13
+
14
+ #ifndef __AVX512VLVBMI2INTRIN_H
15
+ #define __AVX512VLVBMI2INTRIN_H
16
+
17
+ /* Define the default attributes for the functions in this file. */
18
+ #define __DEFAULT_FN_ATTRS128 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(128)))
19
+ #define __DEFAULT_FN_ATTRS256 __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512vbmi2"), __min_vector_width__(256)))
20
+
21
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
22
+ _mm_mask_compress_epi16(__m128i __S, __mmask8 __U, __m128i __D)
23
+ {
24
+ return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D,
25
+ (__v8hi) __S,
26
+ __U);
27
+ }
28
+
29
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
30
+ _mm_maskz_compress_epi16(__mmask8 __U, __m128i __D)
31
+ {
32
+ return (__m128i) __builtin_ia32_compresshi128_mask ((__v8hi) __D,
33
+ (__v8hi) _mm_setzero_si128(),
34
+ __U);
35
+ }
36
+
37
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
38
+ _mm_mask_compress_epi8(__m128i __S, __mmask16 __U, __m128i __D)
39
+ {
40
+ return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D,
41
+ (__v16qi) __S,
42
+ __U);
43
+ }
44
+
45
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
46
+ _mm_maskz_compress_epi8(__mmask16 __U, __m128i __D)
47
+ {
48
+ return (__m128i) __builtin_ia32_compressqi128_mask ((__v16qi) __D,
49
+ (__v16qi) _mm_setzero_si128(),
50
+ __U);
51
+ }
52
+
53
+ static __inline__ void __DEFAULT_FN_ATTRS128
54
+ _mm_mask_compressstoreu_epi16(void *__P, __mmask8 __U, __m128i __D)
55
+ {
56
+ __builtin_ia32_compressstorehi128_mask ((__v8hi *) __P, (__v8hi) __D,
57
+ __U);
58
+ }
59
+
60
+ static __inline__ void __DEFAULT_FN_ATTRS128
61
+ _mm_mask_compressstoreu_epi8(void *__P, __mmask16 __U, __m128i __D)
62
+ {
63
+ __builtin_ia32_compressstoreqi128_mask ((__v16qi *) __P, (__v16qi) __D,
64
+ __U);
65
+ }
66
+
67
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
68
+ _mm_mask_expand_epi16(__m128i __S, __mmask8 __U, __m128i __D)
69
+ {
70
+ return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D,
71
+ (__v8hi) __S,
72
+ __U);
73
+ }
74
+
75
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
76
+ _mm_maskz_expand_epi16(__mmask8 __U, __m128i __D)
77
+ {
78
+ return (__m128i) __builtin_ia32_expandhi128_mask ((__v8hi) __D,
79
+ (__v8hi) _mm_setzero_si128(),
80
+ __U);
81
+ }
82
+
83
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
84
+ _mm_mask_expand_epi8(__m128i __S, __mmask16 __U, __m128i __D)
85
+ {
86
+ return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D,
87
+ (__v16qi) __S,
88
+ __U);
89
+ }
90
+
91
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
92
+ _mm_maskz_expand_epi8(__mmask16 __U, __m128i __D)
93
+ {
94
+ return (__m128i) __builtin_ia32_expandqi128_mask ((__v16qi) __D,
95
+ (__v16qi) _mm_setzero_si128(),
96
+ __U);
97
+ }
98
+
99
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
100
+ _mm_mask_expandloadu_epi16(__m128i __S, __mmask8 __U, void const *__P)
101
+ {
102
+ return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P,
103
+ (__v8hi) __S,
104
+ __U);
105
+ }
106
+
107
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
108
+ _mm_maskz_expandloadu_epi16(__mmask8 __U, void const *__P)
109
+ {
110
+ return (__m128i) __builtin_ia32_expandloadhi128_mask ((const __v8hi *)__P,
111
+ (__v8hi) _mm_setzero_si128(),
112
+ __U);
113
+ }
114
+
115
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
116
+ _mm_mask_expandloadu_epi8(__m128i __S, __mmask16 __U, void const *__P)
117
+ {
118
+ return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P,
119
+ (__v16qi) __S,
120
+ __U);
121
+ }
122
+
123
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
124
+ _mm_maskz_expandloadu_epi8(__mmask16 __U, void const *__P)
125
+ {
126
+ return (__m128i) __builtin_ia32_expandloadqi128_mask ((const __v16qi *)__P,
127
+ (__v16qi) _mm_setzero_si128(),
128
+ __U);
129
+ }
130
+
131
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
132
+ _mm256_mask_compress_epi16(__m256i __S, __mmask16 __U, __m256i __D)
133
+ {
134
+ return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D,
135
+ (__v16hi) __S,
136
+ __U);
137
+ }
138
+
139
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
140
+ _mm256_maskz_compress_epi16(__mmask16 __U, __m256i __D)
141
+ {
142
+ return (__m256i) __builtin_ia32_compresshi256_mask ((__v16hi) __D,
143
+ (__v16hi) _mm256_setzero_si256(),
144
+ __U);
145
+ }
146
+
147
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
148
+ _mm256_mask_compress_epi8(__m256i __S, __mmask32 __U, __m256i __D)
149
+ {
150
+ return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D,
151
+ (__v32qi) __S,
152
+ __U);
153
+ }
154
+
155
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
156
+ _mm256_maskz_compress_epi8(__mmask32 __U, __m256i __D)
157
+ {
158
+ return (__m256i) __builtin_ia32_compressqi256_mask ((__v32qi) __D,
159
+ (__v32qi) _mm256_setzero_si256(),
160
+ __U);
161
+ }
162
+
163
+ static __inline__ void __DEFAULT_FN_ATTRS256
164
+ _mm256_mask_compressstoreu_epi16(void *__P, __mmask16 __U, __m256i __D)
165
+ {
166
+ __builtin_ia32_compressstorehi256_mask ((__v16hi *) __P, (__v16hi) __D,
167
+ __U);
168
+ }
169
+
170
+ static __inline__ void __DEFAULT_FN_ATTRS256
171
+ _mm256_mask_compressstoreu_epi8(void *__P, __mmask32 __U, __m256i __D)
172
+ {
173
+ __builtin_ia32_compressstoreqi256_mask ((__v32qi *) __P, (__v32qi) __D,
174
+ __U);
175
+ }
176
+
177
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
178
+ _mm256_mask_expand_epi16(__m256i __S, __mmask16 __U, __m256i __D)
179
+ {
180
+ return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D,
181
+ (__v16hi) __S,
182
+ __U);
183
+ }
184
+
185
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
186
+ _mm256_maskz_expand_epi16(__mmask16 __U, __m256i __D)
187
+ {
188
+ return (__m256i) __builtin_ia32_expandhi256_mask ((__v16hi) __D,
189
+ (__v16hi) _mm256_setzero_si256(),
190
+ __U);
191
+ }
192
+
193
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
194
+ _mm256_mask_expand_epi8(__m256i __S, __mmask32 __U, __m256i __D)
195
+ {
196
+ return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D,
197
+ (__v32qi) __S,
198
+ __U);
199
+ }
200
+
201
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
202
+ _mm256_maskz_expand_epi8(__mmask32 __U, __m256i __D)
203
+ {
204
+ return (__m256i) __builtin_ia32_expandqi256_mask ((__v32qi) __D,
205
+ (__v32qi) _mm256_setzero_si256(),
206
+ __U);
207
+ }
208
+
209
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
210
+ _mm256_mask_expandloadu_epi16(__m256i __S, __mmask16 __U, void const *__P)
211
+ {
212
+ return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P,
213
+ (__v16hi) __S,
214
+ __U);
215
+ }
216
+
217
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
218
+ _mm256_maskz_expandloadu_epi16(__mmask16 __U, void const *__P)
219
+ {
220
+ return (__m256i) __builtin_ia32_expandloadhi256_mask ((const __v16hi *)__P,
221
+ (__v16hi) _mm256_setzero_si256(),
222
+ __U);
223
+ }
224
+
225
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
226
+ _mm256_mask_expandloadu_epi8(__m256i __S, __mmask32 __U, void const *__P)
227
+ {
228
+ return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P,
229
+ (__v32qi) __S,
230
+ __U);
231
+ }
232
+
233
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
234
+ _mm256_maskz_expandloadu_epi8(__mmask32 __U, void const *__P)
235
+ {
236
+ return (__m256i) __builtin_ia32_expandloadqi256_mask ((const __v32qi *)__P,
237
+ (__v32qi) _mm256_setzero_si256(),
238
+ __U);
239
+ }
240
+
241
+ #define _mm256_shldi_epi64(A, B, I) \
242
+ (__m256i)__builtin_ia32_vpshldq256((__v4di)(__m256i)(A), \
243
+ (__v4di)(__m256i)(B), (int)(I))
244
+
245
+ #define _mm256_mask_shldi_epi64(S, U, A, B, I) \
246
+ (__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
247
+ (__v4di)_mm256_shldi_epi64((A), (B), (I)), \
248
+ (__v4di)(__m256i)(S))
249
+
250
+ #define _mm256_maskz_shldi_epi64(U, A, B, I) \
251
+ (__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
252
+ (__v4di)_mm256_shldi_epi64((A), (B), (I)), \
253
+ (__v4di)_mm256_setzero_si256())
254
+
255
+ #define _mm_shldi_epi64(A, B, I) \
256
+ (__m128i)__builtin_ia32_vpshldq128((__v2di)(__m128i)(A), \
257
+ (__v2di)(__m128i)(B), (int)(I))
258
+
259
+ #define _mm_mask_shldi_epi64(S, U, A, B, I) \
260
+ (__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \
261
+ (__v2di)_mm_shldi_epi64((A), (B), (I)), \
262
+ (__v2di)(__m128i)(S))
263
+
264
+ #define _mm_maskz_shldi_epi64(U, A, B, I) \
265
+ (__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \
266
+ (__v2di)_mm_shldi_epi64((A), (B), (I)), \
267
+ (__v2di)_mm_setzero_si128())
268
+
269
+ #define _mm256_shldi_epi32(A, B, I) \
270
+ (__m256i)__builtin_ia32_vpshldd256((__v8si)(__m256i)(A), \
271
+ (__v8si)(__m256i)(B), (int)(I))
272
+
273
+ #define _mm256_mask_shldi_epi32(S, U, A, B, I) \
274
+ (__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \
275
+ (__v8si)_mm256_shldi_epi32((A), (B), (I)), \
276
+ (__v8si)(__m256i)(S))
277
+
278
+ #define _mm256_maskz_shldi_epi32(U, A, B, I) \
279
+ (__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \
280
+ (__v8si)_mm256_shldi_epi32((A), (B), (I)), \
281
+ (__v8si)_mm256_setzero_si256())
282
+
283
+ #define _mm_shldi_epi32(A, B, I) \
284
+ (__m128i)__builtin_ia32_vpshldd128((__v4si)(__m128i)(A), \
285
+ (__v4si)(__m128i)(B), (int)(I))
286
+
287
+ #define _mm_mask_shldi_epi32(S, U, A, B, I) \
288
+ (__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \
289
+ (__v4si)_mm_shldi_epi32((A), (B), (I)), \
290
+ (__v4si)(__m128i)(S))
291
+
292
+ #define _mm_maskz_shldi_epi32(U, A, B, I) \
293
+ (__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \
294
+ (__v4si)_mm_shldi_epi32((A), (B), (I)), \
295
+ (__v4si)_mm_setzero_si128())
296
+
297
+ #define _mm256_shldi_epi16(A, B, I) \
298
+ (__m256i)__builtin_ia32_vpshldw256((__v16hi)(__m256i)(A), \
299
+ (__v16hi)(__m256i)(B), (int)(I))
300
+
301
+ #define _mm256_mask_shldi_epi16(S, U, A, B, I) \
302
+ (__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
303
+ (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \
304
+ (__v16hi)(__m256i)(S))
305
+
306
+ #define _mm256_maskz_shldi_epi16(U, A, B, I) \
307
+ (__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
308
+ (__v16hi)_mm256_shldi_epi16((A), (B), (I)), \
309
+ (__v16hi)_mm256_setzero_si256())
310
+
311
+ #define _mm_shldi_epi16(A, B, I) \
312
+ (__m128i)__builtin_ia32_vpshldw128((__v8hi)(__m128i)(A), \
313
+ (__v8hi)(__m128i)(B), (int)(I))
314
+
315
+ #define _mm_mask_shldi_epi16(S, U, A, B, I) \
316
+ (__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
317
+ (__v8hi)_mm_shldi_epi16((A), (B), (I)), \
318
+ (__v8hi)(__m128i)(S))
319
+
320
+ #define _mm_maskz_shldi_epi16(U, A, B, I) \
321
+ (__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
322
+ (__v8hi)_mm_shldi_epi16((A), (B), (I)), \
323
+ (__v8hi)_mm_setzero_si128())
324
+
325
+ #define _mm256_shrdi_epi64(A, B, I) \
326
+ (__m256i)__builtin_ia32_vpshrdq256((__v4di)(__m256i)(A), \
327
+ (__v4di)(__m256i)(B), (int)(I))
328
+
329
+ #define _mm256_mask_shrdi_epi64(S, U, A, B, I) \
330
+ (__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
331
+ (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \
332
+ (__v4di)(__m256i)(S))
333
+
334
+ #define _mm256_maskz_shrdi_epi64(U, A, B, I) \
335
+ (__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
336
+ (__v4di)_mm256_shrdi_epi64((A), (B), (I)), \
337
+ (__v4di)_mm256_setzero_si256())
338
+
339
+ #define _mm_shrdi_epi64(A, B, I) \
340
+ (__m128i)__builtin_ia32_vpshrdq128((__v2di)(__m128i)(A), \
341
+ (__v2di)(__m128i)(B), (int)(I))
342
+
343
+ #define _mm_mask_shrdi_epi64(S, U, A, B, I) \
344
+ (__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \
345
+ (__v2di)_mm_shrdi_epi64((A), (B), (I)), \
346
+ (__v2di)(__m128i)(S))
347
+
348
+ #define _mm_maskz_shrdi_epi64(U, A, B, I) \
349
+ (__m128i)__builtin_ia32_selectq_128((__mmask8)(U), \
350
+ (__v2di)_mm_shrdi_epi64((A), (B), (I)), \
351
+ (__v2di)_mm_setzero_si128())
352
+
353
+ #define _mm256_shrdi_epi32(A, B, I) \
354
+ (__m256i)__builtin_ia32_vpshrdd256((__v8si)(__m256i)(A), \
355
+ (__v8si)(__m256i)(B), (int)(I))
356
+
357
+ #define _mm256_mask_shrdi_epi32(S, U, A, B, I) \
358
+ (__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \
359
+ (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \
360
+ (__v8si)(__m256i)(S))
361
+
362
+ #define _mm256_maskz_shrdi_epi32(U, A, B, I) \
363
+ (__m256i)__builtin_ia32_selectd_256((__mmask8)(U), \
364
+ (__v8si)_mm256_shrdi_epi32((A), (B), (I)), \
365
+ (__v8si)_mm256_setzero_si256())
366
+
367
+ #define _mm_shrdi_epi32(A, B, I) \
368
+ (__m128i)__builtin_ia32_vpshrdd128((__v4si)(__m128i)(A), \
369
+ (__v4si)(__m128i)(B), (int)(I))
370
+
371
+ #define _mm_mask_shrdi_epi32(S, U, A, B, I) \
372
+ (__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \
373
+ (__v4si)_mm_shrdi_epi32((A), (B), (I)), \
374
+ (__v4si)(__m128i)(S))
375
+
376
+ #define _mm_maskz_shrdi_epi32(U, A, B, I) \
377
+ (__m128i)__builtin_ia32_selectd_128((__mmask8)(U), \
378
+ (__v4si)_mm_shrdi_epi32((A), (B), (I)), \
379
+ (__v4si)_mm_setzero_si128())
380
+
381
+ #define _mm256_shrdi_epi16(A, B, I) \
382
+ (__m256i)__builtin_ia32_vpshrdw256((__v16hi)(__m256i)(A), \
383
+ (__v16hi)(__m256i)(B), (int)(I))
384
+
385
+ #define _mm256_mask_shrdi_epi16(S, U, A, B, I) \
386
+ (__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
387
+ (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \
388
+ (__v16hi)(__m256i)(S))
389
+
390
+ #define _mm256_maskz_shrdi_epi16(U, A, B, I) \
391
+ (__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
392
+ (__v16hi)_mm256_shrdi_epi16((A), (B), (I)), \
393
+ (__v16hi)_mm256_setzero_si256())
394
+
395
+ #define _mm_shrdi_epi16(A, B, I) \
396
+ (__m128i)__builtin_ia32_vpshrdw128((__v8hi)(__m128i)(A), \
397
+ (__v8hi)(__m128i)(B), (int)(I))
398
+
399
+ #define _mm_mask_shrdi_epi16(S, U, A, B, I) \
400
+ (__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
401
+ (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \
402
+ (__v8hi)(__m128i)(S))
403
+
404
+ #define _mm_maskz_shrdi_epi16(U, A, B, I) \
405
+ (__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
406
+ (__v8hi)_mm_shrdi_epi16((A), (B), (I)), \
407
+ (__v8hi)_mm_setzero_si128())
408
+
409
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
410
+ _mm256_shldv_epi64(__m256i __A, __m256i __B, __m256i __C)
411
+ {
412
+ return (__m256i)__builtin_ia32_vpshldvq256((__v4di)__A, (__v4di)__B,
413
+ (__v4di)__C);
414
+ }
415
+
416
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
417
+ _mm256_mask_shldv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C)
418
+ {
419
+ return (__m256i)__builtin_ia32_selectq_256(__U,
420
+ (__v4di)_mm256_shldv_epi64(__A, __B, __C),
421
+ (__v4di)__A);
422
+ }
423
+
424
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
425
+ _mm256_maskz_shldv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C)
426
+ {
427
+ return (__m256i)__builtin_ia32_selectq_256(__U,
428
+ (__v4di)_mm256_shldv_epi64(__A, __B, __C),
429
+ (__v4di)_mm256_setzero_si256());
430
+ }
431
+
432
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
433
+ _mm_shldv_epi64(__m128i __A, __m128i __B, __m128i __C)
434
+ {
435
+ return (__m128i)__builtin_ia32_vpshldvq128((__v2di)__A, (__v2di)__B,
436
+ (__v2di)__C);
437
+ }
438
+
439
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
440
+ _mm_mask_shldv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
441
+ {
442
+ return (__m128i)__builtin_ia32_selectq_128(__U,
443
+ (__v2di)_mm_shldv_epi64(__A, __B, __C),
444
+ (__v2di)__A);
445
+ }
446
+
447
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
448
+ _mm_maskz_shldv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
449
+ {
450
+ return (__m128i)__builtin_ia32_selectq_128(__U,
451
+ (__v2di)_mm_shldv_epi64(__A, __B, __C),
452
+ (__v2di)_mm_setzero_si128());
453
+ }
454
+
455
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
456
+ _mm256_shldv_epi32(__m256i __A, __m256i __B, __m256i __C)
457
+ {
458
+ return (__m256i)__builtin_ia32_vpshldvd256((__v8si)__A, (__v8si)__B,
459
+ (__v8si)__C);
460
+ }
461
+
462
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
463
+ _mm256_mask_shldv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C)
464
+ {
465
+ return (__m256i)__builtin_ia32_selectd_256(__U,
466
+ (__v8si)_mm256_shldv_epi32(__A, __B, __C),
467
+ (__v8si)__A);
468
+ }
469
+
470
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
471
+ _mm256_maskz_shldv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C)
472
+ {
473
+ return (__m256i)__builtin_ia32_selectd_256(__U,
474
+ (__v8si)_mm256_shldv_epi32(__A, __B, __C),
475
+ (__v8si)_mm256_setzero_si256());
476
+ }
477
+
478
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
479
+ _mm_shldv_epi32(__m128i __A, __m128i __B, __m128i __C)
480
+ {
481
+ return (__m128i)__builtin_ia32_vpshldvd128((__v4si)__A, (__v4si)__B,
482
+ (__v4si)__C);
483
+ }
484
+
485
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
486
+ _mm_mask_shldv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
487
+ {
488
+ return (__m128i)__builtin_ia32_selectd_128(__U,
489
+ (__v4si)_mm_shldv_epi32(__A, __B, __C),
490
+ (__v4si)__A);
491
+ }
492
+
493
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
494
+ _mm_maskz_shldv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
495
+ {
496
+ return (__m128i)__builtin_ia32_selectd_128(__U,
497
+ (__v4si)_mm_shldv_epi32(__A, __B, __C),
498
+ (__v4si)_mm_setzero_si128());
499
+ }
500
+
501
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
502
+ _mm256_shldv_epi16(__m256i __A, __m256i __B, __m256i __C)
503
+ {
504
+ return (__m256i)__builtin_ia32_vpshldvw256((__v16hi)__A, (__v16hi)__B,
505
+ (__v16hi)__C);
506
+ }
507
+
508
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
509
+ _mm256_mask_shldv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C)
510
+ {
511
+ return (__m256i)__builtin_ia32_selectw_256(__U,
512
+ (__v16hi)_mm256_shldv_epi16(__A, __B, __C),
513
+ (__v16hi)__A);
514
+ }
515
+
516
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
517
+ _mm256_maskz_shldv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C)
518
+ {
519
+ return (__m256i)__builtin_ia32_selectw_256(__U,
520
+ (__v16hi)_mm256_shldv_epi16(__A, __B, __C),
521
+ (__v16hi)_mm256_setzero_si256());
522
+ }
523
+
524
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
525
+ _mm_shldv_epi16(__m128i __A, __m128i __B, __m128i __C)
526
+ {
527
+ return (__m128i)__builtin_ia32_vpshldvw128((__v8hi)__A, (__v8hi)__B,
528
+ (__v8hi)__C);
529
+ }
530
+
531
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
532
+ _mm_mask_shldv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
533
+ {
534
+ return (__m128i)__builtin_ia32_selectw_128(__U,
535
+ (__v8hi)_mm_shldv_epi16(__A, __B, __C),
536
+ (__v8hi)__A);
537
+ }
538
+
539
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
540
+ _mm_maskz_shldv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
541
+ {
542
+ return (__m128i)__builtin_ia32_selectw_128(__U,
543
+ (__v8hi)_mm_shldv_epi16(__A, __B, __C),
544
+ (__v8hi)_mm_setzero_si128());
545
+ }
546
+
547
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
548
+ _mm256_shrdv_epi64(__m256i __A, __m256i __B, __m256i __C)
549
+ {
550
+ return (__m256i)__builtin_ia32_vpshrdvq256((__v4di)__A, (__v4di)__B,
551
+ (__v4di)__C);
552
+ }
553
+
554
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
555
+ _mm256_mask_shrdv_epi64(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C)
556
+ {
557
+ return (__m256i)__builtin_ia32_selectq_256(__U,
558
+ (__v4di)_mm256_shrdv_epi64(__A, __B, __C),
559
+ (__v4di)__A);
560
+ }
561
+
562
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
563
+ _mm256_maskz_shrdv_epi64(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C)
564
+ {
565
+ return (__m256i)__builtin_ia32_selectq_256(__U,
566
+ (__v4di)_mm256_shrdv_epi64(__A, __B, __C),
567
+ (__v4di)_mm256_setzero_si256());
568
+ }
569
+
570
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
571
+ _mm_shrdv_epi64(__m128i __A, __m128i __B, __m128i __C)
572
+ {
573
+ return (__m128i)__builtin_ia32_vpshrdvq128((__v2di)__A, (__v2di)__B,
574
+ (__v2di)__C);
575
+ }
576
+
577
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
578
+ _mm_mask_shrdv_epi64(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
579
+ {
580
+ return (__m128i)__builtin_ia32_selectq_128(__U,
581
+ (__v2di)_mm_shrdv_epi64(__A, __B, __C),
582
+ (__v2di)__A);
583
+ }
584
+
585
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
586
+ _mm_maskz_shrdv_epi64(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
587
+ {
588
+ return (__m128i)__builtin_ia32_selectq_128(__U,
589
+ (__v2di)_mm_shrdv_epi64(__A, __B, __C),
590
+ (__v2di)_mm_setzero_si128());
591
+ }
592
+
593
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
594
+ _mm256_shrdv_epi32(__m256i __A, __m256i __B, __m256i __C)
595
+ {
596
+ return (__m256i)__builtin_ia32_vpshrdvd256((__v8si)__A, (__v8si)__B,
597
+ (__v8si)__C);
598
+ }
599
+
600
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
601
+ _mm256_mask_shrdv_epi32(__m256i __A, __mmask8 __U, __m256i __B, __m256i __C)
602
+ {
603
+ return (__m256i)__builtin_ia32_selectd_256(__U,
604
+ (__v8si)_mm256_shrdv_epi32(__A, __B, __C),
605
+ (__v8si)__A);
606
+ }
607
+
608
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
609
+ _mm256_maskz_shrdv_epi32(__mmask8 __U, __m256i __A, __m256i __B, __m256i __C)
610
+ {
611
+ return (__m256i)__builtin_ia32_selectd_256(__U,
612
+ (__v8si)_mm256_shrdv_epi32(__A, __B, __C),
613
+ (__v8si)_mm256_setzero_si256());
614
+ }
615
+
616
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
617
+ _mm_shrdv_epi32(__m128i __A, __m128i __B, __m128i __C)
618
+ {
619
+ return (__m128i)__builtin_ia32_vpshrdvd128((__v4si)__A, (__v4si)__B,
620
+ (__v4si)__C);
621
+ }
622
+
623
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
624
+ _mm_mask_shrdv_epi32(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
625
+ {
626
+ return (__m128i)__builtin_ia32_selectd_128(__U,
627
+ (__v4si)_mm_shrdv_epi32(__A, __B, __C),
628
+ (__v4si)__A);
629
+ }
630
+
631
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
632
+ _mm_maskz_shrdv_epi32(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
633
+ {
634
+ return (__m128i)__builtin_ia32_selectd_128(__U,
635
+ (__v4si)_mm_shrdv_epi32(__A, __B, __C),
636
+ (__v4si)_mm_setzero_si128());
637
+ }
638
+
639
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
640
+ _mm256_shrdv_epi16(__m256i __A, __m256i __B, __m256i __C)
641
+ {
642
+ return (__m256i)__builtin_ia32_vpshrdvw256((__v16hi)__A, (__v16hi)__B,
643
+ (__v16hi)__C);
644
+ }
645
+
646
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
647
+ _mm256_mask_shrdv_epi16(__m256i __A, __mmask16 __U, __m256i __B, __m256i __C)
648
+ {
649
+ return (__m256i)__builtin_ia32_selectw_256(__U,
650
+ (__v16hi)_mm256_shrdv_epi16(__A, __B, __C),
651
+ (__v16hi)__A);
652
+ }
653
+
654
+ static __inline__ __m256i __DEFAULT_FN_ATTRS256
655
+ _mm256_maskz_shrdv_epi16(__mmask16 __U, __m256i __A, __m256i __B, __m256i __C)
656
+ {
657
+ return (__m256i)__builtin_ia32_selectw_256(__U,
658
+ (__v16hi)_mm256_shrdv_epi16(__A, __B, __C),
659
+ (__v16hi)_mm256_setzero_si256());
660
+ }
661
+
662
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
663
+ _mm_shrdv_epi16(__m128i __A, __m128i __B, __m128i __C)
664
+ {
665
+ return (__m128i)__builtin_ia32_vpshrdvw128((__v8hi)__A, (__v8hi)__B,
666
+ (__v8hi)__C);
667
+ }
668
+
669
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
670
+ _mm_mask_shrdv_epi16(__m128i __A, __mmask8 __U, __m128i __B, __m128i __C)
671
+ {
672
+ return (__m128i)__builtin_ia32_selectw_128(__U,
673
+ (__v8hi)_mm_shrdv_epi16(__A, __B, __C),
674
+ (__v8hi)__A);
675
+ }
676
+
677
+ static __inline__ __m128i __DEFAULT_FN_ATTRS128
678
+ _mm_maskz_shrdv_epi16(__mmask8 __U, __m128i __A, __m128i __B, __m128i __C)
679
+ {
680
+ return (__m128i)__builtin_ia32_selectw_128(__U,
681
+ (__v8hi)_mm_shrdv_epi16(__A, __B, __C),
682
+ (__v8hi)_mm_setzero_si128());
683
+ }
684
+
685
+
686
+ #undef __DEFAULT_FN_ATTRS128
687
+ #undef __DEFAULT_FN_ATTRS256
688
+
689
+ #endif