Lines Matching refs:MachineBasicBlock
164 std::vector<MachineBasicBlock*> WaterList;
168 SmallSet<MachineBasicBlock*, 4> NewWaterList;
170 typedef std::vector<MachineBasicBlock*>::iterator water_iterator;
187 MachineBasicBlock *HighWaterMark;
289 bool BBHasFallthrough(MachineBasicBlock *MBB);
294 MachineBasicBlock *splitBlockBeforeInstr(MachineInstr *MI);
295 void updateForInsertedWaterBlock(MachineBasicBlock *NewBB);
296 void adjustBBOffsetsAfter(MachineBasicBlock *BB);
303 MachineBasicBlock *&NewMBB);
310 bool isWaterInRange(unsigned UserOffset, MachineBasicBlock *Water,
312 bool isBBInRange(MachineInstr *MI, MachineBasicBlock *BB, unsigned Disp);
325 MachineBasicBlock *adjustJTTargetBlockForward(MachineBasicBlock *BB,
326 MachineBasicBlock *JTBB);
328 void computeBlockSize(MachineBasicBlock *MBB);
350 MachineBasicBlock *MBB = &*MBBI;
530 MachineBasicBlock *BB = MF->CreateMachineBasicBlock();
547 SmallVector<MachineBasicBlock::iterator, 8> InsPoint(MaxAlign + 1, BB->end());
565 MachineBasicBlock::iterator InsAt = InsPoint[LogAlign];
597 MachineBasicBlock *LastCorrectlyNumberedBB = nullptr;
598 for (MachineBasicBlock &MBB : *MF) {
629 MachineBasicBlock *JumpTableBB = MF->CreateMachineBasicBlock();
650 bool ARMConstantIslands::BBHasFallthrough(MachineBasicBlock *MBB) {
657 MachineBasicBlock *NextBB = &*std::next(MBBI);
663 MachineBasicBlock *TBB, *FBB;
714 MachineBasicBlock &MBB = *MBBI;
716 for (MachineBasicBlock::iterator I = MBB.begin(), E = MBB.end();
735 for (MachineBasicBlock &MBB : *MF)
748 MachineBasicBlock &MBB = *MBBI;
755 for (MachineBasicBlock::iterator I = MBB.begin(), E = MBB.end();
901 void ARMConstantIslands::computeBlockSize(MachineBasicBlock *MBB) {
907 for (MachineBasicBlock::iterator I = MBB->begin(), E = MBB->end(); I != E;
930 MachineBasicBlock *MBB = MI->getParent();
938 for (MachineBasicBlock::iterator I = MBB->begin(); &*I != MI; ++I) {
947 static bool CompareMBBNumbers(const MachineBasicBlock *LHS,
948 const MachineBasicBlock *RHS) {
955 void ARMConstantIslands::updateForInsertedWaterBlock(MachineBasicBlock *NewBB) {
975 MachineBasicBlock *ARMConstantIslands::splitBlockBeforeInstr(MachineInstr *MI) {
976 MachineBasicBlock *OrigBB = MI->getParent();
979 MachineBasicBlock *NewBB =
1021 MachineBasicBlock* WaterBB = *IP;
1096 MachineBasicBlock* Water, CPUser &U,
1160 static bool BBIsJumpedOver(MachineBasicBlock *MBB) {
1164 MachineBasicBlock *Succ = *MBB->succ_begin();
1165 MachineBasicBlock *Pred = *MBB->pred_begin();
1174 void ARMConstantIslands::adjustBBOffsetsAfter(MachineBasicBlock *BB) {
1312 MachineBasicBlock *UserBB = U.MI->getParent();
1319 MachineBasicBlock* WaterBB = *IP;
1363 MachineBasicBlock *&NewMBB) {
1368 MachineBasicBlock *UserMBB = UserMI->getParent();
1453 MachineBasicBlock::iterator MI = UserMI;
1524 MachineBasicBlock *NewIsland = MF->CreateMachineBasicBlock();
1525 MachineBasicBlock *NewMBB;
1529 MachineBasicBlock *WaterBB = *IP;
1549 MachineBasicBlock *WaterBB = &*--NewMBB->getIterator();
1605 MachineBasicBlock *CPEBB = CPEMI->getParent();
1646 bool ARMConstantIslands::isBBInRange(MachineInstr *MI,MachineBasicBlock *DestBB,
1673 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB();
1691 MachineBasicBlock *MBB = MI->getParent();
1714 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB();
1730 MachineBasicBlock *MBB = MI->getParent();
1736 if (std::next(MachineBasicBlock::iterator(MI)) == std::prev(MBB->end()) &&
1745 MachineBasicBlock *NewDest = BMI->getOperand(0).getMBB();
1766 MachineBasicBlock *NextBB = &*++MBB->getIterator();
1877 MachineBasicBlock *MBB = U.MI->getParent();
1920 MachineBasicBlock *DestBB = Br.MI->getOperand(0).getMBB();
1924 MachineBasicBlock *MBB = Br.MI->getParent();
1950 MachineBasicBlock *DestBB = Br.MI->getOperand(0).getMBB();
1956 MachineBasicBlock::iterator CmpMI = Br.MI;
1965 MachineBasicBlock *MBB = Br.MI->getParent();
2037 MachineBasicBlock::iterator I(LEAMI);
2125 const std::vector<MachineBasicBlock*> &JTBBs = JT[JTI].MBBs;
2127 MachineBasicBlock *MBB = JTBBs[j];
2143 MachineBasicBlock *MBB = MI->getParent();
2162 MachineBasicBlock::iterator MI_JT = MI;
2240 const std::vector<MachineBasicBlock*> &JTBBs = JT[JTI].MBBs;
2242 MachineBasicBlock *MBB = JTBBs[j];
2248 MachineBasicBlock *NewBB =
2260 MachineBasicBlock *ARMConstantIslands::
2261 adjustJTTargetBlockForward(MachineBasicBlock *BB, MachineBasicBlock *JTBB) {
2266 MachineBasicBlock *TBB = nullptr, *FBB = nullptr;
2290 MachineBasicBlock *NewBB =