@@ -305,33 +305,33 @@ define <2 x i64> @lshr_constant_op1_not_undef_lane(i64 %x) {
305
305
define <2 x i64 > @urem_constant_op0 (i64 %x ) {
306
306
; CHECK-LABEL: @urem_constant_op0(
307
307
; CHECK-NEXT: [[BO_SCALAR:%.*]] = urem i64 5, [[X:%.*]]
308
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
308
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 0
309
309
; CHECK-NEXT: ret <2 x i64> [[BO]]
310
310
;
311
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
311
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
312
312
%bo = urem <2 x i64 > <i64 5 , i64 undef >, %ins
313
313
ret <2 x i64 > %bo
314
314
}
315
315
316
316
define <2 x i64 > @urem_constant_op0_not_undef_lane (i64 %x ) {
317
317
; CHECK-LABEL: @urem_constant_op0_not_undef_lane(
318
318
; CHECK-NEXT: [[BO_SCALAR:%.*]] = urem i64 5, [[X:%.*]]
319
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
319
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 0
320
320
; CHECK-NEXT: ret <2 x i64> [[BO]]
321
321
;
322
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
322
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
323
323
%bo = urem <2 x i64 > <i64 5 , i64 2 >, %ins
324
324
ret <2 x i64 > %bo
325
325
}
326
326
327
327
define <2 x i64 > @urem_constant_op1 (i64 %x ) {
328
328
; CHECK-LABEL: @urem_constant_op1(
329
329
; CHECK-NEXT: [[BO_SCALAR:%.*]] = urem i64 [[X:%.*]], 2
330
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 poison, i64 0> , i64 [[BO_SCALAR]], i64 1
330
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 1
331
331
; CHECK-NEXT: ret <2 x i64> [[BO]]
332
332
;
333
333
%ins = insertelement <2 x i64 > undef , i64 %x , i32 1
334
- %bo = urem <2 x i64 > %ins , <i64 undef , i64 2 >
334
+ %bo = urem <2 x i64 > %ins , <i64 2 , i64 2 >
335
335
ret <2 x i64 > %bo
336
336
}
337
337
@@ -349,33 +349,33 @@ define <2 x i64> @urem_constant_op1_not_undef_lane(i64 %x) {
349
349
define <2 x i64 > @srem_constant_op0 (i64 %x ) {
350
350
; CHECK-LABEL: @srem_constant_op0(
351
351
; CHECK-NEXT: [[BO_SCALAR:%.*]] = srem i64 5, [[X:%.*]]
352
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
352
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 0
353
353
; CHECK-NEXT: ret <2 x i64> [[BO]]
354
354
;
355
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
355
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
356
356
%bo = srem <2 x i64 > <i64 5 , i64 undef >, %ins
357
357
ret <2 x i64 > %bo
358
358
}
359
359
360
360
define <2 x i64 > @srem_constant_op0_not_undef_lane (i64 %x ) {
361
361
; CHECK-LABEL: @srem_constant_op0_not_undef_lane(
362
362
; CHECK-NEXT: [[BO_SCALAR:%.*]] = srem i64 5, [[X:%.*]]
363
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
363
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 0
364
364
; CHECK-NEXT: ret <2 x i64> [[BO]]
365
365
;
366
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
366
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
367
367
%bo = srem <2 x i64 > <i64 5 , i64 2 >, %ins
368
368
ret <2 x i64 > %bo
369
369
}
370
370
371
371
define <2 x i64 > @srem_constant_op1 (i64 %x ) {
372
372
; CHECK-LABEL: @srem_constant_op1(
373
373
; CHECK-NEXT: [[BO_SCALAR:%.*]] = srem i64 [[X:%.*]], 2
374
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 poison, i64 0> , i64 [[BO_SCALAR]], i64 1
374
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 1
375
375
; CHECK-NEXT: ret <2 x i64> [[BO]]
376
376
;
377
377
%ins = insertelement <2 x i64 > undef , i64 %x , i32 1
378
- %bo = srem <2 x i64 > %ins , <i64 undef , i64 2 >
378
+ %bo = srem <2 x i64 > %ins , <i64 2 , i64 2 >
379
379
ret <2 x i64 > %bo
380
380
}
381
381
@@ -393,33 +393,33 @@ define <2 x i64> @srem_constant_op1_not_undef_lane(i64 %x) {
393
393
define <2 x i64 > @udiv_constant_op0 (i64 %x ) {
394
394
; CHECK-LABEL: @udiv_constant_op0(
395
395
; CHECK-NEXT: [[BO_SCALAR:%.*]] = udiv exact i64 5, [[X:%.*]]
396
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
396
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 5, i64 undef> , i64 [[BO_SCALAR]], i64 0
397
397
; CHECK-NEXT: ret <2 x i64> [[BO]]
398
398
;
399
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
399
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
400
400
%bo = udiv exact <2 x i64 > <i64 5 , i64 undef >, %ins
401
401
ret <2 x i64 > %bo
402
402
}
403
403
404
404
define <2 x i64 > @udiv_constant_op0_not_undef_lane (i64 %x ) {
405
405
; CHECK-LABEL: @udiv_constant_op0_not_undef_lane(
406
406
; CHECK-NEXT: [[BO_SCALAR:%.*]] = udiv exact i64 5, [[X:%.*]]
407
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
407
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 5, i64 2> , i64 [[BO_SCALAR]], i64 0
408
408
; CHECK-NEXT: ret <2 x i64> [[BO]]
409
409
;
410
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
410
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
411
411
%bo = udiv exact <2 x i64 > <i64 5 , i64 2 >, %ins
412
412
ret <2 x i64 > %bo
413
413
}
414
414
415
415
define <2 x i64 > @udiv_constant_op1 (i64 %x ) {
416
416
; CHECK-LABEL: @udiv_constant_op1(
417
417
; CHECK-NEXT: [[BO_SCALAR:%.*]] = udiv i64 [[X:%.*]], 2
418
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 poison, i64 0> , i64 [[BO_SCALAR]], i64 1
418
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 1
419
419
; CHECK-NEXT: ret <2 x i64> [[BO]]
420
420
;
421
421
%ins = insertelement <2 x i64 > undef , i64 %x , i32 1
422
- %bo = udiv <2 x i64 > %ins , <i64 undef , i64 2 >
422
+ %bo = udiv <2 x i64 > %ins , <i64 2 , i64 2 >
423
423
ret <2 x i64 > %bo
424
424
}
425
425
@@ -437,33 +437,33 @@ define <2 x i64> @udiv_constant_op1_not_undef_lane(i64 %x) {
437
437
define <2 x i64 > @sdiv_constant_op0 (i64 %x ) {
438
438
; CHECK-LABEL: @sdiv_constant_op0(
439
439
; CHECK-NEXT: [[BO_SCALAR:%.*]] = sdiv i64 5, [[X:%.*]]
440
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
440
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 5, i64 undef> , i64 [[BO_SCALAR]], i64 0
441
441
; CHECK-NEXT: ret <2 x i64> [[BO]]
442
442
;
443
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
443
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
444
444
%bo = sdiv <2 x i64 > <i64 5 , i64 undef >, %ins
445
445
ret <2 x i64 > %bo
446
446
}
447
447
448
448
define <2 x i64 > @sdiv_constant_op0_not_undef_lane (i64 %x ) {
449
449
; CHECK-LABEL: @sdiv_constant_op0_not_undef_lane(
450
450
; CHECK-NEXT: [[BO_SCALAR:%.*]] = sdiv i64 5, [[X:%.*]]
451
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> poison , i64 [[BO_SCALAR]], i64 0
451
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 5, i64 2> , i64 [[BO_SCALAR]], i64 0
452
452
; CHECK-NEXT: ret <2 x i64> [[BO]]
453
453
;
454
- %ins = insertelement <2 x i64 > undef , i64 %x , i32 0
454
+ %ins = insertelement <2 x i64 > splat ( i64 1 ) , i64 %x , i32 0
455
455
%bo = sdiv <2 x i64 > <i64 5 , i64 2 >, %ins
456
456
ret <2 x i64 > %bo
457
457
}
458
458
459
459
define <2 x i64 > @sdiv_constant_op1 (i64 %x ) {
460
460
; CHECK-LABEL: @sdiv_constant_op1(
461
461
; CHECK-NEXT: [[BO_SCALAR:%.*]] = sdiv exact i64 [[X:%.*]], 2
462
- ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> <i64 poison, i64 0> , i64 [[BO_SCALAR]], i64 1
462
+ ; CHECK-NEXT: [[BO:%.*]] = insertelement <2 x i64> zeroinitializer , i64 [[BO_SCALAR]], i64 1
463
463
; CHECK-NEXT: ret <2 x i64> [[BO]]
464
464
;
465
465
%ins = insertelement <2 x i64 > undef , i64 %x , i32 1
466
- %bo = sdiv exact <2 x i64 > %ins , <i64 undef , i64 2 >
466
+ %bo = sdiv exact <2 x i64 > %ins , <i64 2 , i64 2 >
467
467
ret <2 x i64 > %bo
468
468
}
469
469
0 commit comments