20template class GenericDomTreeUpdater<
21 MachineDomTreeUpdater, MachineDominatorTree, MachinePostDominatorTree>;
24GenericDomTreeUpdater<MachineDomTreeUpdater, MachineDominatorTree,
25 MachinePostDominatorTree>::recalculate(MachineFunction
28template void GenericDomTreeUpdater<
29 MachineDomTreeUpdater, MachineDominatorTree,
30 MachinePostDominatorTree>::applyUpdatesImpl<
true>();
31template void GenericDomTreeUpdater<
32 MachineDomTreeUpdater, MachineDominatorTree,
33 MachinePostDominatorTree>::applyUpdatesImpl<
false>();
35bool MachineDomTreeUpdater::forceFlushDeletedBB() {
41 BB->eraseFromParent();
53 validateDeleteBB(DelBB);
54 if (
Strategy == UpdateStrategy::Lazy) {
64 assert(DelBB &&
"Invalid push_back of nullptr DelBB.");
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
SmallPtrSet< BasicBlockT *, 8 > DeletedBBs
void eraseDelBBNode(BasicBlockT *DelBB)
Erase Basic Block node before it is unlinked from Function in the DomTree and PostDomTree.
const UpdateStrategy Strategy
void eraseFromParent()
This method unlinks 'this' from the containing function and deletes it.
void deleteBB(MachineBasicBlock *DelBB)
Delete DelBB.
std::pair< iterator, bool > insert(PtrType Ptr)
Inserts Ptr if and only if there is no element in the container equal to Ptr.
This is an optimization pass for GlobalISel generic memory operations.