LLVM API Documentation
#include <PassManager.h>
Collaboration diagram for llvm::FunctionPassManager:
Public Member Functions | |
FunctionPassManager (ModuleProvider *P) | |
~FunctionPassManager () | |
void | add (FunctionPass *P) |
void | add (ImmutablePass *IP) |
bool | run (Function &F) |
Definition at line 53 of file PassManager.h.
FunctionPassManager::FunctionPassManager | ( | ModuleProvider * | P | ) |
void FunctionPassManager::add | ( | FunctionPass * | P | ) |
add - Add a pass to the queue of passes to run. This passes ownership of the FunctionPass to the PassManager. When the PassManager is destroyed, the pass will be destroyed as well, so there is no need to delete the pass. This implies that all passes MUST be allocated with 'new'.
Definition at line 95 of file Pass.cpp.
References llvm::PassManagerT< Trait >::add().
Referenced by llvm::X86TargetMachine::addPassesToEmitMachineCode(), llvm::PPCTargetMachine::addPassesToEmitMachineCode(), llvm::AlphaTargetMachine::addPassesToEmitMachineCode(), llvm::X86JITInfo::addPassesToJITCompile(), llvm::PPCJITInfo::addPassesToJITCompile(), and llvm::AlphaJITInfo::addPassesToJITCompile().
void FunctionPassManager::add | ( | ImmutablePass * | IP | ) |
add - ImmutablePasses are not FunctionPasses, so we have a special hack to get them into a FunctionPassManager.
Definition at line 96 of file Pass.cpp.
References llvm::PassManagerT< Trait >::add().
bool FunctionPassManager::run | ( | Function & | F | ) |
run - Execute all of the passes scheduled for execution. Keep track of whether any of the passes modifies the function, and if so, return true.
Definition at line 97 of file Pass.cpp.
References F, llvm::ModuleProvider::materializeFunction(), and llvm::FunctionPass::run().