[PATCH] D139872: [llvm][CallBrPrepare] split critical edges
Eli Friedman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 12 16:23:36 PST 2022
efriedma added inline comments.
================
Comment at: llvm/lib/CodeGen/CallBrPrepare.cpp:128-129
+
+ auto *DTWP = getAnalysisIfAvailable<DominatorTreeWrapperPass>();
+ DominatorTree *DT = DTWP ? &DTWP->getDomTree() : nullptr;
+
----------------
nickdesaulniers wrote:
> nickdesaulniers wrote:
> > aeubanks wrote:
> > > nickdesaulniers wrote:
> > > > @aeubanks does this look correct?
> > > yup, lg
> > Oh, I guess later on (in a later commit) I will need to query `DT.dominates`. If DOM tree info isn't available, wat do?
> Perhaps I would manually need to construct a DomTreeUpdater or something?
>
> I guess there's prior art in SafeStackLegacyPass::runOnFunction
If you need a domtree, just explicitly request one. With LegacyPM, something like `AU.addRequired<DominatorTreeWrapperPass>();` in CallBrPrepare::getAnalysisUsage
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D139872/new/
https://reviews.llvm.org/D139872
More information about the llvm-commits
mailing list