FLANG
Public Member Functions | Public Attributes | List of all members
MLIRToLLVMPassPipelineConfig Struct Reference

Configuriation for the MLIR to LLVM pass pipeline. More...

#include <flang/Tools/CrossToolHelpers.h>

Inheritance diagram for MLIRToLLVMPassPipelineConfig:
FlangEPCallBacks

Public Member Functions

 MLIRToLLVMPassPipelineConfig (llvm::OptimizationLevel level)
 
 MLIRToLLVMPassPipelineConfig (llvm::OptimizationLevel level, const Fortran::frontend::CodeGenOptions &opts, const Fortran::common::MathOptionsBase &mathOpts)
 
- Public Member Functions inherited from FlangEPCallBacks
void registerFIROptEarlyEPCallbacks (const std::function< void(mlir::PassManager &, llvm::OptimizationLevel)> &C)
 
void registerFIRInlinerCallback (const std::function< void(mlir::PassManager &, llvm::OptimizationLevel)> &C)
 
void registerFIROptLastEPCallbacks (const std::function< void(mlir::PassManager &, llvm::OptimizationLevel)> &C)
 
void invokeFIROptEarlyEPCallbacks (mlir::PassManager &pm, llvm::OptimizationLevel optLevel)
 
void invokeFIRInlinerCallback (mlir::PassManager &pm, llvm::OptimizationLevel optLevel)
 
void invokeFIROptLastEPCallbacks (mlir::PassManager &pm, llvm::OptimizationLevel optLevel)
 

Public Attributes

llvm::OptimizationLevel OptLevel
 optimisation level
 
bool StackArrays = false
 convert memory allocations to alloca.
 
bool Underscoring = true
 add underscores to function names.
 
bool LoopVersioning = false
 Run the version loop pass.
 
bool AliasAnalysis = false
 Add TBAA tags to generated LLVMIR.
 
llvm::codegenoptions::DebugInfoKind DebugInfo
 Debug info generation.
 
llvm::FramePointerKind FramePointerKind
 Add frame pointer to functions.
 
unsigned VScaleMin = 0
 SVE vector range minimum.
 
unsigned VScaleMax = 0
 SVE vector range maximum.
 
bool NoInfsFPMath = false
 Set no-infs-fp-math attribute for functions.
 
bool NoNaNsFPMath = false
 Set no-nans-fp-math attribute for functions.
 
bool ApproxFuncFPMath
 Set approx-func-fp-math attribute for functions.
 
bool NoSignedZerosFPMath
 Set no-signed-zeros-fp-math attribute for functions.
 
bool UnsafeFPMath = false
 Set unsafe-fp-math attribute for functions.
 
bool NSWOnLoopVarInc = true
 Add nsw flag to loop variable increments.
 
bool EnableOpenMP = false
 Enable OpenMP lowering.
 

Detailed Description

Configuriation for the MLIR to LLVM pass pipeline.

Member Data Documentation

◆ ApproxFuncFPMath

bool MLIRToLLVMPassPipelineConfig::ApproxFuncFPMath
Initial value:
=
false

Set approx-func-fp-math attribute for functions.

◆ DebugInfo

llvm::codegenoptions::DebugInfoKind MLIRToLLVMPassPipelineConfig::DebugInfo
Initial value:
=
llvm::codegenoptions::NoDebugInfo

Debug info generation.

◆ FramePointerKind

llvm::FramePointerKind MLIRToLLVMPassPipelineConfig::FramePointerKind
Initial value:
=
llvm::FramePointerKind::None

Add frame pointer to functions.

◆ NoSignedZerosFPMath

bool MLIRToLLVMPassPipelineConfig::NoSignedZerosFPMath
Initial value:
=
false

Set no-signed-zeros-fp-math attribute for functions.


The documentation for this struct was generated from the following file: