/freebsd/contrib/llvm-project/llvm/lib/Target/WebAssembly/ |
H A D | WebAssemblyExceptionInfo.cpp | 49 auto &MDT = getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in INITIALIZE_PASS_DEPENDENCY() local 51 recalculate(MF, MDT, MDF); in INITIALIZE_PASS_DEPENDENCY() 61 const MachineDominatorTree &MDT) { in isReachableAmongDominated() argument 62 assert(MDT.dominates(Header, Dst)); in isReachableAmongDominated() 73 if (!Visited.count(Succ) && MDT.dominates(Header, Succ)) in isReachableAmongDominated() 80 MachineFunction &MF, MachineDominatorTree &MDT, in recalculate() argument 84 for (auto *DomNode : post_order(&MDT)) { in recalculate() 89 discoverAndMapException(WE.get(), MDT, MDF); in recalculate() 128 for (auto *DomNode : depth_first(&MDT)) { in recalculate() 167 for (auto *DomNode : depth_first(&MDT)) { in recalculate() [all …]
|
H A D | WebAssemblyMemIntrinsicResults.cpp | 87 MachineDominatorTree &MDT, in replaceDominatedUses() argument 104 if (&MI == Where || !MDT.dominates(&MI, Where)) in replaceDominatedUses() 150 MachineDominatorTree &MDT, LiveIntervals &LIS, in optimizeCall() argument 173 return replaceDominatedUses(MBB, MI, FromReg, ToReg, MRI, MDT, LIS); in optimizeCall() 183 auto &MDT = getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in runOnMachineFunction() local 204 Changed |= optimizeCall(MBB, MI, MRI, MDT, LIS, TLI, LibInfo); in runOnMachineFunction()
|
H A D | WebAssemblyCFGSort.cpp | 189 const MachineDominatorTree &MDT) { in sortBlocks() argument 288 !MDT.dominates(Entries.back().TheRegion->getHeader(), Next)) { in sortBlocks() 319 !MDT.dominates(Entries.back().TheRegion->getHeader(), Next)) { in sortBlocks() 390 auto &MDT = getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in runOnMachineFunction() local 395 sortBlocks(MF, MLI, WEI, MDT); in runOnMachineFunction()
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | LazyMachineBlockFrequencyInfo.cpp | 65 auto *MDT = MDTWrapper ? &MDTWrapper->getDomTree() : nullptr; in calculateIfNotAvailable() local 72 LLVM_DEBUG(if (MDT) dbgs() << "DominatorTree is available\n"); in calculateIfNotAvailable() 74 if (!MDT) { in calculateIfNotAvailable() 78 MDT = OwnedMDT.get(); in calculateIfNotAvailable() 83 OwnedMLI->analyze(MDT->getBase()); in calculateIfNotAvailable()
|
H A D | ShrinkWrap.cpp | 117 MachineDominatorTree *MDT = nullptr; member in __anon8a4a73dd0111::ShrinkWrap 228 MDT = &getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in init() 606 !MDT->dominates(InitSave, InitRestore) || in postShrinkWrapping() 642 FindIDom<>(**DirtyPreds.begin(), DirtyPreds, *MDT, false); in postShrinkWrapping() 649 NewSave = FindIDom<>(**NewSave->pred_begin(), NewSave->predecessors(), *MDT, in postShrinkWrapping() 673 MDT->recalculate(MF); in postShrinkWrapping() 676 assert((MDT->dominates(Save, Restore) && MPDT->dominates(Restore, Save)) && in postShrinkWrapping() 692 Save = MDT->findNearestCommonDominator(Save, &MBB); in updateSaveRestorePoints() 740 (!(SaveDominatesRestore = MDT->dominates(Save, Restore)) || in updateSaveRestorePoints() 762 Save = MDT->findNearestCommonDominator(Save, Restore); in updateSaveRestorePoints() [all …]
|
H A D | UnreachableBlockElim.cpp | 103 MachineDominatorTree *MDT = MDTWrapper ? &MDTWrapper->getDomTree() : nullptr; in runOnMachineFunction() local 122 if (MDT && MDT->getNode(&BB)) MDT->eraseNode(&BB); in runOnMachineFunction()
|
H A D | XRayInstrumentation.cpp | 175 auto *MDT = MDTWrapper ? &MDTWrapper->getDomTree() : nullptr; in runOnMachineFunction() local 177 if (!MDT) { in runOnMachineFunction() 179 MDT = &ComputedMDT; in runOnMachineFunction() 187 ComputedMLI.analyze(MDT->getBase()); in runOnMachineFunction()
|
H A D | InlineSpiller.cpp | 84 MachineDominatorTree &MDT; member in __anon2f89086e0111::HoistSpillHelper 136 MDT(pass.getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree()), in HoistSpillHelper() 154 MachineDominatorTree &MDT; member in __anon2f89086e0111::InlineSpiller 194 MDT(Pass.getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree()), in InlineSpiller() 1384 MachineDomTreeNode *Node = MDT.getNode(Block); in rmRedundantSpills() 1392 SpillBBToSpill[MDT.getNode(Block)] = SpillToKeep; in rmRedundantSpills() 1394 SpillBBToSpill[MDT.getNode(Block)] = CurrentSpill; in rmRedundantSpills() 1423 MachineDomTreeNode *RootIDomNode = MDT[Root]->getIDom(); in getVisitOrders() 1433 MachineDomTreeNode *Node = MDT[Block]; in getVisitOrders() 1438 if (Node != MDT[Block] && SpillBBToSpill[Node]) { in getVisitOrders() [all …]
|
H A D | SplitKit.cpp | 360 MachineDominatorTree &MDT, in SplitEditor() argument 363 MDT(MDT), TII(*VRM.getMachineFunction().getSubtarget().getInstrInfo()), in SplitEditor() 375 LICalc[0].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset() 378 LICalc[1].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset() 908 assert(MDT.dominates(DefMBB, MBB) && "MBB must be dominated by the def."); in findShallowDominator() 912 MachineDomTreeNode *DefDomNode = MDT[DefMBB]; in findShallowDominator() 950 MachineDomTreeNode *IDom = MDT[Loop->getHeader()]->getIDom(); in findShallowDominator() 953 if (!IDom || !MDT.dominates(DefDomNode, IDom)) in findShallowDominator() 993 } else if (MDT.dominates(MBB1, MBB2)) { in computeRedundantBackCopies() 995 } else if (MDT.dominates(MBB2, MBB1)) { in computeRedundantBackCopies() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/ARC/ |
H A D | ARCOptAddrMode.cpp | 73 MachineDominatorTree *MDT = nullptr; member in __anon13eab7f40111::ARCOptAddrMode 151 MachineDominatorTree *MDT, in dominatesAllUsesOf() argument 164 if (!MDT->dominates(InstBB, MBB)) in dominatesAllUsesOf() 171 if (!MDT->dominates(MI, User)) in dominatesAllUsesOf() 195 return dominatesAllUsesOf(Ldst, R, MDT, MRI); in noUseOfAddBeforeLoadOrStore() 247 if (MDT->dominates(Last, First)) std::swap(First, Last); in tryToCombine() 281 if (MDT->dominates(Ldst, Add)) in canJoinInstructions() 283 else if (!MDT->dominates(Add, Ldst)) in canJoinInstructions() 318 if (&MI != Add && MDT->dominates(Ldst, &MI)) in canJoinInstructions() 320 else if (!MDT->dominates(&MI, Ldst)) in canJoinInstructions() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/GISel/ |
H A D | RISCVPreLegalizerCombiner.cpp | 54 const RISCVSubtarget &STI, MachineDominatorTree *MDT, 75 const RISCVSubtarget &STI, MachineDominatorTree *MDT, in RISCVPreLegalizerCombinerImpl() argument 78 Helper(Observer, B, /*IsPreLegalize*/ true, &KB, MDT, LI), in RISCVPreLegalizerCombinerImpl() 145 MachineDominatorTree *MDT = in runOnMachineFunction() local 151 ST, MDT, LI); in runOnMachineFunction()
|
H A D | RISCVPostLegalizerCombiner.cpp | 59 const RISCVSubtarget &STI, MachineDominatorTree *MDT, 80 const RISCVSubtarget &STI, MachineDominatorTree *MDT, in RISCVPostLegalizerCombinerImpl() argument 83 Helper(Observer, B, /*IsPreLegalize*/ false, &KB, MDT, LI), in RISCVPostLegalizerCombinerImpl() 146 MachineDominatorTree *MDT = in runOnMachineFunction() local 156 RuleConfig, ST, MDT, LI); in runOnMachineFunction()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
H A D | MipsPostLegalizerCombiner.cpp | 54 const MipsSubtarget &STI, MachineDominatorTree *MDT, 75 const MipsSubtarget &STI, MachineDominatorTree *MDT, in MipsPostLegalizerCombinerImpl() argument 78 Helper(Observer, B, /*IsPreLegalize*/ false, &KB, MDT, LI), in MipsPostLegalizerCombinerImpl() 141 MachineDominatorTree *MDT = in runOnMachineFunction() local 147 RuleConfig, ST, MDT, LI); in runOnMachineFunction()
|
H A D | MipsPreLegalizerCombiner.cpp | 48 MachineDominatorTree *MDT, in MipsPreLegalizerCombinerImpl() argument 51 Helper(Observer, B, /*IsPreLegalize*/ true, &KB, MDT, LI) {} in MipsPreLegalizerCombinerImpl()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | SILateBranchLowering.cpp | 31 MachineDominatorTree *MDT = nullptr; member in __anon03252fca0111::SILateBranchLowering 106 MachineDominatorTree *MDT) { in splitBlock() argument 117 MDT->getBase().applyUpdates(DTUpdates); in splitBlock() 142 splitBlock(MBB, *BranchMI, MDT); in earlyTerm() 145 MDT->getBase().insertEdge(&MBB, EarlyExitBlock); in earlyTerm() 152 MDT = &getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in runOnMachineFunction() 241 MDT->getBase().insertEdge(MBB, EmptyMBBAtEnd); in runOnMachineFunction()
|
H A D | SIFixSGPRCopies.cpp | 122 MachineDominatorTree *MDT; member in __anon8637e2150111::SIFixSGPRCopies 409 MachineDominatorTree &MDT) { in isReachable() argument 410 if (MDT.dominates(From, To)) in isReachable() 440 MachineDominatorTree &MDT, in hoistAndMergeSGPRInits() argument 482 assert(MDT.dominates(&*To, &*From)); in hoistAndMergeSGPRInits() 484 auto interferes = [&MDT, From, To](MachineInstr* &Clobber) -> bool { in hoistAndMergeSGPRInits() 487 bool MayClobberFrom = isReachable(Clobber, &*From, MBBTo, MDT); in hoistAndMergeSGPRInits() 488 bool MayClobberTo = isReachable(Clobber, &*To, MBBTo, MDT); in hoistAndMergeSGPRInits() 499 MDT.dominates(Clobber, &*From) && in hoistAndMergeSGPRInits() 500 MDT.dominates(Clobber, &*To)) || in hoistAndMergeSGPRInits() [all …]
|
H A D | SILowerControlFlow.cpp | 77 MachineDominatorTree *MDT = nullptr; member in __anon0c226a110111::SILowerControlFlow 500 if (MDT && SplitBB != &MBB) { in emitEndCf() 501 MachineDomTreeNode *MBBNode = (*MDT)[&MBB]; in emitEndCf() 504 MachineDomTreeNode *SplitBBNode = MDT->addNewBlock(SplitBB, &MBB); in emitEndCf() 506 MDT->changeImmediateDominator(Child, SplitBBNode); in emitEndCf() 732 if (MDT) { in removeMBBifRedundant() 736 if (MDT->dominates(&MBB, Succ)) in removeMBBifRedundant() 737 MDT->changeImmediateDominator(MDT->getNode(Succ), in removeMBBifRedundant() 738 MDT->getNode(&MBB)->getIDom()); in removeMBBifRedundant() 739 MDT->eraseNode(&MBB); in removeMBBifRedundant() [all …]
|
H A D | AMDGPUPreLegalizerCombiner.cpp | 56 const GCNSubtarget &STI, MachineDominatorTree *MDT, 95 const GCNSubtarget &STI, MachineDominatorTree *MDT, const LegalizerInfo *LI) in AMDGPUPreLegalizerCombinerImpl() argument 97 Helper(Observer, B, /*IsPreLegalize*/ true, &KB, MDT, LI), in AMDGPUPreLegalizerCombinerImpl() 274 MachineDominatorTree *MDT = in runOnMachineFunction() local 280 STI, MDT, STI.getLegalizerInfo()); in runOnMachineFunction()
|
H A D | AMDGPURegBankCombiner.cpp | 60 const GCNSubtarget &STI, MachineDominatorTree *MDT, 117 const GCNSubtarget &STI, MachineDominatorTree *MDT, const LegalizerInfo *LI) in AMDGPURegBankCombinerImpl() argument 121 Helper(Observer, B, /*IsPreLegalize*/ false, &KB, MDT, LI), in AMDGPURegBankCombinerImpl() 451 MachineDominatorTree *MDT = in runOnMachineFunction() local 458 RuleConfig, ST, MDT, LI); in runOnMachineFunction()
|
H A D | AMDGPUPostLegalizerCombiner.cpp | 58 const GCNSubtarget &STI, MachineDominatorTree *MDT, 134 const GCNSubtarget &STI, MachineDominatorTree *MDT, const LegalizerInfo *LI) in AMDGPUPostLegalizerCombinerImpl() argument 137 Helper(Observer, B, /*IsPreLegalize*/ false, &KB, MDT, LI), in AMDGPUPostLegalizerCombinerImpl() 496 MachineDominatorTree *MDT = in runOnMachineFunction() local 504 RuleConfig, ST, MDT, LI); in runOnMachineFunction()
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/LiveDebugValues/ |
H A D | LiveDebugValues.cpp | 85 MachineDominatorTree MDT; member in __anonb73615310111::LiveDebugValues 122 DomTree = &MDT; in runOnMachineFunction() 123 MDT.calculate(MF); in runOnMachineFunction()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | MachineLoopInfo.h | 111 explicit MachineLoopInfo(MachineDominatorTree &MDT) { calculate(MDT); } in MachineLoopInfo() argument 132 void calculate(MachineDominatorTree &MDT);
|
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
H A D | PPCCTRLoopsVerify.cpp | 65 MachineDominatorTree *MDT; member 163 MDT = &getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in runOnMachineFunction() 168 if (!MDT->isReachableFromEntry(&MBB)) in runOnMachineFunction()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | RDFCopy.h | 28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation() 42 const MachineDominatorTree &MDT;
|
H A D | HexagonEarlyIfConv.cpp | 217 MachineDominatorTree *MDT = nullptr; member in __anon363a33cb0111::HexagonEarlyIfConversion 235 return L && SB == L->getHeader() && MDT->dominates(B, SB); in isPreheader() 278 if (!MDT->properlyDominates(B, TB) || !MDT->properlyDominates(B, FB)) in matchFlowPattern() 602 MachineDomTreeNode *N = MDT->getNode(B); in visitBlock() 956 MachineDomTreeNode *N = MDT->getNode(B); in removeBlock() 967 MDT->changeImmediateDominator(SB, IDB); in removeBlock() 978 MDT->eraseNode(B); in removeBlock() 1057 MDT = &getAnalysis<MachineDominatorTreeWrapperPass>().getDomTree(); in runOnMachineFunction()
|