FLANG
|
#include <flang/Lower/Bridge.h>
Public Member Functions | |
mlir::MLIRContext & | getMLIRContext () |
mlir::ModuleOp | getModule () |
Get the ModuleOp. It can never be null, which is asserted in the ctor. | |
mlir::ModuleOp | getModuleAndRelease () |
const Fortran::common::IntrinsicTypeDefaultKinds & | getDefaultKinds () const |
const Fortran::evaluate::IntrinsicProcTable & | getIntrinsicTable () const |
const Fortran::evaluate::TargetCharacteristics & | getTargetCharacteristics () const |
const Fortran::parser::AllCookedSources * | getCookedSource () const |
const fir::KindMapping & | getKindMap () const |
Get the kind map. | |
const Fortran::lower::LoweringOptions & | getLoweringOptions () const |
const std::vector< Fortran::lower::EnvironmentDefault > & | getEnvironmentDefaults () const |
const Fortran::common::LanguageFeatureControl & | getLanguageFeatures () const |
Fortran::evaluate::FoldingContext | createFoldingContext () |
Create a folding context. Careful: this is very expensive. | |
Fortran::semantics::SemanticsContext & | getSemanticsContext () const |
Fortran::lower::StatementContext & | fctCtx () |
Fortran::lower::StatementContext & | openAccCtx () |
bool | validModule () |
void | parseSourceFile (llvm::SourceMgr &) |
void | lower (const Fortran::parser::Program &program, const Fortran::semantics::SemanticsContext &semanticsContext) |
Cross the bridge from the Fortran parse-tree, etc. to MLIR dialects. | |
Static Public Member Functions | |
static LoweringBridge | create (mlir::MLIRContext &ctx, Fortran::semantics::SemanticsContext &semanticsContext, const Fortran::common::IntrinsicTypeDefaultKinds &defaultKinds, const Fortran::evaluate::IntrinsicProcTable &intrinsics, const Fortran::evaluate::TargetCharacteristics &targetCharacteristics, const Fortran::parser::AllCookedSources &allCooked, llvm::StringRef triple, fir::KindMapping &kindMap, const Fortran::lower::LoweringOptions &loweringOptions, const std::vector< Fortran::lower::EnvironmentDefault > &envDefaults, const Fortran::common::LanguageFeatureControl &languageFeatures, const llvm::TargetMachine &targetMachine, const Fortran::frontend::TargetOptions &targetOptions, const Fortran::frontend::CodeGenOptions &codeGenOptions) |
Create a lowering bridge instance. | |
The lowering bridge converts the front-end parse trees and semantics checking residual to MLIR (FIR dialect) code.
void Fortran::lower::LoweringBridge::parseSourceFile | ( | llvm::SourceMgr & | srcMgr | ) |
Read in an MLIR input file rather than lowering Fortran sources. This is intended to be used for testing.