LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
Collaboration diagram for Pass Managers:

Functions

LLVMPassManagerRef LLVMCreatePassManager (void)
 
LLVMPassManagerRef LLVMCreateFunctionPassManagerForModule (LLVMModuleRef M)
 
LLVMPassManagerRef LLVMCreateFunctionPassManager (LLVMModuleProviderRef MP)
 
LLVMBool LLVMRunPassManager (LLVMPassManagerRef PM, LLVMModuleRef M)
 
LLVMBool LLVMInitializeFunctionPassManager (LLVMPassManagerRef FPM)
 
LLVMBool LLVMRunFunctionPassManager (LLVMPassManagerRef FPM, LLVMValueRef F)
 
LLVMBool LLVMFinalizeFunctionPassManager (LLVMPassManagerRef FPM)
 
void LLVMDisposePassManager (LLVMPassManagerRef PM)
 

Detailed Description

Function Documentation

LLVMPassManagerRef LLVMCreateFunctionPassManager ( LLVMModuleProviderRef  MP)

Deprecated: Use LLVMCreateFunctionPassManagerForModule instead.

Definition at line 2591 of file Core.cpp.

References LLVMCreateFunctionPassManagerForModule().

LLVMPassManagerRef LLVMCreateFunctionPassManagerForModule ( LLVMModuleRef  M)

Constructs a new function-by-function pass pipeline over the module provider. It does not take ownership of the module provider. This type of pipeline is suitable for code generation and JIT compilation tasks.

See Also
llvm::FunctionPassManager::FunctionPassManager

Definition at line 2587 of file Core.cpp.

References llvm::unwrap(), and llvm::wrap().

Referenced by LLVMCreateFunctionPassManager().

LLVMPassManagerRef LLVMCreatePassManager ( void  )

Constructs a new whole-module pass pipeline. This type of pipeline is suitable for link-time optimization and whole-module transformations.

See Also
llvm::PassManager::PassManager

Definition at line 2583 of file Core.cpp.

References llvm::wrap().

void LLVMDisposePassManager ( LLVMPassManagerRef  PM)

Frees the memory of a pass pipeline. For function pipelines, does not free the module provider.

See Also
llvm::PassManagerBase::~PassManagerBase.

Definition at line 2612 of file Core.cpp.

References llvm::unwrap().

LLVMBool LLVMFinalizeFunctionPassManager ( LLVMPassManagerRef  FPM)

Finalizes all of the function passes scheduled in in the function pass manager. Returns 1 if any of the passes modified the module, 0 otherwise.

See Also
llvm::FunctionPassManager::doFinalization

Definition at line 2608 of file Core.cpp.

LLVMBool LLVMInitializeFunctionPassManager ( LLVMPassManagerRef  FPM)

Initializes all of the function passes scheduled in the function pass manager. Returns 1 if any of the passes modified the module, 0 otherwise.

See Also
llvm::FunctionPassManager::doInitialization

Definition at line 2600 of file Core.cpp.

LLVMBool LLVMRunFunctionPassManager ( LLVMPassManagerRef  FPM,
LLVMValueRef  F 
)

Executes all of the function passes scheduled in the function pass manager on the provided function. Returns 1 if any of the passes modified the function, false otherwise.

See Also
llvm::FunctionPassManager::run(Function&)

Definition at line 2604 of file Core.cpp.

LLVMBool LLVMRunPassManager ( LLVMPassManagerRef  PM,
LLVMModuleRef  M 
)

Initializes, executes on the provided module, and finalizes all of the passes scheduled in the pass manager. Returns 1 if any of the passes modified the module, 0 otherwise.

See Also
llvm::PassManager::run(Module&)

Definition at line 2596 of file Core.cpp.

References llvm::unwrap().