Lines Matching refs:CPEMI
138 MachineInstr *CPEMI; member
148 : MI(Mi), CPEMI(Cpemi), MaxDisp(Maxdisp), NegOk(Neg) { in CPUser()
149 HighWaterMark = CPEMI->getParent(); in CPUser()
166 MachineInstr *CPEMI; member
171 : CPEMI(Cpemi), CPI(Cpi), RefCount(Rc) {} in CPEntry()
231 CPEntry *findConstPoolEntry(unsigned CPI, const MachineInstr *CPEMI);
232 Align getCPEAlign(const MachineInstr &CPEMI);
247 bool decrementCPEReferenceCount(unsigned CPI, MachineInstr *CPEMI);
254 void removeDeadCPEMI(MachineInstr *CPEMI);
257 MachineInstr *CPEMI, unsigned Disp, bool NegOk,
408 MachineInstr *CPEMI = in doInitialPlacement() local
414 CPEMIs.push_back(CPEMI); in doInitialPlacement()
420 InsPoint[A] = CPEMI; in doInitialPlacement()
422 CPEntries.emplace_back(1, CPEntry(CPEMI, I)); in doInitialPlacement()
453 const MachineInstr *CPEMI) { in findConstPoolEntry() argument
458 if (CPEs[I].CPEMI == CPEMI) in findConstPoolEntry()
466 Align CSKYConstantIslands::getCPEAlign(const MachineInstr &CPEMI) { in getCPEAlign() argument
467 assert(CPEMI.getOpcode() == CSKY::CONSTPOOL_ENTRY); in getCPEAlign()
469 unsigned CPI = CPEMI.getOperand(1).getIndex(); in getCPEAlign()
568 MachineInstr *CPEMI = CPEMIs[CPI]; in initializeFunctionInfo() local
570 CPUsers.push_back(CPUser(&MI, CPEMI, MaxOffs, NegOk)); in initializeFunctionInfo()
573 CPEntry *CPE = findConstPoolEntry(CPI, CPEMI); in initializeFunctionInfo()
747 unsigned Size = U.CPEMI->getOperand(2).getImm(); in isWaterInRange()
775 MachineInstr *CPEMI, in isCPEntryInRange() argument
778 unsigned CPEOffset = getOffsetOf(CPEMI); in isCPEntryInRange()
784 dbgs() << "User of CPE#" << CPEMI->getOperand(0).getImm() in isCPEntryInRange()
827 MachineInstr *CPEMI) { in decrementCPEReferenceCount() argument
829 CPEntry *CPE = findConstPoolEntry(CPI, CPEMI); in decrementCPEReferenceCount()
832 removeDeadCPEMI(CPEMI); in decrementCPEReferenceCount()
833 CPE->CPEMI = nullptr; in decrementCPEReferenceCount()
848 MachineInstr *CPEMI = U.CPEMI; in findInRangeCPEntry() local
851 if (isCPEntryInRange(UserMI, UserOffset, CPEMI, U.getMaxDisp(), U.NegOk, in findInRangeCPEntry()
858 unsigned CPI = CPEMI->getOperand(1).getIndex(); in findInRangeCPEntry()
862 if (CPEs[I].CPEMI == CPEMI) in findInRangeCPEntry()
865 if (CPEs[I].CPEMI == nullptr) in findInRangeCPEntry()
867 if (isCPEntryInRange(UserMI, UserOffset, CPEs[I].CPEMI, U.getMaxDisp(), in findInRangeCPEntry()
872 U.CPEMI = CPEs[I].CPEMI; in findInRangeCPEntry()
883 return decrementCPEReferenceCount(CPI, CPEMI) ? 2 : 1; in findInRangeCPEntry()
969 MachineInstr *CPEMI = U.CPEMI; in createNewWater() local
1032 BaseInsertOffset + 4 + CPEMI->getOperand(2).getImm(); in createNewWater()
1052 EndInsertOffset += U.CPEMI->getOperand(2).getImm(); in createNewWater()
1067 MachineInstr *CPEMI = U.CPEMI; in handleConstantPoolUser() local
1068 unsigned CPI = CPEMI->getOperand(1).getIndex(); in handleConstantPoolUser()
1069 unsigned Size = CPEMI->getOperand(2).getImm(); in handleConstantPoolUser()
1129 decrementCPEReferenceCount(CPI, CPEMI); in handleConstantPoolUser()
1138 U.CPEMI = BuildMI(NewIsland, DebugLoc(), TII->get(CSKY::CONSTPOOL_ENTRY)) in handleConstantPoolUser()
1142 CPEntries[CPI].push_back(CPEntry(U.CPEMI, ID, 1)); in handleConstantPoolUser()
1146 NewIsland->setAlignment(getCPEAlign(*U.CPEMI)); in handleConstantPoolUser()
1168 void CSKYConstantIslands::removeDeadCPEMI(MachineInstr *CPEMI) { in removeDeadCPEMI() argument
1169 MachineBasicBlock *CPEBB = CPEMI->getParent(); in removeDeadCPEMI()
1170 unsigned Size = CPEMI->getOperand(2).getImm(); in removeDeadCPEMI()
1171 CPEMI->eraseFromParent(); in removeDeadCPEMI()
1199 if (CPEs[J].RefCount == 0 && CPEs[J].CPEMI) { in removeUnusedCPEntries()
1200 removeDeadCPEMI(CPEs[J].CPEMI); in removeUnusedCPEntries()
1201 CPEs[J].CPEMI = nullptr; in removeUnusedCPEntries()