@@ -51,36 +51,72 @@ define <2 x i64> @test_demanded_elts_pclmulqdq_17(<2 x i64> %a0, <2 x i64> %a1)
51
51
52
52
define <2 x i64 > @test_demanded_elts_pclmulqdq_undef_0 () {
53
53
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_undef_0(
54
- ; CHECK-NEXT: ret <2 x i64> zeroinitializer
54
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <2 x i64> @llvm.x86.pclmulqdq(<2 x i64> <i64 undef, i64 poison>, <2 x i64> <i64 undef, i64 poison>, i8 0)
55
+ ; CHECK-NEXT: ret <2 x i64> [[TMP1]]
55
56
;
56
57
%1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 undef , i64 1 >, <2 x i64 > <i64 undef , i64 1 >, i8 0 )
57
58
ret <2 x i64 > %1
58
59
}
59
60
60
61
define <2 x i64 > @test_demanded_elts_pclmulqdq_undef_1 () {
61
62
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_undef_1(
62
- ; CHECK-NEXT: ret <2 x i64> zeroinitializer
63
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <2 x i64> @llvm.x86.pclmulqdq(<2 x i64> <i64 poison, i64 undef>, <2 x i64> <i64 undef, i64 poison>, i8 1)
64
+ ; CHECK-NEXT: ret <2 x i64> [[TMP1]]
63
65
;
64
66
%1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 1 , i64 undef >, <2 x i64 > <i64 undef , i64 1 >, i8 1 )
65
67
ret <2 x i64 > %1
66
68
}
67
69
68
70
define <2 x i64 > @test_demanded_elts_pclmulqdq_undef_16 () {
69
71
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_undef_16(
70
- ; CHECK-NEXT: ret <2 x i64> zeroinitializer
72
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <2 x i64> @llvm.x86.pclmulqdq(<2 x i64> <i64 undef, i64 poison>, <2 x i64> <i64 poison, i64 undef>, i8 16)
73
+ ; CHECK-NEXT: ret <2 x i64> [[TMP1]]
71
74
;
72
75
%1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 undef , i64 1 >, <2 x i64 > <i64 1 , i64 undef >, i8 16 )
73
76
ret <2 x i64 > %1
74
77
}
75
78
76
79
define <2 x i64 > @test_demanded_elts_pclmulqdq_undef_17 () {
77
80
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_undef_17(
78
- ; CHECK-NEXT: ret <2 x i64> zeroinitializer
81
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <2 x i64> @llvm.x86.pclmulqdq(<2 x i64> <i64 poison, i64 undef>, <2 x i64> <i64 poison, i64 undef>, i8 17)
82
+ ; CHECK-NEXT: ret <2 x i64> [[TMP1]]
79
83
;
80
84
%1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 1 , i64 undef >, <2 x i64 > <i64 1 , i64 undef >, i8 17 )
81
85
ret <2 x i64 > %1
82
86
}
83
87
88
+ define <2 x i64 > @test_demanded_elts_pclmulqdq_poison_0 () {
89
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_poison_0(
90
+ ; CHECK-NEXT: ret <2 x i64> zeroinitializer
91
+ ;
92
+ %1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 poison, i64 1 >, <2 x i64 > <i64 poison, i64 1 >, i8 0 )
93
+ ret <2 x i64 > %1
94
+ }
95
+
96
+ define <2 x i64 > @test_demanded_elts_pclmulqdq_poison_1 () {
97
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_poison_1(
98
+ ; CHECK-NEXT: ret <2 x i64> zeroinitializer
99
+ ;
100
+ %1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 1 , i64 poison>, <2 x i64 > <i64 poison, i64 1 >, i8 1 )
101
+ ret <2 x i64 > %1
102
+ }
103
+
104
+ define <2 x i64 > @test_demanded_elts_pclmulqdq_poison_16 () {
105
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_poison_16(
106
+ ; CHECK-NEXT: ret <2 x i64> zeroinitializer
107
+ ;
108
+ %1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 poison, i64 1 >, <2 x i64 > <i64 1 , i64 poison>, i8 16 )
109
+ ret <2 x i64 > %1
110
+ }
111
+
112
+ define <2 x i64 > @test_demanded_elts_pclmulqdq_poison_17 () {
113
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_poison_17(
114
+ ; CHECK-NEXT: ret <2 x i64> zeroinitializer
115
+ ;
116
+ %1 = call <2 x i64 > @llvm.x86.pclmulqdq (<2 x i64 > <i64 1 , i64 poison>, <2 x i64 > <i64 1 , i64 poison>, i8 17 )
117
+ ret <2 x i64 > %1
118
+ }
119
+
84
120
define <4 x i64 > @test_demanded_elts_pclmulqdq_256_0 (<4 x i64 > %a0 , <4 x i64 > %a1 ) {
85
121
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_0(
86
122
; CHECK-NEXT: [[RES:%.*]] = call <4 x i64> @llvm.x86.pclmulqdq.256(<4 x i64> [[A0:%.*]], <4 x i64> [[A1:%.*]], i8 0)
@@ -135,36 +171,72 @@ define <4 x i64> @test_demanded_elts_pclmulqdq_256_17(<4 x i64> %a0, <4 x i64> %
135
171
136
172
define <4 x i64 > @test_demanded_elts_pclmulqdq_256_undef_0 () {
137
173
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_undef_0(
138
- ; CHECK-NEXT: ret <4 x i64> zeroinitializer
174
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <4 x i64> @llvm.x86.pclmulqdq.256(<4 x i64> <i64 undef, i64 poison, i64 undef, i64 poison>, <4 x i64> <i64 undef, i64 poison, i64 undef, i64 poison>, i8 0)
175
+ ; CHECK-NEXT: ret <4 x i64> [[TMP1]]
139
176
;
140
177
%1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 >, <4 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 >, i8 0 )
141
178
ret <4 x i64 > %1
142
179
}
143
180
144
181
define <4 x i64 > @test_demanded_elts_pclmulqdq_256_undef_1 () {
145
182
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_undef_1(
146
- ; CHECK-NEXT: ret <4 x i64> zeroinitializer
183
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <4 x i64> @llvm.x86.pclmulqdq.256(<4 x i64> <i64 poison, i64 undef, i64 poison, i64 undef>, <4 x i64> <i64 undef, i64 poison, i64 undef, i64 poison>, i8 1)
184
+ ; CHECK-NEXT: ret <4 x i64> [[TMP1]]
147
185
;
148
186
%1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef >, <4 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 >, i8 1 )
149
187
ret <4 x i64 > %1
150
188
}
151
189
152
190
define <4 x i64 > @test_demanded_elts_pclmulqdq_256_undef_16 () {
153
191
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_undef_16(
154
- ; CHECK-NEXT: ret <4 x i64> zeroinitializer
192
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <4 x i64> @llvm.x86.pclmulqdq.256(<4 x i64> <i64 undef, i64 poison, i64 undef, i64 poison>, <4 x i64> <i64 poison, i64 undef, i64 poison, i64 undef>, i8 16)
193
+ ; CHECK-NEXT: ret <4 x i64> [[TMP1]]
155
194
;
156
195
%1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 >, <4 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef >, i8 16 )
157
196
ret <4 x i64 > %1
158
197
}
159
198
160
199
define <4 x i64 > @test_demanded_elts_pclmulqdq_256_undef_17 () {
161
200
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_undef_17(
162
- ; CHECK-NEXT: ret <4 x i64> zeroinitializer
201
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <4 x i64> @llvm.x86.pclmulqdq.256(<4 x i64> <i64 poison, i64 undef, i64 poison, i64 undef>, <4 x i64> <i64 poison, i64 undef, i64 poison, i64 undef>, i8 17)
202
+ ; CHECK-NEXT: ret <4 x i64> [[TMP1]]
163
203
;
164
204
%1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef >, <4 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef >, i8 17 )
165
205
ret <4 x i64 > %1
166
206
}
167
207
208
+ define <4 x i64 > @test_demanded_elts_pclmulqdq_256_poison_0 () {
209
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_poison_0(
210
+ ; CHECK-NEXT: ret <4 x i64> zeroinitializer
211
+ ;
212
+ %1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 >, <4 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 >, i8 0 )
213
+ ret <4 x i64 > %1
214
+ }
215
+
216
+ define <4 x i64 > @test_demanded_elts_pclmulqdq_256_poison_1 () {
217
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_poison_1(
218
+ ; CHECK-NEXT: ret <4 x i64> zeroinitializer
219
+ ;
220
+ %1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison>, <4 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 >, i8 1 )
221
+ ret <4 x i64 > %1
222
+ }
223
+
224
+ define <4 x i64 > @test_demanded_elts_pclmulqdq_256_poison_16 () {
225
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_poison_16(
226
+ ; CHECK-NEXT: ret <4 x i64> zeroinitializer
227
+ ;
228
+ %1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 >, <4 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison>, i8 16 )
229
+ ret <4 x i64 > %1
230
+ }
231
+
232
+ define <4 x i64 > @test_demanded_elts_pclmulqdq_256_poison_17 () {
233
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_256_poison_17(
234
+ ; CHECK-NEXT: ret <4 x i64> zeroinitializer
235
+ ;
236
+ %1 = call <4 x i64 > @llvm.x86.pclmulqdq.256 (<4 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison>, <4 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison>, i8 17 )
237
+ ret <4 x i64 > %1
238
+ }
239
+
168
240
define <8 x i64 > @test_demanded_elts_pclmulqdq_512_0 (<8 x i64 > %a0 , <8 x i64 > %a1 ) {
169
241
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_0(
170
242
; CHECK-NEXT: [[RES:%.*]] = call <8 x i64> @llvm.x86.pclmulqdq.512(<8 x i64> [[A0:%.*]], <8 x i64> [[A1:%.*]], i8 0)
@@ -235,32 +307,68 @@ define <8 x i64> @test_demanded_elts_pclmulqdq_512_17(<8 x i64> %a0, <8 x i64> %
235
307
236
308
define <8 x i64 > @test_demanded_elts_pclmulqdq_512_undef_0 () {
237
309
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_undef_0(
238
- ; CHECK-NEXT: ret <8 x i64> zeroinitializer
310
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <8 x i64> @llvm.x86.pclmulqdq.512(<8 x i64> <i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison>, <8 x i64> <i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison>, i8 0)
311
+ ; CHECK-NEXT: ret <8 x i64> [[TMP1]]
239
312
;
240
313
%1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 >, <8 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 >, i8 0 )
241
314
ret <8 x i64 > %1
242
315
}
243
316
244
317
define <8 x i64 > @test_demanded_elts_pclmulqdq_512_undef_1 () {
245
318
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_undef_1(
246
- ; CHECK-NEXT: ret <8 x i64> zeroinitializer
319
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <8 x i64> @llvm.x86.pclmulqdq.512(<8 x i64> <i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef>, <8 x i64> <i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison>, i8 1)
320
+ ; CHECK-NEXT: ret <8 x i64> [[TMP1]]
247
321
;
248
322
%1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef >, <8 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 >, i8 1 )
249
323
ret <8 x i64 > %1
250
324
}
251
325
252
326
define <8 x i64 > @test_demanded_elts_pclmulqdq_512_undef_16 () {
253
327
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_undef_16(
254
- ; CHECK-NEXT: ret <8 x i64> zeroinitializer
328
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <8 x i64> @llvm.x86.pclmulqdq.512(<8 x i64> <i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison>, <8 x i64> <i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef>, i8 16)
329
+ ; CHECK-NEXT: ret <8 x i64> [[TMP1]]
255
330
;
256
331
%1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 >, <8 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef >, i8 16 )
257
332
ret <8 x i64 > %1
258
333
}
259
334
260
335
define <8 x i64 > @test_demanded_elts_pclmulqdq_512_undef_17 () {
261
336
; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_undef_17(
262
- ; CHECK-NEXT: ret <8 x i64> zeroinitializer
337
+ ; CHECK-NEXT: [[TMP1:%.*]] = call <8 x i64> @llvm.x86.pclmulqdq.512(<8 x i64> <i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef>, <8 x i64> <i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef, i64 poison, i64 undef>, i8 17)
338
+ ; CHECK-NEXT: ret <8 x i64> [[TMP1]]
263
339
;
264
340
%1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef >, <8 x i64 > <i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef , i64 1 , i64 undef >, i8 17 )
265
341
ret <8 x i64 > %1
266
342
}
343
+
344
+ define <8 x i64 > @test_demanded_elts_pclmulqdq_512_poison_0 () {
345
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_poison_0(
346
+ ; CHECK-NEXT: ret <8 x i64> zeroinitializer
347
+ ;
348
+ %1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 >, <8 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 >, i8 0 )
349
+ ret <8 x i64 > %1
350
+ }
351
+
352
+ define <8 x i64 > @test_demanded_elts_pclmulqdq_512_poison_1 () {
353
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_poison_1(
354
+ ; CHECK-NEXT: ret <8 x i64> zeroinitializer
355
+ ;
356
+ %1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison>, <8 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 >, i8 1 )
357
+ ret <8 x i64 > %1
358
+ }
359
+
360
+ define <8 x i64 > @test_demanded_elts_pclmulqdq_512_poison_16 () {
361
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_poison_16(
362
+ ; CHECK-NEXT: ret <8 x i64> zeroinitializer
363
+ ;
364
+ %1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 >, <8 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison>, i8 16 )
365
+ ret <8 x i64 > %1
366
+ }
367
+
368
+ define <8 x i64 > @test_demanded_elts_pclmulqdq_512_poison_17 () {
369
+ ; CHECK-LABEL: @test_demanded_elts_pclmulqdq_512_poison_17(
370
+ ; CHECK-NEXT: ret <8 x i64> zeroinitializer
371
+ ;
372
+ %1 = call <8 x i64 > @llvm.x86.pclmulqdq.512 (<8 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison>, <8 x i64 > <i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison, i64 1 , i64 poison>, i8 17 )
373
+ ret <8 x i64 > %1
374
+ }
0 commit comments