Home
last modified time | relevance | path

Searched refs:Fortran (Results 1 – 25 of 550) sorted by relevance

12345678910>>...22

/external/llvm-project/flang/lib/Lower/
DConvertType.cpp29 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 …]
DOpenMP.cpp25 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 …]
DOpenACC.cpp25 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 …]
DCoarray.cpp33 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 …]
DIO.cpp25 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 …]
DMangler.cpp22 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 …]
DCharacterExpr.cpp59 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 …]
DFIRBuilder.cpp18 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 …]
DCharacterRuntime.cpp17 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()
DComplexExpr.cpp17 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/
DBridge.h29 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 …]
DAbstractConverter.h15 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;
DIO.h21 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/
Df18.cpp60 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/
Dmain.cpp31 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()
Dstop.cpp48 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/
Df18-parse-demo.cpp89 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/
Didioms.h49 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/
DCompilerInstance.h17 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()
DCompilerInvocation.h17 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/
DReleaseNotes.md11 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/
Dcheck-call.h16 namespace Fortran::parser {
20 namespace Fortran::evaluate::characteristics {
23 namespace Fortran::evaluate {
27 namespace Fortran::semantics {
Dassignment.h16 namespace Fortran::parser {
26 namespace Fortran::semantics {
58 extern template class Fortran::common::Indirection<
59 Fortran::semantics::AssignmentContext>;
/external/llvm-project/flang/unittests/Evaluate/
Dlogical.cpp7 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()
Dexpression.cpp11 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()

12345678910>>...22