/external/llvm-project/flang/lib/Lower/ |
D | ConvertType.cpp | 29 bool isConstant(const Fortran::evaluate::Expr<A> &e) { in isConstant() 30 return Fortran::evaluate::IsConstantExpr(Fortran::lower::SomeExpr{e}); in isConstant() 34 int64_t toConstant(const Fortran::evaluate::Expr<A> &e) { in toConstant() 35 auto opt = Fortran::evaluate::ToInt64(e); in toConstant() 41 template <Fortran::common::TypeCategory TC> 47 template <Fortran::common::TypeCategory TC, int KIND> 49 if constexpr (TC == Fortran::common::TypeCategory::Integer) { in genFIRType() 50 auto bits{Fortran::evaluate::Type<Fortran::common::TypeCategory::Integer, in genFIRType() 53 } else if constexpr (TC == Fortran::common::TypeCategory::Logical || in genFIRType() 54 TC == Fortran::common::TypeCategory::Character || in genFIRType() [all …]
|
D | OpenMP.cpp | 25 static const Fortran::parser::Name * 26 getDesignatorNameIfDataRef(const Fortran::parser::Designator &designator) { in getDesignatorNameIfDataRef() 27 const auto *dataRef = std::get_if<Fortran::parser::DataRef>(&designator.u); in getDesignatorNameIfDataRef() 28 return dataRef ? std::get_if<Fortran::parser::Name>(&dataRef->u) : nullptr; in getDesignatorNameIfDataRef() 31 static void genObjectList(const Fortran::parser::OmpObjectList &objectList, in genObjectList() 32 Fortran::lower::AbstractConverter &converter, in genObjectList() 36 Fortran::common::visitors{ in genObjectList() 37 [&](const Fortran::parser::Designator &designator) { in genObjectList() 43 [&](const Fortran::parser::Name &name) { in genObjectList() 52 static void createBodyOfOp(Op &op, Fortran::lower::FirOpBuilder &firOpBuilder, in createBodyOfOp() [all …]
|
D | OpenACC.cpp | 25 static const Fortran::parser::Name * 26 getDesignatorNameIfDataRef(const Fortran::parser::Designator &designator) { in getDesignatorNameIfDataRef() 27 const auto *dataRef{std::get_if<Fortran::parser::DataRef>(&designator.u)}; in getDesignatorNameIfDataRef() 28 return dataRef ? std::get_if<Fortran::parser::Name>(&dataRef->u) : nullptr; in getDesignatorNameIfDataRef() 31 static void genObjectList(const Fortran::parser::AccObjectList &objectList, in genObjectList() 32 Fortran::lower::AbstractConverter &converter, in genObjectList() 36 Fortran::common::visitors{ in genObjectList() 37 [&](const Fortran::parser::Designator &designator) { in genObjectList() 43 [&](const Fortran::parser::Name &name) { in genObjectList() 54 Fortran::lower::AbstractConverter &converter, in genObjectListWithModifier() [all …]
|
D | Coarray.cpp | 33 void Fortran::lower::genChangeTeamConstruct( in genChangeTeamConstruct() 34 Fortran::lower::AbstractConverter &converter, in genChangeTeamConstruct() 35 Fortran::lower::pft::Evaluation &, in genChangeTeamConstruct() 36 const Fortran::parser::ChangeTeamConstruct &) { in genChangeTeamConstruct() 40 void Fortran::lower::genChangeTeamStmt( in genChangeTeamStmt() 41 Fortran::lower::AbstractConverter &converter, in genChangeTeamStmt() 42 Fortran::lower::pft::Evaluation &, in genChangeTeamStmt() 43 const Fortran::parser::ChangeTeamStmt &) { in genChangeTeamStmt() 47 void Fortran::lower::genEndChangeTeamStmt( in genEndChangeTeamStmt() 48 Fortran::lower::AbstractConverter &converter, in genEndChangeTeamStmt() [all …]
|
D | IO.cpp | 25 using namespace Fortran::runtime::io; 31 namespace Fortran::lower { namespace 74 const Fortran::semantics::SomeExpr *ioStatExpr{}; 75 const Fortran::semantics::SomeExpr *ioMsgExpr{}; 97 using namespace Fortran::lower; 119 Fortran::lower::FirOpBuilder &builder) { in getIORuntimeFunc() 133 static mlir::Value genEndIO(Fortran::lower::AbstractConverter &converter, in genEndIO() 140 Fortran::lower::CharacterExprHelper{builder, loc}.createUnboxChar( in genEndIO() 167 static void makeNextConditionalOn(Fortran::lower::FirOpBuilder &builder, in makeNextConditionalOn() 189 static void genIoLoop(Fortran::lower::AbstractConverter &converter, [all …]
|
D | Mangler.cpp | 22 static void moduleNames(const Fortran::semantics::Scope &scope, in moduleNames() 24 if (scope.kind() == Fortran::semantics::Scope::Kind::Global) { in moduleNames() 28 if (scope.kind() == Fortran::semantics::Scope::Kind::Module) in moduleNames() 34 moduleNames(const Fortran::semantics::Symbol &symbol) { in moduleNames() 42 hostName(const Fortran::semantics::Symbol &symbol) { in hostName() 44 if (scope.kind() == Fortran::semantics::Scope::Kind::Subprogram) { in hostName() 51 static const Fortran::semantics::Symbol * 52 findInterfaceIfSeperateMP(const Fortran::semantics::Symbol &symbol) { in findInterfaceIfSeperateMP() 54 if (symbol.attrs().test(Fortran::semantics::Attr::MODULE) && in findInterfaceIfSeperateMP() 68 Fortran::lower::mangle::mangleName(fir::NameUniquer &uniquer, in mangleName() [all …]
|
D | CharacterExpr.cpp | 59 fir::CharBoxValue Fortran::lower::CharacterExprHelper::materializeValue( in materializeValue() 69 Fortran::lower::CharacterExprHelper::toDataLengthPair(mlir::Value character) { in toDataLengthPair() 77 Fortran::lower::CharacterExprHelper::toExtendedValue(mlir::Value character, in toExtendedValue() 133 mlir::Type Fortran::lower::CharacterExprHelper::getReferenceType( in getReferenceType() 139 Fortran::lower::CharacterExprHelper::createEmbox(const fir::CharBoxValue &box) { in createEmbox() 160 mlir::Value Fortran::lower::CharacterExprHelper::createLoadCharAt( in createLoadCharAt() 171 void Fortran::lower::CharacterExprHelper::createStoreCharAt( in createStoreCharAt() 179 void Fortran::lower::CharacterExprHelper::createCopy( in createCopy() 182 Fortran::lower::DoLoopHelper{builder, loc}.createLoop( in createCopy() 183 count, [&](Fortran::lower::FirOpBuilder &, mlir::Value index) { in createCopy() [all …]
|
D | FIRBuilder.cpp | 18 mlir::FuncOp Fortran::lower::FirOpBuilder::createFunction( in createFunction() 25 Fortran::lower::FirOpBuilder::getNamedFunction(mlir::ModuleOp modOp, in getNamedFunction() 31 Fortran::lower::FirOpBuilder::getNamedGlobal(mlir::ModuleOp modOp, in getNamedGlobal() 36 mlir::Type Fortran::lower::FirOpBuilder::getRefType(mlir::Type eleTy) { in getRefType() 42 Fortran::lower::FirOpBuilder::createNullConstant(mlir::Location loc) { in createNullConstant() 49 mlir::Value Fortran::lower::FirOpBuilder::createIntegerConstant( in createIntegerConstant() 54 mlir::Value Fortran::lower::FirOpBuilder::createRealConstant( in createRealConstant() 60 Fortran::lower::FirOpBuilder::createRealZeroConstant(mlir::Location loc, in createRealZeroConstant() 73 mlir::Value Fortran::lower::FirOpBuilder::allocateLocal( in allocateLocal() 90 mlir::Value Fortran::lower::FirOpBuilder::createTemporary( in createTemporary() [all …]
|
D | CharacterRuntime.cpp | 17 using namespace Fortran::runtime; 23 namespace Fortran::lower { namespace 36 using namespace Fortran::lower; 58 Fortran::lower::FirOpBuilder &builder) { in getRuntimeFunc() 89 Fortran::lower::genRawCharCompare(Fortran::lower::AbstractConverter &converter, in genRawCharCompare() 120 Fortran::lower::genBoxCharCompare(Fortran::lower::AbstractConverter &converter, in genBoxCharCompare() 124 Fortran::lower::CharacterExprHelper helper{builder, loc}; in genBoxCharCompare()
|
D | ComplexExpr.cpp | 17 Fortran::lower::ComplexExprHelper::getComplexPartType(mlir::Type complexType) { in getComplexPartType() 18 return Fortran::lower::convertReal( in getComplexPartType() 23 Fortran::lower::ComplexExprHelper::getComplexPartType(mlir::Value cplx) { in getComplexPartType() 27 mlir::Value Fortran::lower::ComplexExprHelper::createComplex(fir::KindTy kind, in createComplex() 35 mlir::Value Fortran::lower::ComplexExprHelper::createComplex(mlir::Type cplxTy, in createComplex() 42 mlir::Value Fortran::lower::ComplexExprHelper::createComplexCompare( in createComplexCompare()
|
/external/llvm-project/flang/include/flang/Lower/ |
D | Bridge.h | 29 namespace Fortran { 56 create(const Fortran::common::IntrinsicTypeDefaultKinds &defaultKinds, in create() 57 const Fortran::evaluate::IntrinsicProcTable &intrinsics, in create() 58 const Fortran::parser::AllCookedSources &allCooked) { in create() 68 const Fortran::common::IntrinsicTypeDefaultKinds &getDefaultKinds() const { in getDefaultKinds() 71 const Fortran::evaluate::IntrinsicProcTable &getIntrinsicTable() const { in getIntrinsicTable() 74 const Fortran::parser::AllCookedSources *getCookedSource() const { in getCookedSource() 82 Fortran::evaluate::FoldingContext createFoldingContext() const; 95 void lower(const Fortran::parser::Program &program, fir::NameUniquer &uniquer, 96 const Fortran::semantics::SemanticsContext &semanticsContext); [all …]
|
D | AbstractConverter.h | 15 namespace Fortran { 40 using SomeExpr = Fortran::evaluate::Expr<Fortran::evaluate::SomeType>; 41 using SymbolRef = Fortran::common::Reference<const Fortran::semantics::Symbol>; 82 virtual Fortran::evaluate::FoldingContext &getFoldingContext() = 0; 89 virtual mlir::Type genType(const Fortran::evaluate::DataRef &) = 0; 95 virtual mlir::Type genType(Fortran::common::TypeCategory tc) = 0; 97 virtual mlir::Type genType(Fortran::common::TypeCategory tc, int kind) = 0; 110 virtual mlir::Location genLocation(const Fortran::parser::CharBlock &) = 0; 117 virtual Fortran::lower::FirOpBuilder &getFirOpBuilder() = 0; 123 virtual std::string mangleName(const Fortran::semantics::Symbol &) = 0;
|
D | IO.h | 21 namespace Fortran { 44 using LabelEvalMap = llvm::DenseMap<Fortran::parser::Label, Evaluation *>; 45 using SymbolRef = Fortran::common::Reference<const Fortran::semantics::Symbol>; 46 using LabelSet = llvm::SmallSet<Fortran::parser::Label, 5>;
|
/external/llvm-project/flang/tools/f18/ |
D | f18.cpp | 60 void MeasureParseTree(const Fortran::parser::Program &program) { in MeasureParseTree() 62 Fortran::parser::Walk(program, visitor); in MeasureParseTree() 94 Fortran::parser::Encoding encoding{Fortran::parser::Encoding::UTF_8}; 166 static Fortran::parser::AnalyzedObjectsAsFortran asFortran{ 167 [](llvm::raw_ostream &o, const Fortran::evaluate::GenericExprWrapper &x) { in __anon0c4be49b0102() 175 const Fortran::evaluate::GenericAssignmentWrapper &x) { in __anon0c4be49b0202() 182 [](llvm::raw_ostream &o, const Fortran::evaluate::ProcedureRef &x) { in __anon0c4be49b0302() 187 std::string CompileFortran(std::string path, Fortran::parser::Options options, in CompileFortran() 189 const Fortran::common::IntrinsicTypeDefaultKinds &defaultKinds) { in CompileFortran() 190 Fortran::parser::AllSources allSources; in CompileFortran() [all …]
|
/external/llvm-project/flang/runtime/ |
D | main.cpp | 31 std::atexit(Fortran::runtime::NotifyOtherImagesOfNormalEnd); in RTNAME() 32 Fortran::runtime::executionEnvironment.Configure(argc, argv, envp); in RTNAME() 38 if (Fortran::runtime::executionEnvironment.conversion == in RTNAME() 39 Fortran::runtime::Convert::Unknown) { in RTNAME() 42 Fortran::runtime::executionEnvironment.conversion = in RTNAME() 43 Fortran::runtime::Convert::Swap; in RTNAME()
|
D | stop.cpp | 48 Fortran::runtime::io::IoErrorHandler handler{why}; in CloseAllExternalUnits() 49 Fortran::runtime::io::ExternalFileUnit::CloseAll(handler); in CloseAllExternalUnits() 78 if (Fortran::runtime::io::IsATerminal(0)) { in StartPause() 79 Fortran::runtime::io::IoErrorHandler handler{"PAUSE statement"}; in StartPause() 80 Fortran::runtime::io::ExternalFileUnit::FlushAll(handler); in StartPause() 118 Fortran::runtime::NotifyOtherImagesOfFailImageStatement(); in RTNAME()
|
/external/llvm-project/flang/tools/f18-parse-demo/ |
D | f18-parse-demo.cpp | 89 Fortran::parser::Encoding encoding{Fortran::parser::Encoding::LATIN_1}; 153 std::string path, Fortran::parser::Options options, DriverOptions &driver) { in CompileFortran() 162 Fortran::parser::AllSources allSources; in CompileFortran() 163 Fortran::parser::AllCookedSources allCookedSources{allSources}; in CompileFortran() 164 Fortran::parser::Parsing parsing{allCookedSources}; in CompileFortran() 211 Fortran::parser::DumpTree(llvm::outs(), parseTree); in CompileFortran() 217 Fortran::common::LanguageFeature::BackslashEscapes)); in CompileFortran() 238 Fortran::common::LanguageFeature::BackslashEscapes)); in CompileFortran() 288 Fortran::parser::Options options; in main() 295 Fortran::common::LanguageFeature::BackslashEscapes, true); in main() [all …]
|
/external/llvm-project/flang/include/flang/Common/ |
D | idioms.h | 49 namespace Fortran::common { 68 #define DIE(x) Fortran::common::die(x " at " __FILE__ "(%d)", __LINE__) 129 return Fortran::common::ListItemCount{__VA_ARGS__}.value; \ 132 return Fortran::common::EnumIndexToString( \ 137 #define DEREF(p) Fortran::common::Deref(p, __FILE__, __LINE__) 141 Fortran::common::die("nullptr dereference at %s(%d)", file, line); 149 Fortran::common::die("nullptr dereference at %s(%d)", file, line);
|
/external/llvm-project/flang/include/flang/Frontend/ |
D | CompilerInstance.h | 17 namespace Fortran::frontend { 25 std::shared_ptr<Fortran::parser::AllSources> allSources_; 27 std::shared_ptr<Fortran::parser::AllCookedSources> allCookedSources_; 29 std::shared_ptr<Fortran::parser::Parsing> parsing_; 76 Fortran::parser::AllSources &allSources() const { return *allSources_; } in allSources() 85 Fortran::parser::Parsing &parsing() const { return *parsing_; } in parsing()
|
D | CompilerInvocation.h | 17 namespace Fortran::frontend { 52 Fortran::parser::Options parserOpts_; 60 Fortran::parser::Options &fortranOpts() { return parserOpts_; } in fortranOpts() 61 const Fortran::parser::Options &fortranOpts() const { return parserOpts_; } in fortranOpts()
|
/external/llvm-project/flang/docs/ |
D | ReleaseNotes.md | 11 This document contains the release notes for the Flang Fortran frontend, 34 Flang is LLVM's Fortran front end and is new for the LLVM 11 release. 39 Flang is able to parse a comprehensive subset of the Fortran language 44 emit it to allow testing. Flang can also invoke an external Fortran 48 * Fortran 2018 52 Interested users are invited to try to compile their Fortran codes with 64 By default, Flang will parse the Fortran file `hello.f90` then unparse it to a 65 canonical Fortran source file. Flang will then invoke an external 66 Fortran compiler to compile this source file and link it, placing the 69 To specify the external Fortran compiler, set the `F18_FC` environment
|
/external/llvm-project/flang/lib/Semantics/ |
D | check-call.h | 16 namespace Fortran::parser { 20 namespace Fortran::evaluate::characteristics { 23 namespace Fortran::evaluate { 27 namespace Fortran::semantics {
|
D | assignment.h | 16 namespace Fortran::parser { 26 namespace Fortran::semantics { 58 extern template class Fortran::common::Indirection< 59 Fortran::semantics::AssignmentContext>;
|
/external/llvm-project/flang/unittests/Evaluate/ |
D | logical.cpp | 7 Fortran::evaluate::Type<Fortran::common::TypeCategory::Logical, KIND>; in testKind() 8 TEST(Fortran::evaluate::IsSpecificIntrinsicType<Type>); in testKind() 9 TEST(Type::category == Fortran::common::TypeCategory::Logical); in testKind() 11 using Value = Fortran::evaluate::Scalar<Type>; in testKind()
|
D | expression.cpp | 11 using namespace Fortran::evaluate; 21 Fortran::common::IntrinsicTypeDefaultKinds defaults; in main() 22 auto intrinsics{Fortran::evaluate::IntrinsicProcTable::Configure(defaults)}; in main() 24 Fortran::parser::ContextualMessages{nullptr}, defaults, intrinsics}; in main()
|