LLVM  mainline
Functions
Pass Managers
LLVM-C: C interface to LLVM
Collaboration diagram for Pass Managers:

Functions

LLVMPassManagerRef LLVMCreatePassManager (void)
 Constructs a new whole-module pass pipeline.
LLVMPassManagerRef LLVMCreateFunctionPassManagerForModule (LLVMModuleRef M)
 Constructs a new function-by-function pass pipeline over the module provider.
LLVMPassManagerRef LLVMCreateFunctionPassManager (LLVMModuleProviderRef MP)
 Deprecated: Use LLVMCreateFunctionPassManagerForModule instead.
LLVMBool LLVMRunPassManager (LLVMPassManagerRef PM, LLVMModuleRef M)
 Initializes, executes on the provided module, and finalizes all of the passes scheduled in the pass manager.
LLVMBool LLVMInitializeFunctionPassManager (LLVMPassManagerRef FPM)
 Initializes all of the function passes scheduled in the function pass manager.
LLVMBool LLVMRunFunctionPassManager (LLVMPassManagerRef FPM, LLVMValueRef F)
 Executes all of the function passes scheduled in the function pass manager on the provided function.
LLVMBool LLVMFinalizeFunctionPassManager (LLVMPassManagerRef FPM)
 Finalizes all of the function passes scheduled in in the function pass manager.
void LLVMDisposePassManager (LLVMPassManagerRef PM)
 Frees the memory of a pass pipeline.

Function Documentation

Deprecated: Use LLVMCreateFunctionPassManagerForModule instead.

Definition at line 2860 of file Core.cpp.

References LLVMCreateFunctionPassManagerForModule().

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 2856 of file Core.cpp.

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

Referenced by LLVMCreateFunctionPassManager().

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 2852 of file Core.cpp.

References llvm::wrap().

Frees the memory of a pass pipeline.

For function pipelines, does not free the module provider.

See also:
llvm::PassManagerBase::~PassManagerBase.

Definition at line 2881 of file Core.cpp.

References llvm::unwrap().

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 2877 of file Core.cpp.

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 2869 of file Core.cpp.

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 2873 of file Core.cpp.

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 2865 of file Core.cpp.

References llvm::unwrap().