Skip to content

Commit 04e94bb

Browse files
committed
[AArch64] Update Changed status in AArch64MIPeepholeOpt
I have not seen this be a problem, but the Changed status should be updated not reset on new instruction to get the total Changed status overall.
1 parent b09fad7 commit 04e94bb

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -689,63 +689,63 @@ bool AArch64MIPeepholeOpt::runOnMachineFunction(MachineFunction &MF) {
689689
default:
690690
break;
691691
case AArch64::INSERT_SUBREG:
692-
Changed = visitINSERT(MI);
692+
Changed |= visitINSERT(MI);
693693
break;
694694
case AArch64::ANDWrr:
695-
Changed = visitAND<uint32_t>(AArch64::ANDWri, MI);
695+
Changed |= visitAND<uint32_t>(AArch64::ANDWri, MI);
696696
break;
697697
case AArch64::ANDXrr:
698-
Changed = visitAND<uint64_t>(AArch64::ANDXri, MI);
698+
Changed |= visitAND<uint64_t>(AArch64::ANDXri, MI);
699699
break;
700700
case AArch64::ORRWrs:
701-
Changed = visitORR(MI);
701+
Changed |= visitORR(MI);
702702
break;
703703
case AArch64::ADDWrr:
704-
Changed = visitADDSUB<uint32_t>(AArch64::ADDWri, AArch64::SUBWri, MI);
704+
Changed |= visitADDSUB<uint32_t>(AArch64::ADDWri, AArch64::SUBWri, MI);
705705
break;
706706
case AArch64::SUBWrr:
707-
Changed = visitADDSUB<uint32_t>(AArch64::SUBWri, AArch64::ADDWri, MI);
707+
Changed |= visitADDSUB<uint32_t>(AArch64::SUBWri, AArch64::ADDWri, MI);
708708
break;
709709
case AArch64::ADDXrr:
710-
Changed = visitADDSUB<uint64_t>(AArch64::ADDXri, AArch64::SUBXri, MI);
710+
Changed |= visitADDSUB<uint64_t>(AArch64::ADDXri, AArch64::SUBXri, MI);
711711
break;
712712
case AArch64::SUBXrr:
713-
Changed = visitADDSUB<uint64_t>(AArch64::SUBXri, AArch64::ADDXri, MI);
713+
Changed |= visitADDSUB<uint64_t>(AArch64::SUBXri, AArch64::ADDXri, MI);
714714
break;
715715
case AArch64::ADDSWrr:
716-
Changed = visitADDSSUBS<uint32_t>({AArch64::ADDWri, AArch64::ADDSWri},
717-
{AArch64::SUBWri, AArch64::SUBSWri},
718-
MI);
716+
Changed |=
717+
visitADDSSUBS<uint32_t>({AArch64::ADDWri, AArch64::ADDSWri},
718+
{AArch64::SUBWri, AArch64::SUBSWri}, MI);
719719
break;
720720
case AArch64::SUBSWrr:
721-
Changed = visitADDSSUBS<uint32_t>({AArch64::SUBWri, AArch64::SUBSWri},
722-
{AArch64::ADDWri, AArch64::ADDSWri},
723-
MI);
721+
Changed |=
722+
visitADDSSUBS<uint32_t>({AArch64::SUBWri, AArch64::SUBSWri},
723+
{AArch64::ADDWri, AArch64::ADDSWri}, MI);
724724
break;
725725
case AArch64::ADDSXrr:
726-
Changed = visitADDSSUBS<uint64_t>({AArch64::ADDXri, AArch64::ADDSXri},
727-
{AArch64::SUBXri, AArch64::SUBSXri},
728-
MI);
726+
Changed |=
727+
visitADDSSUBS<uint64_t>({AArch64::ADDXri, AArch64::ADDSXri},
728+
{AArch64::SUBXri, AArch64::SUBSXri}, MI);
729729
break;
730730
case AArch64::SUBSXrr:
731-
Changed = visitADDSSUBS<uint64_t>({AArch64::SUBXri, AArch64::SUBSXri},
732-
{AArch64::ADDXri, AArch64::ADDSXri},
733-
MI);
731+
Changed |=
732+
visitADDSSUBS<uint64_t>({AArch64::SUBXri, AArch64::SUBSXri},
733+
{AArch64::ADDXri, AArch64::ADDSXri}, MI);
734734
break;
735735
case AArch64::INSvi64gpr:
736-
Changed = visitINSviGPR(MI, AArch64::INSvi64lane);
736+
Changed |= visitINSviGPR(MI, AArch64::INSvi64lane);
737737
break;
738738
case AArch64::INSvi32gpr:
739-
Changed = visitINSviGPR(MI, AArch64::INSvi32lane);
739+
Changed |= visitINSviGPR(MI, AArch64::INSvi32lane);
740740
break;
741741
case AArch64::INSvi16gpr:
742-
Changed = visitINSviGPR(MI, AArch64::INSvi16lane);
742+
Changed |= visitINSviGPR(MI, AArch64::INSvi16lane);
743743
break;
744744
case AArch64::INSvi8gpr:
745-
Changed = visitINSviGPR(MI, AArch64::INSvi8lane);
745+
Changed |= visitINSviGPR(MI, AArch64::INSvi8lane);
746746
break;
747747
case AArch64::INSvi64lane:
748-
Changed = visitINSvi64lane(MI);
748+
Changed |= visitINSvi64lane(MI);
749749
break;
750750
}
751751
}

0 commit comments

Comments
 (0)