Lines Matching refs:MBB
50 void fixBrTableIndex(MachineInstr &MI, MachineBasicBlock *MBB, in fixBrTableIndex() argument
71 BuildMI(*MBB, MI.getIterator(), MI.getDebugLoc(), in fixBrTableIndex()
87 MachineBasicBlock *fixBrTableDefault(MachineInstr &MI, MachineBasicBlock *MBB, in fixBrTableDefault() argument
90 assert(MBB->pred_size() == 1 && "Expected a single guard predecessor"); in fixBrTableDefault()
91 auto *HeaderMBB = *MBB->pred_begin(); in fixBrTableDefault()
111 if (TBB && TBB != MBB) { in fixBrTableDefault()
112 assert((FBB == nullptr || FBB == MBB) && in fixBrTableDefault()
135 HeaderMBB->splice(HeaderMBB->end(), MBB, MBB->begin(), MBB->end()); in fixBrTableDefault()
139 HeaderMBB->removeSuccessor(MBB); in fixBrTableDefault()
140 for (auto &Succ : MBB->successors()) in fixBrTableDefault()
143 HeaderMBB->transferSuccessorsAndUpdatePHIs(MBB); in fixBrTableDefault()
146 MF.erase(MBB); in fixBrTableDefault()
158 for (auto &MBB : MF) in runOnMachineFunction() local
159 MBBSet.insert(&MBB); in runOnMachineFunction()
162 MachineBasicBlock *MBB = *MBBSet.begin(); in runOnMachineFunction() local
163 MBBSet.erase(MBB); in runOnMachineFunction()
164 for (auto &MI : *MBB) { in runOnMachineFunction()
166 fixBrTableIndex(MI, MBB, MF); in runOnMachineFunction()
167 auto *Fixed = fixBrTableDefault(MI, MBB, MF); in runOnMachineFunction()