@@ -142,147 +142,6 @@ entry:
142
142
ret i32 %2
143
143
}
144
144
145
- define i32 @xmsk_eq_allones_i8 (<32 x i8 > %a ) {
146
- ; CHECK-LABEL: xmsk_eq_allones_i8:
147
- ; CHECK: # %bb.0: # %entry
148
- ; CHECK-NEXT: addi.d $sp, $sp, -64
149
- ; CHECK-NEXT: .cfi_def_cfa_offset 64
150
- ; CHECK-NEXT: st.d $ra, $sp, 56 # 8-byte Folded Spill
151
- ; CHECK-NEXT: st.d $fp, $sp, 48 # 8-byte Folded Spill
152
- ; CHECK-NEXT: .cfi_offset 1, -8
153
- ; CHECK-NEXT: .cfi_offset 22, -16
154
- ; CHECK-NEXT: addi.d $fp, $sp, 64
155
- ; CHECK-NEXT: .cfi_def_cfa 22, 0
156
- ; CHECK-NEXT: bstrins.d $sp, $zero, 4, 0
157
- ; CHECK-NEXT: xvseqi.b $xr0, $xr0, -1
158
- ; CHECK-NEXT: xvst $xr0, $sp, 0
159
- ; CHECK-NEXT: vpickve2gr.b $a0, $vr0, 0
160
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 1
161
- ; CHECK-NEXT: andi $a1, $a1, 1
162
- ; CHECK-NEXT: bstrins.d $a0, $a1, 63, 1
163
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 2
164
- ; CHECK-NEXT: bstrins.d $a0, $a1, 2, 2
165
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 3
166
- ; CHECK-NEXT: bstrins.d $a0, $a1, 3, 3
167
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 4
168
- ; CHECK-NEXT: bstrins.d $a0, $a1, 4, 4
169
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 5
170
- ; CHECK-NEXT: bstrins.d $a0, $a1, 5, 5
171
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 6
172
- ; CHECK-NEXT: andi $a1, $a1, 1
173
- ; CHECK-NEXT: slli.d $a1, $a1, 6
174
- ; CHECK-NEXT: or $a0, $a0, $a1
175
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 7
176
- ; CHECK-NEXT: andi $a1, $a1, 1
177
- ; CHECK-NEXT: slli.d $a1, $a1, 7
178
- ; CHECK-NEXT: or $a0, $a0, $a1
179
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 8
180
- ; CHECK-NEXT: andi $a1, $a1, 1
181
- ; CHECK-NEXT: slli.d $a1, $a1, 8
182
- ; CHECK-NEXT: or $a0, $a0, $a1
183
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 9
184
- ; CHECK-NEXT: andi $a1, $a1, 1
185
- ; CHECK-NEXT: slli.d $a1, $a1, 9
186
- ; CHECK-NEXT: or $a0, $a0, $a1
187
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 10
188
- ; CHECK-NEXT: andi $a1, $a1, 1
189
- ; CHECK-NEXT: slli.d $a1, $a1, 10
190
- ; CHECK-NEXT: or $a0, $a0, $a1
191
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 11
192
- ; CHECK-NEXT: andi $a1, $a1, 1
193
- ; CHECK-NEXT: slli.d $a1, $a1, 11
194
- ; CHECK-NEXT: or $a0, $a0, $a1
195
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 12
196
- ; CHECK-NEXT: andi $a1, $a1, 1
197
- ; CHECK-NEXT: slli.d $a1, $a1, 12
198
- ; CHECK-NEXT: or $a0, $a0, $a1
199
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 13
200
- ; CHECK-NEXT: andi $a1, $a1, 1
201
- ; CHECK-NEXT: slli.d $a1, $a1, 13
202
- ; CHECK-NEXT: or $a0, $a0, $a1
203
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 14
204
- ; CHECK-NEXT: andi $a1, $a1, 1
205
- ; CHECK-NEXT: slli.d $a1, $a1, 14
206
- ; CHECK-NEXT: or $a0, $a0, $a1
207
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 15
208
- ; CHECK-NEXT: andi $a1, $a1, 1
209
- ; CHECK-NEXT: ld.bu $a2, $sp, 16
210
- ; CHECK-NEXT: slli.d $a1, $a1, 15
211
- ; CHECK-NEXT: or $a0, $a0, $a1
212
- ; CHECK-NEXT: ld.bu $a1, $sp, 17
213
- ; CHECK-NEXT: andi $a2, $a2, 1
214
- ; CHECK-NEXT: slli.d $a2, $a2, 16
215
- ; CHECK-NEXT: or $a0, $a0, $a2
216
- ; CHECK-NEXT: andi $a1, $a1, 1
217
- ; CHECK-NEXT: ld.bu $a2, $sp, 18
218
- ; CHECK-NEXT: slli.d $a1, $a1, 17
219
- ; CHECK-NEXT: or $a0, $a0, $a1
220
- ; CHECK-NEXT: ld.bu $a1, $sp, 19
221
- ; CHECK-NEXT: andi $a2, $a2, 1
222
- ; CHECK-NEXT: slli.d $a2, $a2, 18
223
- ; CHECK-NEXT: or $a0, $a0, $a2
224
- ; CHECK-NEXT: andi $a1, $a1, 1
225
- ; CHECK-NEXT: ld.bu $a2, $sp, 20
226
- ; CHECK-NEXT: slli.d $a1, $a1, 19
227
- ; CHECK-NEXT: or $a0, $a0, $a1
228
- ; CHECK-NEXT: ld.bu $a1, $sp, 21
229
- ; CHECK-NEXT: andi $a2, $a2, 1
230
- ; CHECK-NEXT: slli.d $a2, $a2, 20
231
- ; CHECK-NEXT: or $a0, $a0, $a2
232
- ; CHECK-NEXT: andi $a1, $a1, 1
233
- ; CHECK-NEXT: ld.bu $a2, $sp, 22
234
- ; CHECK-NEXT: slli.d $a1, $a1, 21
235
- ; CHECK-NEXT: or $a0, $a0, $a1
236
- ; CHECK-NEXT: ld.bu $a1, $sp, 23
237
- ; CHECK-NEXT: andi $a2, $a2, 1
238
- ; CHECK-NEXT: slli.d $a2, $a2, 22
239
- ; CHECK-NEXT: or $a0, $a0, $a2
240
- ; CHECK-NEXT: andi $a1, $a1, 1
241
- ; CHECK-NEXT: ld.bu $a2, $sp, 24
242
- ; CHECK-NEXT: slli.d $a1, $a1, 23
243
- ; CHECK-NEXT: or $a0, $a0, $a1
244
- ; CHECK-NEXT: ld.bu $a1, $sp, 25
245
- ; CHECK-NEXT: andi $a2, $a2, 1
246
- ; CHECK-NEXT: slli.d $a2, $a2, 24
247
- ; CHECK-NEXT: or $a0, $a0, $a2
248
- ; CHECK-NEXT: andi $a1, $a1, 1
249
- ; CHECK-NEXT: ld.bu $a2, $sp, 26
250
- ; CHECK-NEXT: slli.d $a1, $a1, 25
251
- ; CHECK-NEXT: or $a0, $a0, $a1
252
- ; CHECK-NEXT: ld.bu $a1, $sp, 27
253
- ; CHECK-NEXT: andi $a2, $a2, 1
254
- ; CHECK-NEXT: slli.d $a2, $a2, 26
255
- ; CHECK-NEXT: or $a0, $a0, $a2
256
- ; CHECK-NEXT: andi $a1, $a1, 1
257
- ; CHECK-NEXT: ld.bu $a2, $sp, 28
258
- ; CHECK-NEXT: slli.d $a1, $a1, 27
259
- ; CHECK-NEXT: or $a0, $a0, $a1
260
- ; CHECK-NEXT: ld.bu $a1, $sp, 29
261
- ; CHECK-NEXT: andi $a2, $a2, 1
262
- ; CHECK-NEXT: slli.d $a2, $a2, 28
263
- ; CHECK-NEXT: or $a0, $a0, $a2
264
- ; CHECK-NEXT: andi $a1, $a1, 1
265
- ; CHECK-NEXT: ld.bu $a2, $sp, 30
266
- ; CHECK-NEXT: slli.d $a1, $a1, 29
267
- ; CHECK-NEXT: or $a0, $a0, $a1
268
- ; CHECK-NEXT: ld.b $a1, $sp, 31
269
- ; CHECK-NEXT: andi $a2, $a2, 1
270
- ; CHECK-NEXT: slli.d $a2, $a2, 30
271
- ; CHECK-NEXT: or $a0, $a0, $a2
272
- ; CHECK-NEXT: slli.d $a1, $a1, 31
273
- ; CHECK-NEXT: or $a0, $a0, $a1
274
- ; CHECK-NEXT: bstrpick.d $a0, $a0, 31, 0
275
- ; CHECK-NEXT: addi.d $sp, $fp, -64
276
- ; CHECK-NEXT: ld.d $fp, $sp, 48 # 8-byte Folded Reload
277
- ; CHECK-NEXT: ld.d $ra, $sp, 56 # 8-byte Folded Reload
278
- ; CHECK-NEXT: addi.d $sp, $sp, 64
279
- ; CHECK-NEXT: ret
280
- entry:
281
- %1 = icmp eq <32 x i8 > %a , splat (i8 -1 )
282
- %2 = bitcast <32 x i1 > %1 to i32
283
- ret i32 %2
284
- }
285
-
286
145
define i32 @xmsk_sgt_allones_i8 (<32 x i8 > %a ) {
287
146
; CHECK-LABEL: xmsk_sgt_allones_i8:
288
147
; CHECK: # %bb.0: # %entry
@@ -1262,145 +1121,3 @@ entry:
1262
1121
%2 = bitcast <32 x i1 > %1 to i32
1263
1122
ret i32 %2
1264
1123
}
1265
-
1266
- define i32 @xmsk_ne_allones_i8 (<32 x i8 > %a ) {
1267
- ; CHECK-LABEL: xmsk_ne_allones_i8:
1268
- ; CHECK: # %bb.0: # %entry
1269
- ; CHECK-NEXT: addi.d $sp, $sp, -64
1270
- ; CHECK-NEXT: .cfi_def_cfa_offset 64
1271
- ; CHECK-NEXT: st.d $ra, $sp, 56 # 8-byte Folded Spill
1272
- ; CHECK-NEXT: st.d $fp, $sp, 48 # 8-byte Folded Spill
1273
- ; CHECK-NEXT: .cfi_offset 1, -8
1274
- ; CHECK-NEXT: .cfi_offset 22, -16
1275
- ; CHECK-NEXT: addi.d $fp, $sp, 64
1276
- ; CHECK-NEXT: .cfi_def_cfa 22, 0
1277
- ; CHECK-NEXT: bstrins.d $sp, $zero, 4, 0
1278
- ; CHECK-NEXT: xvseqi.b $xr0, $xr0, -1
1279
- ; CHECK-NEXT: xvxori.b $xr0, $xr0, 255
1280
- ; CHECK-NEXT: xvst $xr0, $sp, 0
1281
- ; CHECK-NEXT: vpickve2gr.b $a0, $vr0, 0
1282
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 1
1283
- ; CHECK-NEXT: andi $a1, $a1, 1
1284
- ; CHECK-NEXT: bstrins.d $a0, $a1, 63, 1
1285
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 2
1286
- ; CHECK-NEXT: bstrins.d $a0, $a1, 2, 2
1287
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 3
1288
- ; CHECK-NEXT: bstrins.d $a0, $a1, 3, 3
1289
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 4
1290
- ; CHECK-NEXT: bstrins.d $a0, $a1, 4, 4
1291
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 5
1292
- ; CHECK-NEXT: bstrins.d $a0, $a1, 5, 5
1293
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 6
1294
- ; CHECK-NEXT: andi $a1, $a1, 1
1295
- ; CHECK-NEXT: slli.d $a1, $a1, 6
1296
- ; CHECK-NEXT: or $a0, $a0, $a1
1297
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 7
1298
- ; CHECK-NEXT: andi $a1, $a1, 1
1299
- ; CHECK-NEXT: slli.d $a1, $a1, 7
1300
- ; CHECK-NEXT: or $a0, $a0, $a1
1301
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 8
1302
- ; CHECK-NEXT: andi $a1, $a1, 1
1303
- ; CHECK-NEXT: slli.d $a1, $a1, 8
1304
- ; CHECK-NEXT: or $a0, $a0, $a1
1305
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 9
1306
- ; CHECK-NEXT: andi $a1, $a1, 1
1307
- ; CHECK-NEXT: slli.d $a1, $a1, 9
1308
- ; CHECK-NEXT: or $a0, $a0, $a1
1309
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 10
1310
- ; CHECK-NEXT: andi $a1, $a1, 1
1311
- ; CHECK-NEXT: slli.d $a1, $a1, 10
1312
- ; CHECK-NEXT: or $a0, $a0, $a1
1313
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 11
1314
- ; CHECK-NEXT: andi $a1, $a1, 1
1315
- ; CHECK-NEXT: slli.d $a1, $a1, 11
1316
- ; CHECK-NEXT: or $a0, $a0, $a1
1317
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 12
1318
- ; CHECK-NEXT: andi $a1, $a1, 1
1319
- ; CHECK-NEXT: slli.d $a1, $a1, 12
1320
- ; CHECK-NEXT: or $a0, $a0, $a1
1321
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 13
1322
- ; CHECK-NEXT: andi $a1, $a1, 1
1323
- ; CHECK-NEXT: slli.d $a1, $a1, 13
1324
- ; CHECK-NEXT: or $a0, $a0, $a1
1325
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 14
1326
- ; CHECK-NEXT: andi $a1, $a1, 1
1327
- ; CHECK-NEXT: slli.d $a1, $a1, 14
1328
- ; CHECK-NEXT: or $a0, $a0, $a1
1329
- ; CHECK-NEXT: vpickve2gr.b $a1, $vr0, 15
1330
- ; CHECK-NEXT: andi $a1, $a1, 1
1331
- ; CHECK-NEXT: ld.bu $a2, $sp, 16
1332
- ; CHECK-NEXT: slli.d $a1, $a1, 15
1333
- ; CHECK-NEXT: or $a0, $a0, $a1
1334
- ; CHECK-NEXT: ld.bu $a1, $sp, 17
1335
- ; CHECK-NEXT: andi $a2, $a2, 1
1336
- ; CHECK-NEXT: slli.d $a2, $a2, 16
1337
- ; CHECK-NEXT: or $a0, $a0, $a2
1338
- ; CHECK-NEXT: andi $a1, $a1, 1
1339
- ; CHECK-NEXT: ld.bu $a2, $sp, 18
1340
- ; CHECK-NEXT: slli.d $a1, $a1, 17
1341
- ; CHECK-NEXT: or $a0, $a0, $a1
1342
- ; CHECK-NEXT: ld.bu $a1, $sp, 19
1343
- ; CHECK-NEXT: andi $a2, $a2, 1
1344
- ; CHECK-NEXT: slli.d $a2, $a2, 18
1345
- ; CHECK-NEXT: or $a0, $a0, $a2
1346
- ; CHECK-NEXT: andi $a1, $a1, 1
1347
- ; CHECK-NEXT: ld.bu $a2, $sp, 20
1348
- ; CHECK-NEXT: slli.d $a1, $a1, 19
1349
- ; CHECK-NEXT: or $a0, $a0, $a1
1350
- ; CHECK-NEXT: ld.bu $a1, $sp, 21
1351
- ; CHECK-NEXT: andi $a2, $a2, 1
1352
- ; CHECK-NEXT: slli.d $a2, $a2, 20
1353
- ; CHECK-NEXT: or $a0, $a0, $a2
1354
- ; CHECK-NEXT: andi $a1, $a1, 1
1355
- ; CHECK-NEXT: ld.bu $a2, $sp, 22
1356
- ; CHECK-NEXT: slli.d $a1, $a1, 21
1357
- ; CHECK-NEXT: or $a0, $a0, $a1
1358
- ; CHECK-NEXT: ld.bu $a1, $sp, 23
1359
- ; CHECK-NEXT: andi $a2, $a2, 1
1360
- ; CHECK-NEXT: slli.d $a2, $a2, 22
1361
- ; CHECK-NEXT: or $a0, $a0, $a2
1362
- ; CHECK-NEXT: andi $a1, $a1, 1
1363
- ; CHECK-NEXT: ld.bu $a2, $sp, 24
1364
- ; CHECK-NEXT: slli.d $a1, $a1, 23
1365
- ; CHECK-NEXT: or $a0, $a0, $a1
1366
- ; CHECK-NEXT: ld.bu $a1, $sp, 25
1367
- ; CHECK-NEXT: andi $a2, $a2, 1
1368
- ; CHECK-NEXT: slli.d $a2, $a2, 24
1369
- ; CHECK-NEXT: or $a0, $a0, $a2
1370
- ; CHECK-NEXT: andi $a1, $a1, 1
1371
- ; CHECK-NEXT: ld.bu $a2, $sp, 26
1372
- ; CHECK-NEXT: slli.d $a1, $a1, 25
1373
- ; CHECK-NEXT: or $a0, $a0, $a1
1374
- ; CHECK-NEXT: ld.bu $a1, $sp, 27
1375
- ; CHECK-NEXT: andi $a2, $a2, 1
1376
- ; CHECK-NEXT: slli.d $a2, $a2, 26
1377
- ; CHECK-NEXT: or $a0, $a0, $a2
1378
- ; CHECK-NEXT: andi $a1, $a1, 1
1379
- ; CHECK-NEXT: ld.bu $a2, $sp, 28
1380
- ; CHECK-NEXT: slli.d $a1, $a1, 27
1381
- ; CHECK-NEXT: or $a0, $a0, $a1
1382
- ; CHECK-NEXT: ld.bu $a1, $sp, 29
1383
- ; CHECK-NEXT: andi $a2, $a2, 1
1384
- ; CHECK-NEXT: slli.d $a2, $a2, 28
1385
- ; CHECK-NEXT: or $a0, $a0, $a2
1386
- ; CHECK-NEXT: andi $a1, $a1, 1
1387
- ; CHECK-NEXT: ld.bu $a2, $sp, 30
1388
- ; CHECK-NEXT: slli.d $a1, $a1, 29
1389
- ; CHECK-NEXT: or $a0, $a0, $a1
1390
- ; CHECK-NEXT: ld.b $a1, $sp, 31
1391
- ; CHECK-NEXT: andi $a2, $a2, 1
1392
- ; CHECK-NEXT: slli.d $a2, $a2, 30
1393
- ; CHECK-NEXT: or $a0, $a0, $a2
1394
- ; CHECK-NEXT: slli.d $a1, $a1, 31
1395
- ; CHECK-NEXT: or $a0, $a0, $a1
1396
- ; CHECK-NEXT: bstrpick.d $a0, $a0, 31, 0
1397
- ; CHECK-NEXT: addi.d $sp, $fp, -64
1398
- ; CHECK-NEXT: ld.d $fp, $sp, 48 # 8-byte Folded Reload
1399
- ; CHECK-NEXT: ld.d $ra, $sp, 56 # 8-byte Folded Reload
1400
- ; CHECK-NEXT: addi.d $sp, $sp, 64
1401
- ; CHECK-NEXT: ret
1402
- entry:
1403
- %1 = icmp ne <32 x i8 > %a , splat (i8 -1 )
1404
- %2 = bitcast <32 x i1 > %1 to i32
1405
- ret i32 %2
1406
- }
0 commit comments