Displaying 3 results from an estimated 3 matches for "registermoduleanalyses".
2018 Jul 21
2
Registering passes on a module
...sume, this is a requirement for performance).
So I do this:
llvm::PassBuilder passBuilder;
llvm::ModulePassManager modulePassManager =
passBuilder.buildPerModuleDefaultPipeline(llvm::PassBuilder::OptimizationLevel::O3);
llvm::ModuleAnalysisManager moduleAnalysisManager;
passBuilder.registerModuleAnalyses(moduleAnalysisManager);
modulePassManager.run(*module, moduleAnalysisManager);
with module being a pointer to an LLVM module.
Unfortunately, the moduleAnalysisManager has only the module passes, but
not the function ones that are wrapped with the proxy class. Is there
anything I missed or a up...
2019 Jul 22
2
Run llvm pass from standalone project
Hi all,
I am trying to use LLVM's AliasAnalysis pass, but from a standalone tool
that uses llvm libraries.
The following is the code snippet I am currently using.
PassBuilder PB;
auto mod_manager = ModuleAnalysisManager { };
PB.registerModuleAnalyses(mod_manager);
AAResults& AAR = mod_manager.getResult<AAManager>(*M);
But the code fails at .getResult with the following error:
/llvm/include/llvm/IR/PassManager.h:778: typename PassT::Result&
llvm::AnalysisManager<IRUnitT, ExtraArgTs>::getResult(IRUnitT&, ExtraArgTs
...) [...
2018 Aug 21
2
Function optimization pass
Hi Philip,
Thanks for the response. Under llvm-5.0.2 and llvm-6.0.1 in Debug mode, the
crash hit at the same assertion:
/usr/local/include/llvm/IR/PassManager.h:689: typename PassT::Result&
llvm::AnalysisManager<IRUnitT, ExtraArgTs>::getResult(IRUnitT&, ExtraArgTs
...) [with PassT =
llvm::InnerAnalysisManagerProxy<llvm::AnalysisManager<llvm::Loop,