Home
last modified time | relevance | path

Searched refs:procRef (Results 1 – 14 of 14) sorted by relevance

/llvm-project/flang/lib/Lower/
H A DCustomIntrinsicCall.cpp27 llvm::StringRef name, const Fortran::evaluate::ProcedureRef &procRef) { in isMinOrMaxWithDynamicallyOptionalArg() argument
30 const auto &args = procRef.arguments(); in isMinOrMaxWithDynamicallyOptionalArg()
47 llvm::StringRef name, const Fortran::evaluate::ProcedureRef &procRef) { in isIshftcWithDynamicallyOptionalArg() argument
48 if (name != "ishftc" || procRef.arguments().size() < 3) in isIshftcWithDynamicallyOptionalArg()
51 procRef.arguments()[2]); in isIshftcWithDynamicallyOptionalArg()
67 llvm::StringRef name, const Fortran::evaluate::ProcedureRef &procRef) { in isAssociatedWithDynamicallyOptionalArg() argument
68 if (name != "associated" || procRef.arguments().size() < 2) in isAssociatedWithDynamicallyOptionalArg()
71 procRef.arguments()[1]); in isAssociatedWithDynamicallyOptionalArg()
79 const Fortran::evaluate::ProcedureRef &procRef, in intrinsicRequiresCustomOptionalHandling() argument
83 return isMinOrMaxWithDynamicallyOptionalArg(name, procRef) || in intrinsicRequiresCustomOptionalHandling()
[all …]
H A DConvertCall.cpp775 const Fortran::evaluate::ProcedureRef &procRef) { in genStmtFunctionRef()
776 const Fortran::semantics::Symbol *symbol = procRef.proc().GetSymbol(); in genStmtFunctionRef()
788 for (auto [arg, bind] : llvm::zip(details.dummyArgs(), procRef.arguments())) { in genStmtFunctionRef()
854 CallContext(const Fortran::evaluate::ProcedureRef &procRef, in isElementalProcWithArrayArgs()
859 : procRef{procRef}, converter{converter}, symMap{symMap},
865 if (const Fortran::semantics::Symbol *sym = procRef.proc().GetSymbol()) in isStatementFunctionCall()
867 return procRef.proc().GetName(); in isStatementFunctionCall()
872 if (procRef.IsElemental()) in isBindcCall()
874 procRef in isBindcCall()
755 genStmtFunctionRef(mlir::Location loc,Fortran::lower::AbstractConverter & converter,Fortran::lower::SymMap & symMap,Fortran::lower::StatementContext & stmtCtx,const Fortran::evaluate::ProcedureRef & procRef) genStmtFunctionRef() argument
876 const Fortran::evaluate::ProcedureRef &procRef; global() member
2758 isIntrinsicModuleProcRef(const Fortran::evaluate::ProcedureRef & procRef) isIntrinsicModuleProcRef() argument
2775 convertCallToHLFIR(mlir::Location loc,Fortran::lower::AbstractConverter & converter,const evaluate::ProcedureRef & procRef,std::optional<mlir::Type> resultType,Fortran::lower::SymMap & symMap,Fortran::lower::StatementContext & stmtCtx) convertCallToHLFIR() argument
2815 convertUserDefinedAssignmentToHLFIR(mlir::Location loc,Fortran::lower::AbstractConverter & converter,const evaluate::ProcedureRef & procRef,hlfir::Entity lhs,hlfir::Entity rhs,Fortran::lower::SymMap & symMap) convertUserDefinedAssignmentToHLFIR() argument
[all...]
H A DConvertExpr.cpp532 isElementalProcWithArrayArgs(const Fortran::evaluate::ProcedureRef &procRef) {
533 if (procRef.IsElemental())
535 procRef.arguments())
546 if (const auto *procRef = std::get_if<Fortran::evaluate::ProcedureRef>(&x.u)) in createBoxProcCharTuple()
547 return isElementalProcWithArrayArgs(*procRef); in createBoxProcCharTuple()
639 isOptimizableTranspose(const Fortran::evaluate::ProcedureRef &procRef, in isOptimizableTranspose()
642 procRef.proc().GetSpecificIntrinsic();
646 procRef.arguments().at(0); in isOptimizableTranspose()
1845 const Fortran::evaluate::ProcedureRef &procRef, in genIntrinsicRef()
1853 : procRef in genIntrinsicRef()
513 isElementalProcWithArrayArgs(const Fortran::evaluate::ProcedureRef & procRef) isElementalProcWithArrayArgs() argument
527 if (const auto *procRef = std::get_if<Fortran::evaluate::ProcedureRef>(&x.u)) isElementalProcWithArrayArgs() local
620 isOptimizableTranspose(const Fortran::evaluate::ProcedureRef & procRef,const Fortran::lower::AbstractConverter & converter) isOptimizableTranspose() argument
1792 genIntrinsicRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> resultType,std::optional<const Fortran::evaluate::SpecificIntrinsic> intrinsic=std::nullopt) genIntrinsicRef() argument
1937 isStatementFunctionCall(const Fortran::evaluate::ProcedureRef & procRef) isStatementFunctionCall() argument
1946 genStmtFunctionRef(const Fortran::evaluate::ProcedureRef & procRef) genStmtFunctionRef() argument
2038 genProcedureRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> resultType) genProcedureRef() argument
2529 genRawProcedureRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> resultType) genRawProcedureRef() argument
2882 genval(const Fortran::evaluate::ProcedureRef & procRef) genval() argument
3597 lowerElementalUserAssignment(Fortran::lower::AbstractConverter & converter,Fortran::lower::SymMap & symMap,Fortran::lower::StatementContext & stmtCtx,Fortran::lower::ExplicitIterSpace & explicitSpace,Fortran::lower::ImplicitIterSpace & implicitSpace,const Fortran::evaluate::ProcedureRef & procRef) lowerElementalUserAssignment() argument
3656 extractPassedArgFromProcRef(const Fortran::evaluate::ProcedureRef & procRef,Fortran::lower::AbstractConverter & converter) extractPassedArgFromProcRef() argument
3684 if (const auto *procRef = lowerElementalSubroutine() local
4596 genElementalIntrinsicProcRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> retTy,std::optional<const Fortran::evaluate::SpecificIntrinsic> intrinsic=std::nullopt) genElementalIntrinsicProcRef() argument
4714 genElementalUserDefinedProcRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> retTy) genElementalUserDefinedProcRef() argument
4895 genTransposeProcRef(const Fortran::evaluate::ProcedureRef & procRef) genTransposeProcRef() argument
4933 genProcRef(const Fortran::evaluate::ProcedureRef & procRef,std::optional<mlir::Type> retTy) genProcRef() argument
7228 setLoweredProcRef(const Fortran::evaluate::ProcedureRef * procRef) setLoweredProcRef() argument
[all...]
H A DCallInterface.cpp60 return procRef.hasAlternateReturns(); in hasAlternateReturns()
76 return getProcMangledName(procRef.proc(), converter); in getMangledName()
81 return procRef.proc().GetSymbol(); in getProcedureSymbol()
85 if (const Fortran::semantics::Symbol *symbol = procRef.proc().GetSymbol()) in isIndirectCall()
94 if (const Fortran::semantics::Symbol *sym = procRef.proc().GetSymbol()) in requireDispatchCall()
100 procRef.proc().GetComponent()) { in requireDispatchCall()
148 if (const Fortran::semantics::Symbol *symbol = procRef.proc().GetSymbol()) in getIfIndirectCall()
151 return &procRef.proc(); in getIfIndirectCall()
171 return getProcedureDesignatorLoc(procRef.proc(), converter); in getCalleeLocation()
222 procRef in characterize()
[all...]
H A DConvertVariable.cpp271 if (const Fortran::evaluate::ProcedureRef *procRef = in genInitialDataTarget()
274 procRef->proc().GetSpecificIntrinsic(); in genInitialDataTarget()
276 assert(procRef->arguments().size() == 1 && in genInitialDataTarget()
278 const auto *argExpr = procRef->arguments()[0].value().UnwrapExpr(); in genInitialDataTarget()
269 if (const Fortran::evaluate::ProcedureRef *procRef = genInitialDataTarget() local
H A DBridge.cpp4651 [&](const Fortran::evaluate::ProcedureRef &procRef) { in genAssignment()
4652 genDataAssignment(assign, /*userDefinedAssignment=*/&procRef); in genAssignment()
4856 [&](const Fortran::evaluate::ProcedureRef &procRef) { in genFIR()
4861 *this, procRef, explicitIterSpace, implicitIterSpace, in genFIR()
5816 [&](const Fortran::evaluate::ProcedureRef &procRef) { in lowerToHighLevelFIR()
5817 // Ensure the procRef expressions are the one being visited. in lowerToHighLevelFIR()
5818 assert(procRef.arguments().size() == 2);
5820 procRef.arguments()[0].value().UnwrapExpr(); in getConstantExprManglePrefix()
5822 procRef.arguments()[1].value().UnwrapExpr(); in getConstantExprManglePrefix()
4482 __anonc6773cb55302(const Fortran::evaluate::ProcedureRef &procRef) genAssignment() argument
4687 __anonc6773cb55902(const Fortran::evaluate::ProcedureRef &procRef) genAssignment() argument
5638 __anonc6773cb56e02(const Fortran::evaluate::ProcedureRef &procRef) analyzeExplicitSpace() argument
/llvm-project/flang/include/flang/Lower/
H A DConvertCall.h52 /// Is \p procRef an intrinsic module procedure that should be lowered as
54 bool isIntrinsicModuleProcRef(const Fortran::evaluate::ProcedureRef &procRef);
60 const evaluate::ProcedureRef &procRef, std::optional<mlir::Type> resultType,
65 const evaluate::ProcedureRef &procRef, hlfir::Entity lhs, hlfir::Entity rhs,
H A DCustomIntrinsicCall.h41 /// Does the call \p procRef to \p intrinsic need to be handle via this custom
45 const Fortran::evaluate::ProcedureRef &procRef,
81 const Fortran::evaluate::ProcedureRef &procRef,
H A DCallInterface.h286 : CallInterface{c}, procRef{p} {
299 return procRef;
407 const Fortran::evaluate::ProcedureRef &procRef;
/llvm-project/flang/lib/Optimizer/Transforms/
H A DPolymorphicOpConversion.cpp181 mlir::Value procRef = rewriter.create<fir::CoordinateOp>( in matchAndRewrite() local
190 loc, addressRefTy, procRef, addressField); in matchAndRewrite()
/llvm-project/flang/lib/Semantics/
H A Dexpression.cpp3283 std::optional<ProcedureRef> procRef{analyzer.TryDefinedAssignment()};
3284 if (!procRef) { in CheckCall()
3302 if (procRef) { in CheckCall()
3303 assignment->u = std::move(*procRef); in CheckCall()
4186 ProcedureRef procRef{std::move(proc), std::move(arguments)};
4188 return Expr<SomeType>{std::move(procRef)}; in Analyze()
4192 DEREF(result.GetTypeAndShape()).type(), std::move(procRef)); in Analyze()
4600 if (std::optional<ProcedureRef> procRef{GetDefinedAssignmentProc()}) { in GetDefinedAssignmentProc()
4601 if (context_.inWhereBody() && !procRef->proc().IsElemental()) { // C1032 in GetDefinedAssignmentProc()
4604 DEREF(procRef in GetDefinedAssignmentProc()
3200 std::optional<ProcedureRef> procRef{analyzer.TryDefinedAssignment()}; Analyze() local
4103 ProcedureRef procRef{std::move(proc), std::move(arguments)}; MakeFunctionRef() local
[all...]
H A Dresolve-directives.cpp553 if (auto *procRef{ in Pre()
555 if (!procRef->v.thing.component.symbol) {
556 if (!ResolveName(&procRef->v.thing.component)) { in Pre()
557 createDummyProcSymbol(&procRef->v.thing.component); in Pre()
503 if (const auto *procRef{ Pre() local
/llvm-project/flang/include/flang/Evaluate/
H A Dtools.h991 if (const auto *procRef{UnwrapProcedureRef(x)}) { in GetAttrs()
992 if (const Symbol * interface{procRef->proc().GetInterfaceSymbol()}) { in GetAttrs()
1143 template <typename T> bool operator()(const FunctionRef<T> &procRef) { in ScalarConstantExpander()
1144 return !admitPureCall_ || !procRef.proc().IsPure(); in ScalarConstantExpander()
/llvm-project/flang/lib/Evaluate/
H A Dcharacteristics.cpp1424 if (const auto *procRef{UnwrapProcedureRef(expr)}) { in Characterize()
1425 return Characterize(*procRef, context); in Characterize()
1419 if (const auto *procRef{UnwrapProcedureRef(expr)}) { Characterize() local