Как узнать, доминирует ли базовый блок пост-другого? - PullRequest
0 голосов
/ 23 июня 2019

Я пытаюсь написать анализ, и одна из функций, которые мне нужны, - это узнать, является ли узел PostDominate другим.

Я уже знаю, что должен использовать:

void LazyProfitability::getAnalysisUsage(AnalysisUsage &AU) const {
   AU.addRequired<PostDominatorTreeWrapperPas>();
   AU.setPreservesAll();
}

1 Ответ

1 голос
/ 23 июня 2019

Вы можете получить PostDominatorTree объект из результатов анализа:

auto PDT = &getAnalysis<PostDominatorTreeWrapperPass>().getPostDomTree();

И использовать его после этого следующим образом:

// returns true iff A post-dominates B
PDT->dominates(A, B);
...