• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: %clang_cc1 %s -triple=x86_64-apple-darwin -target-feature +avx512dq -target-feature +avx512vl -emit-llvm -o - -Werror | FileCheck %s
2 
3 // Don't include mm_malloc.h, it's system specific.
4 #define __MM_MALLOC_H
5 
6 #include <immintrin.h>
7 
test_mm256_mullo_epi64(__m256i __A,__m256i __B)8 __m256i test_mm256_mullo_epi64 (__m256i __A, __m256i __B) {
9   // CHECK-LABEL: @test_mm256_mullo_epi64
10   // CHECK: mul <4 x i64>
11   return _mm256_mullo_epi64(__A, __B);
12 }
13 
test_mm256_mask_mullo_epi64(__m256i __W,__mmask8 __U,__m256i __A,__m256i __B)14 __m256i test_mm256_mask_mullo_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) {
15   // CHECK-LABEL: @test_mm256_mask_mullo_epi64
16   // CHECK: @llvm.x86.avx512.mask.pmull.q.256
17   return (__m256i) _mm256_mask_mullo_epi64 ( __W, __U, __A, __B);
18 }
19 
test_mm256_maskz_mullo_epi64(__mmask8 __U,__m256i __A,__m256i __B)20 __m256i test_mm256_maskz_mullo_epi64 (__mmask8 __U, __m256i __A, __m256i __B) {
21   // CHECK-LABEL: @test_mm256_maskz_mullo_epi64
22   // CHECK: @llvm.x86.avx512.mask.pmull.q.256
23   return (__m256i) _mm256_maskz_mullo_epi64 (__U, __A, __B);
24 }
25 
test_mm_mullo_epi64(__m128i __A,__m128i __B)26 __m128i test_mm_mullo_epi64 (__m128i __A, __m128i __B) {
27   // CHECK-LABEL: @test_mm_mullo_epi64
28   // CHECK: mul <2 x i64>
29   return (__m128i) _mm_mullo_epi64(__A, __B);
30 }
31 
test_mm_mask_mullo_epi64(__m128i __W,__mmask8 __U,__m128i __A,__m128i __B)32 __m128i test_mm_mask_mullo_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
33   // CHECK-LABEL: @test_mm_mask_mullo_epi64
34   // CHECK: @llvm.x86.avx512.mask.pmull.q.128
35   return (__m128i) _mm_mask_mullo_epi64 ( __W, __U, __A, __B);
36 }
37 
test_mm_maskz_mullo_epi64(__mmask8 __U,__m128i __A,__m128i __B)38 __m128i test_mm_maskz_mullo_epi64 (__mmask8 __U, __m128i __A, __m128i __B) {
39   // CHECK-LABEL: @test_mm_maskz_mullo_epi64
40   // CHECK: @llvm.x86.avx512.mask.pmull.q.128
41   return (__m128i) _mm_maskz_mullo_epi64 (__U, __A, __B);
42 }
43 
test_mm256_mask_andnot_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)44 __m256d test_mm256_mask_andnot_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
45   // CHECK-LABEL: @test_mm256_mask_andnot_pd
46   // CHECK: @llvm.x86.avx512.mask.andn.pd.256
47   return (__m256d) _mm256_mask_andnot_pd ( __W, __U, __A, __B);
48 }
49 
test_mm256_maskz_andnot_pd(__mmask8 __U,__m256d __A,__m256d __B)50 __m256d test_mm256_maskz_andnot_pd (__mmask8 __U, __m256d __A, __m256d __B) {
51   // CHECK-LABEL: @test_mm256_maskz_andnot_pd
52   // CHECK: @llvm.x86.avx512.mask.andn.pd.256
53   return (__m256d) _mm256_maskz_andnot_pd (__U, __A, __B);
54 }
55 
test_mm_mask_andnot_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)56 __m128d test_mm_mask_andnot_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
57   // CHECK-LABEL: @test_mm_mask_andnot_pd
58   // CHECK: @llvm.x86.avx512.mask.andn.pd.128
59   return (__m128d) _mm_mask_andnot_pd ( __W, __U, __A, __B);
60 }
61 
test_mm_maskz_andnot_pd(__mmask8 __U,__m128d __A,__m128d __B)62 __m128d test_mm_maskz_andnot_pd (__mmask8 __U, __m128d __A, __m128d __B) {
63   // CHECK-LABEL: @test_mm_maskz_andnot_pd
64   // CHECK: @llvm.x86.avx512.mask.andn.pd.128
65   return (__m128d) _mm_maskz_andnot_pd (__U, __A, __B);
66 }
67 
test_mm256_mask_andnot_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)68 __m256 test_mm256_mask_andnot_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
69   // CHECK-LABEL: @test_mm256_mask_andnot_ps
70   // CHECK: @llvm.x86.avx512.mask.andn.ps.256
71   return (__m256) _mm256_mask_andnot_ps ( __W, __U, __A, __B);
72 }
73 
test_mm256_maskz_andnot_ps(__mmask8 __U,__m256 __A,__m256 __B)74 __m256 test_mm256_maskz_andnot_ps (__mmask8 __U, __m256 __A, __m256 __B) {
75   // CHECK-LABEL: @test_mm256_maskz_andnot_ps
76   // CHECK: @llvm.x86.avx512.mask.andn.ps.256
77   return (__m256) _mm256_maskz_andnot_ps (__U, __A, __B);
78 }
79 
test_mm_mask_andnot_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)80 __m128 test_mm_mask_andnot_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
81   // CHECK-LABEL: @test_mm_mask_andnot_ps
82   // CHECK: @llvm.x86.avx512.mask.andn.ps.128
83   return (__m128) _mm_mask_andnot_ps ( __W, __U, __A, __B);
84 }
85 
test_mm_maskz_andnot_ps(__mmask8 __U,__m128 __A,__m128 __B)86 __m128 test_mm_maskz_andnot_ps (__mmask8 __U, __m128 __A, __m128 __B) {
87   // CHECK-LABEL: @test_mm_maskz_andnot_ps
88   // CHECK: @llvm.x86.avx512.mask.andn.ps.128
89   return (__m128) _mm_maskz_andnot_ps (__U, __A, __B);
90 }
91 
test_mm256_mask_and_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)92 __m256d test_mm256_mask_and_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
93   // CHECK-LABEL: @test_mm256_mask_and_pd
94   // CHECK: @llvm.x86.avx512.mask.and.pd.256
95   return (__m256d) _mm256_mask_and_pd ( __W, __U, __A, __B);
96 }
97 
test_mm256_maskz_and_pd(__mmask8 __U,__m256d __A,__m256d __B)98 __m256d test_mm256_maskz_and_pd (__mmask8 __U, __m256d __A, __m256d __B) {
99   // CHECK-LABEL: @test_mm256_maskz_and_pd
100   // CHECK: @llvm.x86.avx512.mask.and.pd.256
101   return (__m256d) _mm256_maskz_and_pd (__U, __A, __B);
102 }
103 
test_mm_mask_and_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)104 __m128d test_mm_mask_and_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
105   // CHECK-LABEL: @test_mm_mask_and_pd
106   // CHECK: @llvm.x86.avx512.mask.and.pd.128
107   return (__m128d) _mm_mask_and_pd ( __W, __U, __A, __B);
108 }
109 
test_mm_maskz_and_pd(__mmask8 __U,__m128d __A,__m128d __B)110 __m128d test_mm_maskz_and_pd (__mmask8 __U, __m128d __A, __m128d __B) {
111   // CHECK-LABEL: @test_mm_maskz_and_pd
112   // CHECK: @llvm.x86.avx512.mask.and.pd.128
113   return (__m128d) _mm_maskz_and_pd (__U, __A, __B);
114 }
115 
test_mm256_mask_and_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)116 __m256 test_mm256_mask_and_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
117   // CHECK-LABEL: @test_mm256_mask_and_ps
118   // CHECK: @llvm.x86.avx512.mask.and.ps.256
119   return (__m256) _mm256_mask_and_ps ( __W, __U, __A, __B);
120 }
121 
test_mm256_maskz_and_ps(__mmask8 __U,__m256 __A,__m256 __B)122 __m256 test_mm256_maskz_and_ps (__mmask8 __U, __m256 __A, __m256 __B) {
123   // CHECK-LABEL: @test_mm256_maskz_and_ps
124   // CHECK: @llvm.x86.avx512.mask.and.ps.256
125   return (__m256) _mm256_maskz_and_ps (__U, __A, __B);
126 }
127 
test_mm_mask_and_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)128 __m128 test_mm_mask_and_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
129   // CHECK-LABEL: @test_mm_mask_and_ps
130   // CHECK: @llvm.x86.avx512.mask.and.ps.128
131   return (__m128) _mm_mask_and_ps ( __W, __U, __A, __B);
132 }
133 
test_mm_maskz_and_ps(__mmask8 __U,__m128 __A,__m128 __B)134 __m128 test_mm_maskz_and_ps (__mmask8 __U, __m128 __A, __m128 __B) {
135   // CHECK-LABEL: @test_mm_maskz_and_ps
136   // CHECK: @llvm.x86.avx512.mask.and.ps.128
137   return (__m128) _mm_maskz_and_ps (__U, __A, __B);
138 }
139 
test_mm256_mask_xor_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)140 __m256d test_mm256_mask_xor_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
141   // CHECK-LABEL: @test_mm256_mask_xor_pd
142   // CHECK: @llvm.x86.avx512.mask.xor.pd.256
143   return (__m256d) _mm256_mask_xor_pd ( __W, __U, __A, __B);
144 }
145 
test_mm256_maskz_xor_pd(__mmask8 __U,__m256d __A,__m256d __B)146 __m256d test_mm256_maskz_xor_pd (__mmask8 __U, __m256d __A, __m256d __B) {
147   // CHECK-LABEL: @test_mm256_maskz_xor_pd
148   // CHECK: @llvm.x86.avx512.mask.xor.pd.256
149   return (__m256d) _mm256_maskz_xor_pd (__U, __A, __B);
150 }
151 
test_mm_mask_xor_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)152 __m128d test_mm_mask_xor_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
153   // CHECK-LABEL: @test_mm_mask_xor_pd
154   // CHECK: @llvm.x86.avx512.mask.xor.pd.128
155   return (__m128d) _mm_mask_xor_pd ( __W, __U, __A, __B);
156 }
157 
test_mm_maskz_xor_pd(__mmask8 __U,__m128d __A,__m128d __B)158 __m128d test_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B) {
159   // CHECK-LABEL: @test_mm_maskz_xor_pd
160   // CHECK: @llvm.x86.avx512.mask.xor.pd.128
161   return (__m128d) _mm_maskz_xor_pd (__U, __A, __B);
162 }
163 
test_mm256_mask_xor_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)164 __m256 test_mm256_mask_xor_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
165   // CHECK-LABEL: @test_mm256_mask_xor_ps
166   // CHECK: @llvm.x86.avx512.mask.xor.ps.256
167   return (__m256) _mm256_mask_xor_ps ( __W, __U, __A, __B);
168 }
169 
test_mm256_maskz_xor_ps(__mmask8 __U,__m256 __A,__m256 __B)170 __m256 test_mm256_maskz_xor_ps (__mmask8 __U, __m256 __A, __m256 __B) {
171   // CHECK-LABEL: @test_mm256_maskz_xor_ps
172   // CHECK: @llvm.x86.avx512.mask.xor.ps.256
173   return (__m256) _mm256_maskz_xor_ps (__U, __A, __B);
174 }
175 
test_mm_mask_xor_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)176 __m128 test_mm_mask_xor_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
177   // CHECK-LABEL: @test_mm_mask_xor_ps
178   // CHECK: @llvm.x86.avx512.mask.xor.ps.128
179     return (__m128) _mm_mask_xor_ps ( __W, __U, __A, __B);
180 }
181 
test_mm_maskz_xor_ps(__mmask8 __U,__m128 __A,__m128 __B)182 __m128 test_mm_maskz_xor_ps (__mmask8 __U, __m128 __A, __m128 __B) {
183   // CHECK-LABEL: @test_mm_maskz_xor_ps
184   // CHECK: @llvm.x86.avx512.mask.xor.ps.128
185   return (__m128) _mm_maskz_xor_ps (__U, __A, __B);
186 }
187 
test_mm256_mask_or_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)188 __m256d test_mm256_mask_or_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
189   // CHECK-LABEL: @test_mm256_mask_or_pd
190   // CHECK: @llvm.x86.avx512.mask.or.pd.256
191   return (__m256d) _mm256_mask_or_pd ( __W, __U, __A, __B);
192 }
193 
test_mm256_maskz_or_pd(__mmask8 __U,__m256d __A,__m256d __B)194 __m256d test_mm256_maskz_or_pd (__mmask8 __U, __m256d __A, __m256d __B) {
195   // CHECK-LABEL: @test_mm256_maskz_or_pd
196   // CHECK: @llvm.x86.avx512.mask.or.pd.256
197   return (__m256d) _mm256_maskz_or_pd (__U, __A, __B);
198 }
199 
test_mm_mask_or_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)200 __m128d test_mm_mask_or_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
201   // CHECK-LABEL: @test_mm_mask_or_pd
202   // CHECK: @llvm.x86.avx512.mask.or.pd.128
203   return (__m128d) _mm_mask_or_pd ( __W, __U, __A, __B);
204 }
205 
test_mm_maskz_or_pd(__mmask8 __U,__m128d __A,__m128d __B)206 __m128d test_mm_maskz_or_pd (__mmask8 __U, __m128d __A, __m128d __B) {
207   // CHECK-LABEL: @test_mm_maskz_or_pd
208   // CHECK: @llvm.x86.avx512.mask.or.pd.128
209   return (__m128d) _mm_maskz_or_pd (__U, __A, __B);
210 }
211 
test_mm256_mask_or_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)212 __m256 test_mm256_mask_or_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
213   // CHECK-LABEL: @test_mm256_mask_or_ps
214   // CHECK: @llvm.x86.avx512.mask.or.ps.256
215   return (__m256) _mm256_mask_or_ps ( __W, __U, __A, __B);
216 }
217 
test_mm256_maskz_or_ps(__mmask8 __U,__m256 __A,__m256 __B)218 __m256 test_mm256_maskz_or_ps (__mmask8 __U, __m256 __A, __m256 __B) {
219   // CHECK-LABEL: @test_mm256_maskz_or_ps
220   // CHECK: @llvm.x86.avx512.mask.or.ps.256
221   return (__m256) _mm256_maskz_or_ps (__U, __A, __B);
222 }
223 
test_mm_mask_or_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)224 __m128 test_mm_mask_or_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
225   // CHECK-LABEL: @test_mm_mask_or_ps
226   // CHECK: @llvm.x86.avx512.mask.or.ps.128
227   return (__m128) _mm_mask_or_ps ( __W, __U, __A, __B);
228 }
229 
test_mm_maskz_or_ps(__mmask8 __U,__m128 __A,__m128 __B)230 __m128 test_mm_maskz_or_ps (__mmask8 __U, __m128 __A, __m128 __B) {
231   // CHECK-LABEL: @test_mm_maskz_or_ps
232   // CHECK: @llvm.x86.avx512.mask.or.ps.128
233   return (__m128) _mm_maskz_or_ps(__U, __A, __B);
234 }
235 
test_mm_cvtpd_epi64(__m128d __A)236 __m128i test_mm_cvtpd_epi64(__m128d __A) {
237   // CHECK-LABEL: @test_mm_cvtpd_epi64
238   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.128
239   return _mm_cvtpd_epi64(__A);
240 }
241 
test_mm_mask_cvtpd_epi64(__m128i __W,__mmask8 __U,__m128d __A)242 __m128i test_mm_mask_cvtpd_epi64(__m128i __W, __mmask8 __U, __m128d __A) {
243   // CHECK-LABEL: @test_mm_mask_cvtpd_epi64
244   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.128
245   return _mm_mask_cvtpd_epi64(__W, __U, __A);
246 }
247 
test_mm_maskz_cvtpd_epi64(__mmask8 __U,__m128d __A)248 __m128i test_mm_maskz_cvtpd_epi64(__mmask8 __U, __m128d __A) {
249   // CHECK-LABEL: @test_mm_maskz_cvtpd_epi64
250   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.128
251   return _mm_maskz_cvtpd_epi64(__U, __A);
252 }
253 
test_mm256_cvtpd_epi64(__m256d __A)254 __m256i test_mm256_cvtpd_epi64(__m256d __A) {
255   // CHECK-LABEL: @test_mm256_cvtpd_epi64
256   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.256
257   return _mm256_cvtpd_epi64(__A);
258 }
259 
test_mm256_mask_cvtpd_epi64(__m256i __W,__mmask8 __U,__m256d __A)260 __m256i test_mm256_mask_cvtpd_epi64(__m256i __W, __mmask8 __U, __m256d __A) {
261   // CHECK-LABEL: @test_mm256_mask_cvtpd_epi64
262   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.256
263   return _mm256_mask_cvtpd_epi64(__W, __U, __A);
264 }
265 
test_mm256_maskz_cvtpd_epi64(__mmask8 __U,__m256d __A)266 __m256i test_mm256_maskz_cvtpd_epi64(__mmask8 __U, __m256d __A) {
267   // CHECK-LABEL: @test_mm256_maskz_cvtpd_epi64
268   // CHECK: @llvm.x86.avx512.mask.cvtpd2qq.256
269   return _mm256_maskz_cvtpd_epi64(__U, __A);
270 }
271 
test_mm_cvtpd_epu64(__m128d __A)272 __m128i test_mm_cvtpd_epu64(__m128d __A) {
273   // CHECK-LABEL: @test_mm_cvtpd_epu64
274   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.128
275   return _mm_cvtpd_epu64(__A);
276 }
277 
test_mm_mask_cvtpd_epu64(__m128i __W,__mmask8 __U,__m128d __A)278 __m128i test_mm_mask_cvtpd_epu64(__m128i __W, __mmask8 __U, __m128d __A) {
279   // CHECK-LABEL: @test_mm_mask_cvtpd_epu64
280   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.128
281   return _mm_mask_cvtpd_epu64(__W, __U, __A);
282 }
283 
test_mm_maskz_cvtpd_epu64(__mmask8 __U,__m128d __A)284 __m128i test_mm_maskz_cvtpd_epu64(__mmask8 __U, __m128d __A) {
285   // CHECK-LABEL: @test_mm_maskz_cvtpd_epu64
286   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.128
287   return _mm_maskz_cvtpd_epu64(__U, __A);
288 }
289 
test_mm256_cvtpd_epu64(__m256d __A)290 __m256i test_mm256_cvtpd_epu64(__m256d __A) {
291   // CHECK-LABEL: @test_mm256_cvtpd_epu64
292   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.256
293   return _mm256_cvtpd_epu64(__A);
294 }
295 
test_mm256_mask_cvtpd_epu64(__m256i __W,__mmask8 __U,__m256d __A)296 __m256i test_mm256_mask_cvtpd_epu64(__m256i __W, __mmask8 __U, __m256d __A) {
297   // CHECK-LABEL: @test_mm256_mask_cvtpd_epu64
298   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.256
299   return _mm256_mask_cvtpd_epu64(__W, __U, __A);
300 }
301 
test_mm256_maskz_cvtpd_epu64(__mmask8 __U,__m256d __A)302 __m256i test_mm256_maskz_cvtpd_epu64(__mmask8 __U, __m256d __A) {
303   // CHECK-LABEL: @test_mm256_maskz_cvtpd_epu64
304   // CHECK: @llvm.x86.avx512.mask.cvtpd2uqq.256
305   return _mm256_maskz_cvtpd_epu64(__U, __A);
306 }
307 
test_mm_cvtps_epi64(__m128 __A)308 __m128i test_mm_cvtps_epi64(__m128 __A) {
309   // CHECK-LABEL: @test_mm_cvtps_epi64
310   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.128
311   return _mm_cvtps_epi64(__A);
312 }
313 
test_mm_mask_cvtps_epi64(__m128i __W,__mmask8 __U,__m128 __A)314 __m128i test_mm_mask_cvtps_epi64(__m128i __W, __mmask8 __U, __m128 __A) {
315   // CHECK-LABEL: @test_mm_mask_cvtps_epi64
316   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.128
317   return _mm_mask_cvtps_epi64(__W, __U, __A);
318 }
319 
test_mm_maskz_cvtps_epi64(__mmask8 __U,__m128 __A)320 __m128i test_mm_maskz_cvtps_epi64(__mmask8 __U, __m128 __A) {
321   // CHECK-LABEL: @test_mm_maskz_cvtps_epi64
322   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.128
323   return _mm_maskz_cvtps_epi64(__U, __A);
324 }
325 
test_mm256_cvtps_epi64(__m128 __A)326 __m256i test_mm256_cvtps_epi64(__m128 __A) {
327   // CHECK-LABEL: @test_mm256_cvtps_epi64
328   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.256
329   return _mm256_cvtps_epi64(__A);
330 }
331 
test_mm256_mask_cvtps_epi64(__m256i __W,__mmask8 __U,__m128 __A)332 __m256i test_mm256_mask_cvtps_epi64(__m256i __W, __mmask8 __U, __m128 __A) {
333   // CHECK-LABEL: @test_mm256_mask_cvtps_epi64
334   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.256
335   return _mm256_mask_cvtps_epi64(__W, __U, __A);
336 }
337 
test_mm256_maskz_cvtps_epi64(__mmask8 __U,__m128 __A)338 __m256i test_mm256_maskz_cvtps_epi64(__mmask8 __U, __m128 __A) {
339   // CHECK-LABEL: @test_mm256_maskz_cvtps_epi64
340   // CHECK: @llvm.x86.avx512.mask.cvtps2qq.256
341   return _mm256_maskz_cvtps_epi64(__U, __A);
342 }
343 
test_mm_cvtps_epu64(__m128 __A)344 __m128i test_mm_cvtps_epu64(__m128 __A) {
345   // CHECK-LABEL: @test_mm_cvtps_epu64
346   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.128
347   return _mm_cvtps_epu64(__A);
348 }
349 
test_mm_mask_cvtps_epu64(__m128i __W,__mmask8 __U,__m128 __A)350 __m128i test_mm_mask_cvtps_epu64(__m128i __W, __mmask8 __U, __m128 __A) {
351   // CHECK-LABEL: @test_mm_mask_cvtps_epu64
352   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.128
353   return _mm_mask_cvtps_epu64(__W, __U, __A);
354 }
355 
test_mm_maskz_cvtps_epu64(__mmask8 __U,__m128 __A)356 __m128i test_mm_maskz_cvtps_epu64(__mmask8 __U, __m128 __A) {
357   // CHECK-LABEL: @test_mm_maskz_cvtps_epu64
358   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.128
359   return _mm_maskz_cvtps_epu64(__U, __A);
360 }
361 
test_mm256_cvtps_epu64(__m128 __A)362 __m256i test_mm256_cvtps_epu64(__m128 __A) {
363   // CHECK-LABEL: @test_mm256_cvtps_epu64
364   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.256
365   return _mm256_cvtps_epu64(__A);
366 }
367 
test_mm256_mask_cvtps_epu64(__m256i __W,__mmask8 __U,__m128 __A)368 __m256i test_mm256_mask_cvtps_epu64(__m256i __W, __mmask8 __U, __m128 __A) {
369   // CHECK-LABEL: @test_mm256_mask_cvtps_epu64
370   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.256
371   return _mm256_mask_cvtps_epu64(__W, __U, __A);
372 }
373 
test_mm256_maskz_cvtps_epu64(__mmask8 __U,__m128 __A)374 __m256i test_mm256_maskz_cvtps_epu64(__mmask8 __U, __m128 __A) {
375   // CHECK-LABEL: @test_mm256_maskz_cvtps_epu64
376   // CHECK: @llvm.x86.avx512.mask.cvtps2uqq.256
377   return _mm256_maskz_cvtps_epu64(__U, __A);
378 }
379 
test_mm_cvtepi64_pd(__m128i __A)380 __m128d test_mm_cvtepi64_pd(__m128i __A) {
381   // CHECK-LABEL: @test_mm_cvtepi64_pd
382   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.128
383   return _mm_cvtepi64_pd(__A);
384 }
385 
test_mm_mask_cvtepi64_pd(__m128d __W,__mmask8 __U,__m128i __A)386 __m128d test_mm_mask_cvtepi64_pd(__m128d __W, __mmask8 __U, __m128i __A) {
387   // CHECK-LABEL: @test_mm_mask_cvtepi64_pd
388   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.128
389   return _mm_mask_cvtepi64_pd(__W, __U, __A);
390 }
391 
test_mm_maskz_cvtepi64_pd(__mmask8 __U,__m128i __A)392 __m128d test_mm_maskz_cvtepi64_pd(__mmask8 __U, __m128i __A) {
393   // CHECK-LABEL: @test_mm_maskz_cvtepi64_pd
394   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.128
395   return _mm_maskz_cvtepi64_pd(__U, __A);
396 }
397 
test_mm256_cvtepi64_pd(__m256i __A)398 __m256d test_mm256_cvtepi64_pd(__m256i __A) {
399   // CHECK-LABEL: @test_mm256_cvtepi64_pd
400   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.256
401   return _mm256_cvtepi64_pd(__A);
402 }
403 
test_mm256_mask_cvtepi64_pd(__m256d __W,__mmask8 __U,__m256i __A)404 __m256d test_mm256_mask_cvtepi64_pd(__m256d __W, __mmask8 __U, __m256i __A) {
405   // CHECK-LABEL: @test_mm256_mask_cvtepi64_pd
406   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.256
407   return _mm256_mask_cvtepi64_pd(__W, __U, __A);
408 }
409 
test_mm256_maskz_cvtepi64_pd(__mmask8 __U,__m256i __A)410 __m256d test_mm256_maskz_cvtepi64_pd(__mmask8 __U, __m256i __A) {
411   // CHECK-LABEL: @test_mm256_maskz_cvtepi64_pd
412   // CHECK: @llvm.x86.avx512.mask.cvtqq2pd.256
413   return _mm256_maskz_cvtepi64_pd(__U, __A);
414 }
415 
test_mm_cvtepi64_ps(__m128i __A)416 __m128 test_mm_cvtepi64_ps(__m128i __A) {
417   // CHECK-LABEL: @test_mm_cvtepi64_ps
418   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.128
419   return _mm_cvtepi64_ps(__A);
420 }
421 
test_mm_mask_cvtepi64_ps(__m128 __W,__mmask8 __U,__m128i __A)422 __m128 test_mm_mask_cvtepi64_ps(__m128 __W, __mmask8 __U, __m128i __A) {
423   // CHECK-LABEL: @test_mm_mask_cvtepi64_ps
424   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.128
425   return _mm_mask_cvtepi64_ps(__W, __U, __A);
426 }
427 
test_mm_maskz_cvtepi64_ps(__mmask8 __U,__m128i __A)428 __m128 test_mm_maskz_cvtepi64_ps(__mmask8 __U, __m128i __A) {
429   // CHECK-LABEL: @test_mm_maskz_cvtepi64_ps
430   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.128
431   return _mm_maskz_cvtepi64_ps(__U, __A);
432 }
433 
test_mm256_cvtepi64_ps(__m256i __A)434 __m128 test_mm256_cvtepi64_ps(__m256i __A) {
435   // CHECK-LABEL: @test_mm256_cvtepi64_ps
436   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.256
437   return _mm256_cvtepi64_ps(__A);
438 }
439 
test_mm256_mask_cvtepi64_ps(__m128 __W,__mmask8 __U,__m256i __A)440 __m128 test_mm256_mask_cvtepi64_ps(__m128 __W, __mmask8 __U, __m256i __A) {
441   // CHECK-LABEL: @test_mm256_mask_cvtepi64_ps
442   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.256
443   return _mm256_mask_cvtepi64_ps(__W, __U, __A);
444 }
445 
test_mm256_maskz_cvtepi64_ps(__mmask8 __U,__m256i __A)446 __m128 test_mm256_maskz_cvtepi64_ps(__mmask8 __U, __m256i __A) {
447   // CHECK-LABEL: @test_mm256_maskz_cvtepi64_ps
448   // CHECK: @llvm.x86.avx512.mask.cvtqq2ps.256
449   return _mm256_maskz_cvtepi64_ps(__U, __A);
450 }
451 
test_mm_cvttpd_epi64(__m128d __A)452 __m128i test_mm_cvttpd_epi64(__m128d __A) {
453   // CHECK-LABEL: @test_mm_cvttpd_epi64
454   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.128
455   return _mm_cvttpd_epi64(__A);
456 }
457 
test_mm_mask_cvttpd_epi64(__m128i __W,__mmask8 __U,__m128d __A)458 __m128i test_mm_mask_cvttpd_epi64(__m128i __W, __mmask8 __U, __m128d __A) {
459   // CHECK-LABEL: @test_mm_mask_cvttpd_epi64
460   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.128
461   return _mm_mask_cvttpd_epi64(__W, __U, __A);
462 }
463 
test_mm_maskz_cvttpd_epi64(__mmask8 __U,__m128d __A)464 __m128i test_mm_maskz_cvttpd_epi64(__mmask8 __U, __m128d __A) {
465   // CHECK-LABEL: @test_mm_maskz_cvttpd_epi64
466   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.128
467   return _mm_maskz_cvttpd_epi64(__U, __A);
468 }
469 
test_mm256_cvttpd_epi64(__m256d __A)470 __m256i test_mm256_cvttpd_epi64(__m256d __A) {
471   // CHECK-LABEL: @test_mm256_cvttpd_epi64
472   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.256
473   return _mm256_cvttpd_epi64(__A);
474 }
475 
test_mm256_mask_cvttpd_epi64(__m256i __W,__mmask8 __U,__m256d __A)476 __m256i test_mm256_mask_cvttpd_epi64(__m256i __W, __mmask8 __U, __m256d __A) {
477   // CHECK-LABEL: @test_mm256_mask_cvttpd_epi64
478   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.256
479   return _mm256_mask_cvttpd_epi64(__W, __U, __A);
480 }
481 
test_mm256_maskz_cvttpd_epi64(__mmask8 __U,__m256d __A)482 __m256i test_mm256_maskz_cvttpd_epi64(__mmask8 __U, __m256d __A) {
483   // CHECK-LABEL: @test_mm256_maskz_cvttpd_epi64
484   // CHECK: @llvm.x86.avx512.mask.cvttpd2qq.256
485   return _mm256_maskz_cvttpd_epi64(__U, __A);
486 }
487 
test_mm_cvttpd_epu64(__m128d __A)488 __m128i test_mm_cvttpd_epu64(__m128d __A) {
489   // CHECK-LABEL: @test_mm_cvttpd_epu64
490   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.128
491   return _mm_cvttpd_epu64(__A);
492 }
493 
test_mm_mask_cvttpd_epu64(__m128i __W,__mmask8 __U,__m128d __A)494 __m128i test_mm_mask_cvttpd_epu64(__m128i __W, __mmask8 __U, __m128d __A) {
495   // CHECK-LABEL: @test_mm_mask_cvttpd_epu64
496   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.128
497   return _mm_mask_cvttpd_epu64(__W, __U, __A);
498 }
499 
test_mm_maskz_cvttpd_epu64(__mmask8 __U,__m128d __A)500 __m128i test_mm_maskz_cvttpd_epu64(__mmask8 __U, __m128d __A) {
501   // CHECK-LABEL: @test_mm_maskz_cvttpd_epu64
502   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.128
503   return _mm_maskz_cvttpd_epu64(__U, __A);
504 }
505 
test_mm256_cvttpd_epu64(__m256d __A)506 __m256i test_mm256_cvttpd_epu64(__m256d __A) {
507   // CHECK-LABEL: @test_mm256_cvttpd_epu64
508   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.256
509   return _mm256_cvttpd_epu64(__A);
510 }
511 
test_mm256_mask_cvttpd_epu64(__m256i __W,__mmask8 __U,__m256d __A)512 __m256i test_mm256_mask_cvttpd_epu64(__m256i __W, __mmask8 __U, __m256d __A) {
513   // CHECK-LABEL: @test_mm256_mask_cvttpd_epu64
514   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.256
515   return _mm256_mask_cvttpd_epu64(__W, __U, __A);
516 }
517 
test_mm256_maskz_cvttpd_epu64(__mmask8 __U,__m256d __A)518 __m256i test_mm256_maskz_cvttpd_epu64(__mmask8 __U, __m256d __A) {
519   // CHECK-LABEL: @test_mm256_maskz_cvttpd_epu64
520   // CHECK: @llvm.x86.avx512.mask.cvttpd2uqq.256
521   return _mm256_maskz_cvttpd_epu64(__U, __A);
522 }
523 
test_mm_cvttps_epi64(__m128 __A)524 __m128i test_mm_cvttps_epi64(__m128 __A) {
525   // CHECK-LABEL: @test_mm_cvttps_epi64
526   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.128
527   return _mm_cvttps_epi64(__A);
528 }
529 
test_mm_mask_cvttps_epi64(__m128i __W,__mmask8 __U,__m128 __A)530 __m128i test_mm_mask_cvttps_epi64(__m128i __W, __mmask8 __U, __m128 __A) {
531   // CHECK-LABEL: @test_mm_mask_cvttps_epi64
532   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.128
533   return _mm_mask_cvttps_epi64(__W, __U, __A);
534 }
535 
test_mm_maskz_cvttps_epi64(__mmask8 __U,__m128 __A)536 __m128i test_mm_maskz_cvttps_epi64(__mmask8 __U, __m128 __A) {
537   // CHECK-LABEL: @test_mm_maskz_cvttps_epi64
538   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.128
539   return _mm_maskz_cvttps_epi64(__U, __A);
540 }
541 
test_mm256_cvttps_epi64(__m128 __A)542 __m256i test_mm256_cvttps_epi64(__m128 __A) {
543   // CHECK-LABEL: @test_mm256_cvttps_epi64
544   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.256
545   return _mm256_cvttps_epi64(__A);
546 }
547 
test_mm256_mask_cvttps_epi64(__m256i __W,__mmask8 __U,__m128 __A)548 __m256i test_mm256_mask_cvttps_epi64(__m256i __W, __mmask8 __U, __m128 __A) {
549   // CHECK-LABEL: @test_mm256_mask_cvttps_epi64
550   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.256
551   return _mm256_mask_cvttps_epi64(__W, __U, __A);
552 }
553 
test_mm256_maskz_cvttps_epi64(__mmask8 __U,__m128 __A)554 __m256i test_mm256_maskz_cvttps_epi64(__mmask8 __U, __m128 __A) {
555   // CHECK-LABEL: @test_mm256_maskz_cvttps_epi64
556   // CHECK: @llvm.x86.avx512.mask.cvttps2qq.256
557   return _mm256_maskz_cvttps_epi64(__U, __A);
558 }
559 
test_mm_cvttps_epu64(__m128 __A)560 __m128i test_mm_cvttps_epu64(__m128 __A) {
561   // CHECK-LABEL: @test_mm_cvttps_epu64
562   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.128
563   return _mm_cvttps_epu64(__A);
564 }
565 
test_mm_mask_cvttps_epu64(__m128i __W,__mmask8 __U,__m128 __A)566 __m128i test_mm_mask_cvttps_epu64(__m128i __W, __mmask8 __U, __m128 __A) {
567   // CHECK-LABEL: @test_mm_mask_cvttps_epu64
568   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.128
569   return _mm_mask_cvttps_epu64(__W, __U, __A);
570 }
571 
test_mm_maskz_cvttps_epu64(__mmask8 __U,__m128 __A)572 __m128i test_mm_maskz_cvttps_epu64(__mmask8 __U, __m128 __A) {
573   // CHECK-LABEL: @test_mm_maskz_cvttps_epu64
574   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.128
575   return _mm_maskz_cvttps_epu64(__U, __A);
576 }
577 
test_mm256_cvttps_epu64(__m128 __A)578 __m256i test_mm256_cvttps_epu64(__m128 __A) {
579   // CHECK-LABEL: @test_mm256_cvttps_epu64
580   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.256
581   return _mm256_cvttps_epu64(__A);
582 }
583 
test_mm256_mask_cvttps_epu64(__m256i __W,__mmask8 __U,__m128 __A)584 __m256i test_mm256_mask_cvttps_epu64(__m256i __W, __mmask8 __U, __m128 __A) {
585   // CHECK-LABEL: @test_mm256_mask_cvttps_epu64
586   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.256
587   return _mm256_mask_cvttps_epu64(__W, __U, __A);
588 }
589 
test_mm256_maskz_cvttps_epu64(__mmask8 __U,__m128 __A)590 __m256i test_mm256_maskz_cvttps_epu64(__mmask8 __U, __m128 __A) {
591   // CHECK-LABEL: @test_mm256_maskz_cvttps_epu64
592   // CHECK: @llvm.x86.avx512.mask.cvttps2uqq.256
593   return _mm256_maskz_cvttps_epu64(__U, __A);
594 }
595 
test_mm_cvtepu64_pd(__m128i __A)596 __m128d test_mm_cvtepu64_pd(__m128i __A) {
597   // CHECK-LABEL: @test_mm_cvtepu64_pd
598   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.128
599   return _mm_cvtepu64_pd(__A);
600 }
601 
test_mm_mask_cvtepu64_pd(__m128d __W,__mmask8 __U,__m128i __A)602 __m128d test_mm_mask_cvtepu64_pd(__m128d __W, __mmask8 __U, __m128i __A) {
603   // CHECK-LABEL: @test_mm_mask_cvtepu64_pd
604   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.128
605   return _mm_mask_cvtepu64_pd(__W, __U, __A);
606 }
607 
test_mm_maskz_cvtepu64_pd(__mmask8 __U,__m128i __A)608 __m128d test_mm_maskz_cvtepu64_pd(__mmask8 __U, __m128i __A) {
609   // CHECK-LABEL: @test_mm_maskz_cvtepu64_pd
610   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.128
611   return _mm_maskz_cvtepu64_pd(__U, __A);
612 }
613 
test_mm256_cvtepu64_pd(__m256i __A)614 __m256d test_mm256_cvtepu64_pd(__m256i __A) {
615   // CHECK-LABEL: @test_mm256_cvtepu64_pd
616   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.256
617   return _mm256_cvtepu64_pd(__A);
618 }
619 
test_mm256_mask_cvtepu64_pd(__m256d __W,__mmask8 __U,__m256i __A)620 __m256d test_mm256_mask_cvtepu64_pd(__m256d __W, __mmask8 __U, __m256i __A) {
621   // CHECK-LABEL: @test_mm256_mask_cvtepu64_pd
622   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.256
623   return _mm256_mask_cvtepu64_pd(__W, __U, __A);
624 }
625 
test_mm256_maskz_cvtepu64_pd(__mmask8 __U,__m256i __A)626 __m256d test_mm256_maskz_cvtepu64_pd(__mmask8 __U, __m256i __A) {
627   // CHECK-LABEL: @test_mm256_maskz_cvtepu64_pd
628   // CHECK: @llvm.x86.avx512.mask.cvtuqq2pd.256
629   return _mm256_maskz_cvtepu64_pd(__U, __A);
630 }
631 
test_mm_cvtepu64_ps(__m128i __A)632 __m128 test_mm_cvtepu64_ps(__m128i __A) {
633   // CHECK-LABEL: @test_mm_cvtepu64_ps
634   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.128
635   return _mm_cvtepu64_ps(__A);
636 }
637 
test_mm_mask_cvtepu64_ps(__m128 __W,__mmask8 __U,__m128i __A)638 __m128 test_mm_mask_cvtepu64_ps(__m128 __W, __mmask8 __U, __m128i __A) {
639   // CHECK-LABEL: @test_mm_mask_cvtepu64_ps
640   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.128
641   return _mm_mask_cvtepu64_ps(__W, __U, __A);
642 }
643 
test_mm_maskz_cvtepu64_ps(__mmask8 __U,__m128i __A)644 __m128 test_mm_maskz_cvtepu64_ps(__mmask8 __U, __m128i __A) {
645   // CHECK-LABEL: @test_mm_maskz_cvtepu64_ps
646   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.128
647   return _mm_maskz_cvtepu64_ps(__U, __A);
648 }
649 
test_mm256_cvtepu64_ps(__m256i __A)650 __m128 test_mm256_cvtepu64_ps(__m256i __A) {
651   // CHECK-LABEL: @test_mm256_cvtepu64_ps
652   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.256
653   return _mm256_cvtepu64_ps(__A);
654 }
655 
test_mm256_mask_cvtepu64_ps(__m128 __W,__mmask8 __U,__m256i __A)656 __m128 test_mm256_mask_cvtepu64_ps(__m128 __W, __mmask8 __U, __m256i __A) {
657   // CHECK-LABEL: @test_mm256_mask_cvtepu64_ps
658   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.256
659   return _mm256_mask_cvtepu64_ps(__W, __U, __A);
660 }
661 
test_mm256_maskz_cvtepu64_ps(__mmask8 __U,__m256i __A)662 __m128 test_mm256_maskz_cvtepu64_ps(__mmask8 __U, __m256i __A) {
663   // CHECK-LABEL: @test_mm256_maskz_cvtepu64_ps
664   // CHECK: @llvm.x86.avx512.mask.cvtuqq2ps.256
665   return _mm256_maskz_cvtepu64_ps(__U, __A);
666 }
667 
test_mm_range_pd(__m128d __A,__m128d __B)668 __m128d test_mm_range_pd(__m128d __A, __m128d __B) {
669   // CHECK-LABEL: @test_mm_range_pd
670   // CHECK: @llvm.x86.avx512.mask.range.pd.128
671   return _mm_range_pd(__A, __B, 4);
672 }
673 
test_mm_mask_range_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)674 __m128d test_mm_mask_range_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
675   // CHECK-LABEL: @test_mm_mask_range_pd
676   // CHECK: @llvm.x86.avx512.mask.range.pd.128
677   return _mm_mask_range_pd(__W, __U, __A, __B, 4);
678 }
679 
test_mm_maskz_range_pd(__mmask8 __U,__m128d __A,__m128d __B)680 __m128d test_mm_maskz_range_pd(__mmask8 __U, __m128d __A, __m128d __B) {
681   // CHECK-LABEL: @test_mm_maskz_range_pd
682   // CHECK: @llvm.x86.avx512.mask.range.pd.128
683   return _mm_maskz_range_pd(__U, __A, __B, 4);
684 }
685 
test_mm256_range_pd(__m256d __A,__m256d __B)686 __m256d test_mm256_range_pd(__m256d __A, __m256d __B) {
687   // CHECK-LABEL: @test_mm256_range_pd
688   // CHECK: @llvm.x86.avx512.mask.range.pd.256
689   return _mm256_range_pd(__A, __B, 4);
690 }
691 
test_mm256_mask_range_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)692 __m256d test_mm256_mask_range_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
693   // CHECK-LABEL: @test_mm256_mask_range_pd
694   // CHECK: @llvm.x86.avx512.mask.range.pd.256
695   return _mm256_mask_range_pd(__W, __U, __A, __B, 4);
696 }
697 
test_mm256_maskz_range_pd(__mmask8 __U,__m256d __A,__m256d __B)698 __m256d test_mm256_maskz_range_pd(__mmask8 __U, __m256d __A, __m256d __B) {
699   // CHECK-LABEL: @test_mm256_maskz_range_pd
700   // CHECK: @llvm.x86.avx512.mask.range.pd.256
701   return _mm256_maskz_range_pd(__U, __A, __B, 4);
702 }
703 
test_mm_range_ps(__m128 __A,__m128 __B)704 __m128 test_mm_range_ps(__m128 __A, __m128 __B) {
705   // CHECK-LABEL: @test_mm_range_ps
706   // CHECK: @llvm.x86.avx512.mask.range.ps.128
707   return _mm_range_ps(__A, __B, 4);
708 }
709 
test_mm_mask_range_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)710 __m128 test_mm_mask_range_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
711   // CHECK-LABEL: @test_mm_mask_range_ps
712   // CHECK: @llvm.x86.avx512.mask.range.ps.128
713   return _mm_mask_range_ps(__W, __U, __A, __B, 4);
714 }
715 
test_mm_maskz_range_ps(__mmask8 __U,__m128 __A,__m128 __B)716 __m128 test_mm_maskz_range_ps(__mmask8 __U, __m128 __A, __m128 __B) {
717   // CHECK-LABEL: @test_mm_maskz_range_ps
718   // CHECK: @llvm.x86.avx512.mask.range.ps.128
719   return _mm_maskz_range_ps(__U, __A, __B, 4);
720 }
721 
test_mm256_range_ps(__m256 __A,__m256 __B)722 __m256 test_mm256_range_ps(__m256 __A, __m256 __B) {
723   // CHECK-LABEL: @test_mm256_range_ps
724   // CHECK: @llvm.x86.avx512.mask.range.ps.256
725   return _mm256_range_ps(__A, __B, 4);
726 }
727 
test_mm256_mask_range_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)728 __m256 test_mm256_mask_range_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
729   // CHECK-LABEL: @test_mm256_mask_range_ps
730   // CHECK: @llvm.x86.avx512.mask.range.ps.256
731   return _mm256_mask_range_ps(__W, __U, __A, __B, 4);
732 }
733 
test_mm256_maskz_range_ps(__mmask8 __U,__m256 __A,__m256 __B)734 __m256 test_mm256_maskz_range_ps(__mmask8 __U, __m256 __A, __m256 __B) {
735   // CHECK-LABEL: @test_mm256_maskz_range_ps
736   // CHECK: @llvm.x86.avx512.mask.range.ps.256
737   return _mm256_maskz_range_ps(__U, __A, __B, 4);
738 }
739 
test_mm_reduce_pd(__m128d __A)740 __m128d test_mm_reduce_pd(__m128d __A) {
741   // CHECK-LABEL: @test_mm_reduce_pd
742   // CHECK: @llvm.x86.avx512.mask.reduce.pd.128
743   return _mm_reduce_pd(__A, 4);
744 }
745 
test_mm_mask_reduce_pd(__m128d __W,__mmask8 __U,__m128d __A)746 __m128d test_mm_mask_reduce_pd(__m128d __W, __mmask8 __U, __m128d __A) {
747   // CHECK-LABEL: @test_mm_mask_reduce_pd
748   // CHECK: @llvm.x86.avx512.mask.reduce.pd.128
749   return _mm_mask_reduce_pd(__W, __U, __A, 4);
750 }
751 
test_mm_maskz_reduce_pd(__mmask8 __U,__m128d __A)752 __m128d test_mm_maskz_reduce_pd(__mmask8 __U, __m128d __A) {
753   // CHECK-LABEL: @test_mm_maskz_reduce_pd
754   // CHECK: @llvm.x86.avx512.mask.reduce.pd.128
755   return _mm_maskz_reduce_pd(__U, __A, 4);
756 }
757 
test_mm256_reduce_pd(__m256d __A)758 __m256d test_mm256_reduce_pd(__m256d __A) {
759   // CHECK-LABEL: @test_mm256_reduce_pd
760   // CHECK: @llvm.x86.avx512.mask.reduce.pd.256
761   return _mm256_reduce_pd(__A, 4);
762 }
763 
test_mm256_mask_reduce_pd(__m256d __W,__mmask8 __U,__m256d __A)764 __m256d test_mm256_mask_reduce_pd(__m256d __W, __mmask8 __U, __m256d __A) {
765   // CHECK-LABEL: @test_mm256_mask_reduce_pd
766   // CHECK: @llvm.x86.avx512.mask.reduce.pd.256
767   return _mm256_mask_reduce_pd(__W, __U, __A, 4);
768 }
769 
test_mm256_maskz_reduce_pd(__mmask8 __U,__m256d __A)770 __m256d test_mm256_maskz_reduce_pd(__mmask8 __U, __m256d __A) {
771   // CHECK-LABEL: @test_mm256_maskz_reduce_pd
772   // CHECK: @llvm.x86.avx512.mask.reduce.pd.256
773   return _mm256_maskz_reduce_pd(__U, __A, 4);
774 }
775 
test_mm_reduce_ps(__m128 __A)776 __m128 test_mm_reduce_ps(__m128 __A) {
777   // CHECK-LABEL: @test_mm_reduce_ps
778   // CHECK: @llvm.x86.avx512.mask.reduce.ps.128
779   return _mm_reduce_ps(__A, 4);
780 }
781 
test_mm_mask_reduce_ps(__m128 __W,__mmask8 __U,__m128 __A)782 __m128 test_mm_mask_reduce_ps(__m128 __W, __mmask8 __U, __m128 __A) {
783   // CHECK-LABEL: @test_mm_mask_reduce_ps
784   // CHECK: @llvm.x86.avx512.mask.reduce.ps.128
785   return _mm_mask_reduce_ps(__W, __U, __A, 4);
786 }
787 
test_mm_maskz_reduce_ps(__mmask8 __U,__m128 __A)788 __m128 test_mm_maskz_reduce_ps(__mmask8 __U, __m128 __A) {
789   // CHECK-LABEL: @test_mm_maskz_reduce_ps
790   // CHECK: @llvm.x86.avx512.mask.reduce.ps.128
791   return _mm_maskz_reduce_ps(__U, __A, 4);
792 }
793 
test_mm256_reduce_ps(__m256 __A)794 __m256 test_mm256_reduce_ps(__m256 __A) {
795   // CHECK-LABEL: @test_mm256_reduce_ps
796   // CHECK: @llvm.x86.avx512.mask.reduce.ps.256
797   return _mm256_reduce_ps(__A, 4);
798 }
799 
test_mm256_mask_reduce_ps(__m256 __W,__mmask8 __U,__m256 __A)800 __m256 test_mm256_mask_reduce_ps(__m256 __W, __mmask8 __U, __m256 __A) {
801   // CHECK-LABEL: @test_mm256_mask_reduce_ps
802   // CHECK: @llvm.x86.avx512.mask.reduce.ps.256
803   return _mm256_mask_reduce_ps(__W, __U, __A, 4);
804 }
805 
test_mm256_maskz_reduce_ps(__mmask8 __U,__m256 __A)806 __m256 test_mm256_maskz_reduce_ps(__mmask8 __U, __m256 __A) {
807   // CHECK-LABEL: @test_mm256_maskz_reduce_ps
808   // CHECK: @llvm.x86.avx512.mask.reduce.ps.256
809   return _mm256_maskz_reduce_ps(__U, __A, 4);
810 }
811