我正在尝试编写分析,而我需要的功能之一就是知道某个节点是否后期控制另一个节点。
我已经知道我必须使用:
void LazyProfitability::getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<PostDominatorTreeWrapperPas>();
AU.setPreservesAll();
}
答案 0 :(得分:1)
您可以从分析结果中获得一个PostDominatorTree
对象:
auto PDT = &getAnalysis<PostDominatorTreeWrapperPass>().getPostDomTree();
然后按以下方式使用它:
// returns true iff A post-dominates B
PDT->dominates(A, B);