@@ -412,8 +412,7 @@ define i1 @PR38139(i8 %arg) {
412
412
413
413
define i1 @remove_shift_nuw_ab (i8 %a , i8 %b , i8 %s ) {
414
414
; CHECK-LABEL: @remove_shift_nuw_ab(
415
- ; CHECK-NEXT: [[T:%.*]] = shl nuw i8 [[A:%.*]], [[S:%.*]]
416
- ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T]], [[B:%.*]]
415
+ ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T:%.*]], [[B:%.*]]
417
416
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
418
417
; CHECK-NEXT: ret i1 [[IC]]
419
418
;
@@ -425,8 +424,7 @@ define i1 @remove_shift_nuw_ab(i8 %a, i8 %b, i8 %s) {
425
424
426
425
define i1 @remove_shift_nuw_ba (i8 %a , i8 %b , i8 %s ) {
427
426
; CHECK-LABEL: @remove_shift_nuw_ba(
428
- ; CHECK-NEXT: [[T:%.*]] = shl nuw i8 [[A:%.*]], [[S:%.*]]
429
- ; CHECK-NEXT: [[OR:%.*]] = or i8 [[B:%.*]], [[T]]
427
+ ; CHECK-NEXT: [[OR:%.*]] = or i8 [[B:%.*]], [[T:%.*]]
430
428
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
431
429
; CHECK-NEXT: ret i1 [[IC]]
432
430
;
@@ -438,8 +436,7 @@ define i1 @remove_shift_nuw_ba(i8 %a, i8 %b, i8 %s) {
438
436
439
437
define i1 @remove_shift_nsw (i8 %a , i8 %b , i8 %s ) {
440
438
; CHECK-LABEL: @remove_shift_nsw(
441
- ; CHECK-NEXT: [[T:%.*]] = shl nsw i8 [[A:%.*]], [[S:%.*]]
442
- ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T]], [[B:%.*]]
439
+ ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T:%.*]], [[B:%.*]]
443
440
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
444
441
; CHECK-NEXT: ret i1 [[IC]]
445
442
;
@@ -451,8 +448,7 @@ define i1 @remove_shift_nsw(i8 %a, i8 %b, i8 %s) {
451
448
452
449
define i1 @remove_shift_nuw_ne (i8 %a , i8 %b , i8 %s ) {
453
450
; CHECK-LABEL: @remove_shift_nuw_ne(
454
- ; CHECK-NEXT: [[T:%.*]] = shl nuw i8 [[A:%.*]], [[S:%.*]]
455
- ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T]], [[B:%.*]]
451
+ ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T:%.*]], [[B:%.*]]
456
452
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
457
453
; CHECK-NEXT: ret i1 [[IC]]
458
454
;
@@ -464,8 +460,7 @@ define i1 @remove_shift_nuw_ne(i8 %a, i8 %b, i8 %s) {
464
460
465
461
define i1 @remove_shift_nsw_ne (i8 %a , i8 %b , i8 %s ) {
466
462
; CHECK-LABEL: @remove_shift_nsw_ne(
467
- ; CHECK-NEXT: [[T:%.*]] = shl nsw i8 [[A:%.*]], [[S:%.*]]
468
- ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T]], [[B:%.*]]
463
+ ; CHECK-NEXT: [[OR:%.*]] = or i8 [[T:%.*]], [[B:%.*]]
469
464
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
470
465
; CHECK-NEXT: ret i1 [[IC]]
471
466
;
@@ -490,9 +485,8 @@ define i1 @remove_shift_wraps(i8 %a, i8 %b, i8 %s) {
490
485
491
486
define i1 @remove_shift_chain_d (i8 %a , i8 %b , i8 %c , i8 %d , i8 %s ) {
492
487
; CHECK-LABEL: @remove_shift_chain_d(
493
- ; CHECK-NEXT: [[DT:%.*]] = shl nuw i8 [[D:%.*]], [[S:%.*]]
494
488
; CHECK-NEXT: [[OR1:%.*]] = or i8 [[A:%.*]], [[B:%.*]]
495
- ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[C:%.*]], [[DT]]
489
+ ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[C:%.*]], [[DT:%.* ]]
496
490
; CHECK-NEXT: [[OR:%.*]] = or i8 [[OR1]], [[OR2]]
497
491
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
498
492
; CHECK-NEXT: ret i1 [[IC]]
@@ -507,12 +501,8 @@ define i1 @remove_shift_chain_d(i8 %a, i8 %b, i8 %c, i8 %d, i8 %s) {
507
501
508
502
define i1 @remove_shift_chain_abcd (i8 %a , i8 %b , i8 %c , i8 %d , i8 %s ) {
509
503
; CHECK-LABEL: @remove_shift_chain_abcd(
510
- ; CHECK-NEXT: [[AT:%.*]] = shl nuw i8 [[A:%.*]], [[S:%.*]]
511
- ; CHECK-NEXT: [[BT:%.*]] = shl nuw i8 [[B:%.*]], 2
512
- ; CHECK-NEXT: [[CT:%.*]] = shl nuw i8 [[C:%.*]], 1
513
- ; CHECK-NEXT: [[DT:%.*]] = shl nuw i8 [[D:%.*]], [[S]]
514
- ; CHECK-NEXT: [[OR1:%.*]] = or i8 [[AT]], [[BT]]
515
- ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[CT]], [[DT]]
504
+ ; CHECK-NEXT: [[OR1:%.*]] = or i8 [[AT:%.*]], [[BT:%.*]]
505
+ ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[CT:%.*]], [[DT:%.*]]
516
506
; CHECK-NEXT: [[OR:%.*]] = or i8 [[OR1]], [[OR2]]
517
507
; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
518
508
; CHECK-NEXT: ret i1 [[IC]]
0 commit comments