FLANG
Public Member Functions | Static Public Member Functions | List of all members
Fortran::lower::LoweringBridge Class Reference

#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::IntrinsicTypeDefaultKindsgetDefaultKinds () const
 
const Fortran::evaluate::IntrinsicProcTable & getIntrinsicTable () const
 
const Fortran::evaluate::TargetCharacteristicsgetTargetCharacteristics () const
 
const Fortran::parser::AllCookedSourcesgetCookedSource () const
 
const fir::KindMappinggetKindMap () const
 Get the kind map.
 
const Fortran::lower::LoweringOptionsgetLoweringOptions () const
 
const std::vector< Fortran::lower::EnvironmentDefault > & getEnvironmentDefaults () const
 
const Fortran::common::LanguageFeatureControlgetLanguageFeatures () const
 
Fortran::evaluate::FoldingContext createFoldingContext ()
 Create a folding context. Careful: this is very expensive.
 
Fortran::semantics::SemanticsContextgetSemanticsContext () const
 
Fortran::lower::StatementContextfctCtx ()
 
Fortran::lower::StatementContextopenAccCtx ()
 
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.
 

Detailed Description

The lowering bridge converts the front-end parse trees and semantics checking residual to MLIR (FIR dialect) code.

Member Function Documentation

◆ parseSourceFile()

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.


The documentation for this class was generated from the following files: