[llvm-dev] AAResultsWrapperPass assertion in 3.9

Welson Sun via llvm-dev llvm-dev at lists.llvm.org
Wed Jan 25 16:00:07 PST 2017


Hi,

Migrating from 3.5 to 3.9. There is a module pass that uses alias analysis
started breaking at runtime:

llvm/lnx64/llvm/include/llvm/PassAnalysisSupport.h:236: AnalysisType&
llvm::Pass::getAnalysisID(llvm::AnalysisID) const [with AnalysisType =
llvm::AAResultsWrapperPass; llvm::AnalysisID = const void*]: Assertion
`ResultPass && "getAnalysis*() called on an analysis that was not "
"'required' by pass!"' failed.

What does this mean? I have this line in my "required" list:

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

Thanks,
- Welson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170125/90abba0d/attachment.html>


More information about the llvm-dev mailing list