@@ -412,8 +412,7 @@ define i1 @PR38139(i8 %arg) {
412412
413413define i1 @remove_shift_nuw_ab (i8 %a , i8 %b , i8 %s ) {
414414; 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:%.*]]
417416; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
418417; CHECK-NEXT: ret i1 [[IC]]
419418;
@@ -425,8 +424,7 @@ define i1 @remove_shift_nuw_ab(i8 %a, i8 %b, i8 %s) {
425424
426425define i1 @remove_shift_nuw_ba (i8 %a , i8 %b , i8 %s ) {
427426; 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:%.*]]
430428; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
431429; CHECK-NEXT: ret i1 [[IC]]
432430;
@@ -438,8 +436,7 @@ define i1 @remove_shift_nuw_ba(i8 %a, i8 %b, i8 %s) {
438436
439437define i1 @remove_shift_nsw (i8 %a , i8 %b , i8 %s ) {
440438; 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:%.*]]
443440; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
444441; CHECK-NEXT: ret i1 [[IC]]
445442;
@@ -451,8 +448,7 @@ define i1 @remove_shift_nsw(i8 %a, i8 %b, i8 %s) {
451448
452449define i1 @remove_shift_nuw_ne (i8 %a , i8 %b , i8 %s ) {
453450; 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:%.*]]
456452; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
457453; CHECK-NEXT: ret i1 [[IC]]
458454;
@@ -464,8 +460,7 @@ define i1 @remove_shift_nuw_ne(i8 %a, i8 %b, i8 %s) {
464460
465461define i1 @remove_shift_nsw_ne (i8 %a , i8 %b , i8 %s ) {
466462; 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:%.*]]
469464; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
470465; CHECK-NEXT: ret i1 [[IC]]
471466;
@@ -490,9 +485,8 @@ define i1 @remove_shift_wraps(i8 %a, i8 %b, i8 %s) {
490485
491486define i1 @remove_shift_chain_d (i8 %a , i8 %b , i8 %c , i8 %d , i8 %s ) {
492487; CHECK-LABEL: @remove_shift_chain_d(
493- ; CHECK-NEXT: [[DT:%.*]] = shl nuw i8 [[D:%.*]], [[S:%.*]]
494488; CHECK-NEXT: [[OR1:%.*]] = or i8 [[A:%.*]], [[B:%.*]]
495- ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[C:%.*]], [[DT]]
489+ ; CHECK-NEXT: [[OR2:%.*]] = or i8 [[C:%.*]], [[DT:%.* ]]
496490; CHECK-NEXT: [[OR:%.*]] = or i8 [[OR1]], [[OR2]]
497491; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
498492; 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) {
507501
508502define i1 @remove_shift_chain_abcd (i8 %a , i8 %b , i8 %c , i8 %d , i8 %s ) {
509503; 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:%.*]]
516506; CHECK-NEXT: [[OR:%.*]] = or i8 [[OR1]], [[OR2]]
517507; CHECK-NEXT: [[IC:%.*]] = icmp eq i8 [[OR]], 0
518508; CHECK-NEXT: ret i1 [[IC]]
0 commit comments