Home | History | Annotate | Download | only in ARM

Lines Matching refs:CPE

83   ///   CPE     - A constant pool entry that has been placed somewhere, which
504 const CPEntry & CPE = CPEntries[i][j];
505 if (CPE.CPEMI && CPE.CPEMI->getOperand(1).isCPI())
506 AFI->recordCPEClone(i, CPE.CPI);
529 // Create the basic block to hold the CPE's.
550 // identity mapping of CPI's to CPE's.
704 assert(isPowerOf2_32(Align) && "Invalid CPE alignment");
887 CPEntry *CPE = findConstPoolEntry(CPI, CPEMI);
888 assert(CPE && "Cannot find a corresponding CPEntry!");
889 CPE->RefCount++;
1091 /// isWaterInRange - Returns true if a CPE placed after the specified
1094 /// Compute how much the function will grow by inserting a CPE after Water.
1112 // The CPE may be able to hide in the alignment padding before the next
1117 // Compute the padding that would go at the end of the CPE to align the next
1121 // If the CPE is to be inserted before the instruction, that will raise
1123 // in blocks between CPE and the user.
1127 // CPE fits in existing padding.
1144 dbgs() << "User of CPE#" << CPEMI->getOperand(0).getImm()
1149 << format("CPE address=%#x offset=%+d: ", CPEOffset,
1204 CPEntry *CPE = findConstPoolEntry(CPI, CPEMI);
1205 assert(CPE && "Unexpected!");
1206 if (--CPE->RefCount == 0) {
1208 CPE->CPEMI = nullptr;
1222 /// LookForCPEntryInRange - see if the currently referenced CPE is in range;
1223 /// if not, see if an in-range clone of the CPE is in range, and if so,
1233 // Check to see if the CPE is already in-range.
1240 // No. Look for previously created clones of the CPE that are in range.
1252 DEBUG(dbgs() << "Replacing CPE#" << CPI << " with CPE#"
1288 /// we can place the CPE referenced from U so it's within range of U's MI.
1292 /// terminates, the CPE location for a particular CPUser is only allowed to
1355 /// CPUsers[CPUserIndex], so create a place to put the CPE. The end of the
1378 // Compute the offset where the CPE will begin.
1383 << format(", expected CPE offset %#x\n", CPEOffset));
1407 // entries are 4 bytes: if instruction I references island CPE, and
1408 // instruction I+1 references CPE', it will not work well to put CPE as far
1409 // forward as possible, since then CPE' cannot immediately follow it (that
1410 // location is 2 bytes farther away from I+1 than CPE was from I) and we'd
1519 // No existing clone of this CPE is within range.
1523 // Look for water where we can place this CPE.
1537 // The new CPE goes before the following block (NewMBB).
1560 // considerably reduces the number of times we have to move the same CPE
1571 // Now that we have an island to add the CPE to, clone the original CPE and
1596 DEBUG(dbgs() << " Moved CPE to #" << ID << " CPI=" << CPI