@@ -310,8 +310,7 @@ void ARMConstantIslands::verify() {
310310 BBInfo[RHS.getNumber ()].postOffset ();
311311 }));
312312 LLVM_DEBUG (dbgs () << " Verifying " << CPUsers.size () << " CP users.\n " );
313- for (unsigned i = 0 , e = CPUsers.size (); i != e; ++i) {
314- CPUser &U = CPUsers[i];
313+ for (CPUser &U : CPUsers) {
315314 unsigned UserOffset = getUserOffset (U);
316315 // Verify offset using the real max displacement without the safety
317316 // adjustment.
@@ -697,10 +696,9 @@ ARMConstantIslands::findConstPoolEntry(unsigned CPI,
697696 std::vector<CPEntry> &CPEs = CPEntries[CPI];
698697 // Number of entries per constpool index should be small, just do a
699698 // linear search.
700- for (unsigned i = 0 , e = CPEs.size (); i != e; ++i) {
701- if (CPEs[i].CPEMI == CPEMI)
702- return &CPEs[i];
703- }
699+ for (CPEntry &CPE : CPEs)
700+ if (CPE.CPEMI == CPEMI)
701+ return &CPE;
704702 return nullptr ;
705703}
706704
@@ -1234,27 +1232,27 @@ int ARMConstantIslands::findInRangeCPEntry(CPUser& U, unsigned UserOffset) {
12341232 // No. Look for previously created clones of the CPE that are in range.
12351233 unsigned CPI = getCombinedIndex (CPEMI);
12361234 std::vector<CPEntry> &CPEs = CPEntries[CPI];
1237- for (unsigned i = 0 , e = CPEs. size (); i != e; ++i ) {
1235+ for (CPEntry &CPE : CPEs) {
12381236 // We already tried this one
1239- if (CPEs[i] .CPEMI == CPEMI)
1237+ if (CPE .CPEMI == CPEMI)
12401238 continue ;
12411239 // Removing CPEs can leave empty entries, skip
1242- if (CPEs[i] .CPEMI == nullptr )
1240+ if (CPE .CPEMI == nullptr )
12431241 continue ;
1244- if (isCPEntryInRange (UserMI, UserOffset, CPEs[i] .CPEMI , U.getMaxDisp (),
1245- U.NegOk )) {
1246- LLVM_DEBUG (dbgs () << " Replacing CPE#" << CPI << " with CPE#"
1247- << CPEs[i]. CPI << " \n " );
1242+ if (isCPEntryInRange (UserMI, UserOffset, CPE .CPEMI , U.getMaxDisp (),
1243+ U.NegOk )) {
1244+ LLVM_DEBUG (dbgs () << " Replacing CPE#" << CPI << " with CPE#" << CPE. CPI
1245+ << " \n " );
12481246 // Point the CPUser node to the replacement
1249- U.CPEMI = CPEs[i] .CPEMI ;
1247+ U.CPEMI = CPE .CPEMI ;
12501248 // Change the CPI in the instruction operand to refer to the clone.
12511249 for (MachineOperand &MO : UserMI->operands ())
12521250 if (MO.isCPI ()) {
1253- MO.setIndex (CPEs[i] .CPI );
1251+ MO.setIndex (CPE .CPI );
12541252 break ;
12551253 }
12561254 // Adjust the refcount of the clone...
1257- CPEs[i] .RefCount ++;
1255+ CPE .RefCount ++;
12581256 // ...and the original. If we didn't remove the old entry, none of the
12591257 // addresses changed, so we don't need another pass.
12601258 return decrementCPEReferenceCount (CPI, CPEMI) ? 2 : 1 ;
@@ -1675,15 +1673,14 @@ void ARMConstantIslands::removeDeadCPEMI(MachineInstr *CPEMI) {
16751673// / are zero.
16761674bool ARMConstantIslands::removeUnusedCPEntries () {
16771675 unsigned MadeChange = false ;
1678- for (unsigned i = 0 , e = CPEntries.size (); i != e; ++i) {
1679- std::vector<CPEntry> &CPEs = CPEntries[i];
1680- for (unsigned j = 0 , ee = CPEs.size (); j != ee; ++j) {
1681- if (CPEs[j].RefCount == 0 && CPEs[j].CPEMI ) {
1682- removeDeadCPEMI (CPEs[j].CPEMI );
1683- CPEs[j].CPEMI = nullptr ;
1684- MadeChange = true ;
1685- }
1676+ for (std::vector<CPEntry> &CPEs : CPEntries) {
1677+ for (CPEntry &CPE : CPEs) {
1678+ if (CPE.RefCount == 0 && CPE.CPEMI ) {
1679+ removeDeadCPEMI (CPE.CPEMI );
1680+ CPE.CPEMI = nullptr ;
1681+ MadeChange = true ;
16861682 }
1683+ }
16871684 }
16881685 return MadeChange;
16891686}
@@ -1829,8 +1826,7 @@ bool ARMConstantIslands::optimizeThumb2Instructions() {
18291826 bool MadeChange = false ;
18301827
18311828 // Shrink ADR and LDR from constantpool.
1832- for (unsigned i = 0 , e = CPUsers.size (); i != e; ++i) {
1833- CPUser &U = CPUsers[i];
1829+ for (CPUser &U : CPUsers) {
18341830 unsigned Opcode = U.MI ->getOpcode ();
18351831 unsigned NewOpc = 0 ;
18361832 unsigned Scale = 1 ;
0 commit comments