class RepeatedPass
Declaration
template <typename PassT>
class RepeatedPass { /* full declaration omitted */ };
Description
A utility pass template that simply runs another pass multiple times. This can be useful when debugging or testing passes. It also serves as an example of how to extend the pass manager in ways beyond composition.
Declared at: llvm/include/llvm/IR/PassManager.h:1316
Templates
- PassT
Member Variables
- private int Count
- private PassT P
Method Overview
- public RepeatedPass<PassT>(int Count, PassT && P)
- public void printPipeline(llvm::raw_ostream & OS, function_ref<llvm::StringRef (llvm::StringRef)> MapClassName2PassName)
- public template <typename IRUnitT, typename AnalysisManagerT, typename... Ts>llvm::PreservedAnalyses run(IRUnitT & IR, AnalysisManagerT & AM, Ts &&... Args)
Methods
¶RepeatedPass<PassT>(int Count, PassT&& P)
RepeatedPass<PassT>(int Count, PassT&& P)
Declared at: llvm/include/llvm/IR/PassManager.h:1318
Parameters
- int Count
- PassT&& P
¶void printPipeline(
llvm::raw_ostream& OS,
function_ref<llvm::StringRef(llvm::StringRef)>
MapClassName2PassName)
void printPipeline(
llvm::raw_ostream& OS,
function_ref<llvm::StringRef(llvm::StringRef)>
MapClassName2PassName)
Declared at: llvm/include/llvm/IR/PassManager.h:1346
Parameters
- llvm::raw_ostream& OS
- function_ref<llvm::StringRef(llvm::StringRef)> MapClassName2PassName
¶template <typename IRUnitT,
typename AnalysisManagerT,
typename... Ts>
llvm::PreservedAnalyses run(IRUnitT& IR,
AnalysisManagerT& AM,
Ts&&... Args)
template <typename IRUnitT,
typename AnalysisManagerT,
typename... Ts>
llvm::PreservedAnalyses run(IRUnitT& IR,
AnalysisManagerT& AM,
Ts&&... Args)
Declared at: llvm/include/llvm/IR/PassManager.h:1322
Templates
- IRUnitT
- AnalysisManagerT
- Ts
Parameters
- IRUnitT& IR
- AnalysisManagerT& AM
- Ts&&... Args