LLVM 20.0.0git
|
Typedefs | |
typedef typedefLLVM_C_EXTERN_C_BEGIN struct LLVMOpaquePassBuilderOptions * | LLVMPassBuilderOptionsRef |
A set of options passed which are attached to the Pass Manager upon run. | |
typedef typedefLLVM_C_EXTERN_C_BEGIN struct LLVMOpaquePassBuilderOptions* LLVMPassBuilderOptionsRef |
A set of options passed which are attached to the Pass Manager upon run.
This corresponds to an llvm::LLVMPassBuilderOptions instance
The details for how the different properties of this structure are used can be found in the source for LLVMRunPasses
Definition at line 38 of file PassBuilder.h.
LLVMPassBuilderOptionsRef LLVMCreatePassBuilderOptions | ( | void | ) |
Create a new set of options for a PassBuilder.
Ownership of the returned instance is given to the client, and they are responsible for it. The client should call LLVMDisposePassBuilderOptions to free the pass builder options.
Definition at line 119 of file PassBuilderBindings.cpp.
References llvm::wrap().
void LLVMDisposePassBuilderOptions | ( | LLVMPassBuilderOptionsRef | Options | ) |
Dispose of a heap-allocated PassBuilderOptions instance.
Definition at line 189 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetAAPipeline | ( | LLVMPassBuilderOptionsRef | Options, |
const char * | AAPipeline | ||
) |
Specify a custom alias analysis pipeline for the PassBuilder to be used instead of the default one.
The string argument is not copied; the caller is responsible for ensuring it outlives the PassBuilderOptions instance.
Definition at line 133 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetCallGraphProfile | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | CallGraphProfile | ||
) |
Definition at line 174 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetDebugLogging | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | DebugLogging | ||
) |
Toggle debug logging when running the PassBuilder.
Definition at line 128 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetForgetAllSCEVInLoopUnroll | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | ForgetAllSCEVInLoopUnroll | ||
) |
Definition at line 158 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetInlinerThreshold | ( | LLVMPassBuilderOptionsRef | Options, |
int | Threshold | ||
) |
Definition at line 184 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetLicmMssaNoAccForPromotionCap | ( | LLVMPassBuilderOptionsRef | Options, |
unsigned | LicmMssaNoAccForPromotionCap | ||
) |
Definition at line 168 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetLicmMssaOptCap | ( | LLVMPassBuilderOptionsRef | Options, |
unsigned | LicmMssaOptCap | ||
) |
Definition at line 163 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetLoopInterleaving | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | LoopInterleaving | ||
) |
Definition at line 138 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetLoopUnrolling | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | LoopUnrolling | ||
) |
Definition at line 153 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetLoopVectorization | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | LoopVectorization | ||
) |
Definition at line 143 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetMergeFunctions | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | MergeFunctions | ||
) |
Definition at line 179 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetSLPVectorization | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | SLPVectorization | ||
) |
Definition at line 148 of file PassBuilderBindings.cpp.
void LLVMPassBuilderOptionsSetVerifyEach | ( | LLVMPassBuilderOptionsRef | Options, |
LLVMBool | VerifyEach | ||
) |
Toggle adding the VerifierPass for the PassBuilder, ensuring all functions inside the module is valid.
Definition at line 123 of file PassBuilderBindings.cpp.
References Options, unwrap(), and VerifyEach.
LLVMErrorRef LLVMRunPasses | ( | LLVMModuleRef | M, |
const char * | Passes, | ||
LLVMTargetMachineRef | TM, | ||
LLVMPassBuilderOptionsRef | Options | ||
) |
Construct and run a set of passes over a module.
This function takes a string with the passes that should be used. The format of this string is the same as opt's -passes argument for the new pass manager. Individual passes may be specified, separated by commas. Full pipelines may also be invoked using default<O3>
and friends. See opt for full reference of the Passes format.
Definition at line 101 of file PassBuilderBindings.cpp.
References Machine, Mod, Options, Passes, PassOpts, and unwrap().
LLVMErrorRef LLVMRunPassesOnFunction | ( | LLVMValueRef | F, |
const char * | Passes, | ||
LLVMTargetMachineRef | TM, | ||
LLVMPassBuilderOptionsRef | Options | ||
) |
Construct and run a set of passes over a function.
This function behaves the same as LLVMRunPasses, but operates on a single function instead of an entire module.
Definition at line 110 of file PassBuilderBindings.cpp.
References F, Fun, llvm::GlobalValue::getParent(), Machine, Options, Passes, PassOpts, and unwrap().