|
FLANG
|
Configuriation for the MLIR to LLVM pass pipeline. More...
#include <flang/Tools/CrossToolHelpers.h>
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 = false |
| Set afn flag for instructions. | |
| bool | NoSignedZerosFPMath |
| Set no-signed-zeros-fp-math attribute for functions. | |
| bool | UnsafeFPMath = false |
| Set all fast-math flags for instructions. | |
| std::string | Reciprocals = "" |
| std::string | PreferVectorWidth = "" |
| bool | NSWOnLoopVarInc = true |
| Add nsw flag to loop variable increments. | |
| bool | EnableOpenMP = false |
| Enable OpenMP lowering. | |
| bool | EnableOpenMPSimd = false |
| Enable OpenMP simd-only mode. | |
| bool | SkipConvertComplexPow = false |
| Do not run complex pow conversion. | |
| std::string | InstrumentFunctionEntry |
| std::string | InstrumentFunctionExit |
| Fortran::frontend::CodeGenOptions::ComplexRangeKind | ComplexRange |
| Method for calculating complex number division. | |
| int32_t | DwarfVersion = 0 |
| Version of DWARF debug info to generate. | |
| std::string | SplitDwarfFile = "" |
| File name for the split debug info. | |
Configuriation for the MLIR to LLVM pass pipeline.
| Fortran::frontend::CodeGenOptions::ComplexRangeKind MLIRToLLVMPassPipelineConfig::ComplexRange |
Method for calculating complex number division.
| llvm::codegenoptions::DebugInfoKind MLIRToLLVMPassPipelineConfig::DebugInfo |
Debug info generation.
| llvm::FramePointerKind MLIRToLLVMPassPipelineConfig::FramePointerKind |
Add frame pointer to functions.
| std::string MLIRToLLVMPassPipelineConfig::InstrumentFunctionEntry |
Name of the instrument-function that is called on each function-entry
| std::string MLIRToLLVMPassPipelineConfig::InstrumentFunctionExit |
Name of the instrument-function that is called on each function-exit
| bool MLIRToLLVMPassPipelineConfig::NoSignedZerosFPMath |
Set no-signed-zeros-fp-math attribute for functions.
| std::string MLIRToLLVMPassPipelineConfig::PreferVectorWidth = "" |
Set prefer-vector-width attribute for functions.
| std::string MLIRToLLVMPassPipelineConfig::Reciprocals = "" |
Set reciprocal-estimate attribute for functions.