Home
last modified time | relevance | path

Searched refs:funcRef (Results 1 – 10 of 10) sorted by relevance

/llvm-project-15.0.7/flang/lib/Evaluate/
H A Dfold-real.cpp16 FunctionRef<T> &&funcRef, FoldingContext &context) { in FoldTransformationalBessel() argument
17 CHECK(funcRef.arguments().size() == 3); in FoldTransformationalBessel()
43 return Expr<T>{std::move(funcRef)}; in FoldTransformationalBessel()
53 ActualArguments &args{funcRef.arguments()}; in FoldIntrinsicFunction()
68 context, std::move(funcRef), *callable); in FoldIntrinsicFunction()
81 context, std::move(funcRef), *callable); in FoldIntrinsicFunction()
92 context, std::move(funcRef), *callable); in FoldIntrinsicFunction()
166 return FoldMerge<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
238 std::move(funcRef), in FoldIntrinsicFunction()
275 return FoldSum<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
[all …]
H A Dfold-character.cpp27 FoldingContext &context, FunctionRef<T> &funcRef, int zeroBasedArg) { in GetConstantLength() argument
28 if (auto *expr{funcRef.UnwrapArgExpr(zeroBasedArg)}) { in GetConstantLength()
49 FunctionRef<Type<TypeCategory::Character, KIND>> &&funcRef) { in FoldIntrinsicFunction() argument
53 auto *intrinsic{std::get_if<SpecificIntrinsic>(&funcRef.proc().u)}; in FoldIntrinsicFunction()
58 return FoldElementalIntrinsic<T, IntT>(context, std::move(funcRef), in FoldIntrinsicFunction()
64 context, std::move(funcRef), CharacterUtils<KIND>::ADJUSTL); in FoldIntrinsicFunction()
67 context, std::move(funcRef), CharacterUtils<KIND>::ADJUSTR); in FoldIntrinsicFunction()
78 return FoldMerge<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
80 return FoldMINorMAX(context, std::move(funcRef), Ordering::Less); in FoldIntrinsicFunction()
93 context, funcRef.arguments())}) { in FoldIntrinsicFunction()
[all …]
H A Dfold-complex.cpp17 FunctionRef<Type<TypeCategory::Complex, KIND>> &&funcRef) { in FoldIntrinsicFunction() argument
20 ActualArguments &args{funcRef.arguments()}; in FoldIntrinsicFunction()
21 auto *intrinsic{std::get_if<SpecificIntrinsic>(&funcRef.proc().u)}; in FoldIntrinsicFunction()
30 context, std::move(funcRef), *callable); in FoldIntrinsicFunction()
38 context, std::move(funcRef), &Scalar<T>::CONJG); in FoldIntrinsicFunction()
51 return Expr<T>{std::move(funcRef)}; in FoldIntrinsicFunction()
66 return FoldMerge<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
69 return FoldProduct<T>(context, std::move(funcRef), Scalar<T>{one}); in FoldIntrinsicFunction()
71 return FoldSum<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
74 return Expr<T>{std::move(funcRef)}; in FoldIntrinsicFunction()
H A Dfold-integer.cpp116 ActualArguments &args{funcRef.arguments()}; in LBOUND()
120 if (funcRef.Rank() == 0) { in LBOUND()
133 return Expr<T>{std::move(funcRef)}; in LBOUND()
163 return Expr<T>{std::move(funcRef)}; in LBOUND()
174 if (funcRef.Rank() == 0) { in UBOUND()
236 return Expr<T>{std::move(funcRef)}; in UBOUND()
596 std::move(funcRef), in FoldIntrinsicFunction()
675 std::move(funcRef), in FoldIntrinsicFunction()
689 std::move(funcRef), in FoldIntrinsicFunction()
748 std::move(funcRef), in FoldIntrinsicFunction()
[all …]
H A Dfold-logical.cpp47 FunctionRef<Type<TypeCategory::Logical, KIND>> &&funcRef) { in FoldIntrinsicFunction() argument
49 ActualArguments &args{funcRef.arguments()}; in FoldIntrinsicFunction()
50 auto *intrinsic{std::get_if<SpecificIntrinsic>(&funcRef.proc().u)}; in FoldIntrinsicFunction()
56 context, std::move(funcRef), &Scalar<T>::AND, Scalar<T>{true}); in FoldIntrinsicFunction()
59 context, std::move(funcRef), &Scalar<T>::OR, Scalar<T>{false}); in FoldIntrinsicFunction()
71 return gotConstant ? Expr<T>{false} : Expr<T>{std::move(funcRef)}; in FoldIntrinsicFunction()
114 std::move(funcRef), in FoldIntrinsicFunction()
121 return Expr<T>{std::move(funcRef)}; in FoldIntrinsicFunction()
129 std::move(funcRef), in FoldIntrinsicFunction()
205 return FoldMerge<T>(context, std::move(funcRef)); in FoldIntrinsicFunction()
[all …]
H A Dfold-implementation.h520 return Expr<TR>{std::move(funcRef)}; in FoldElementalIntrinsicHelper()
575 auto args{funcRef.arguments()}; in CSHIFT()
581 return Expr<T>{std::move(funcRef)}; in CSHIFT()
653 auto args{funcRef.arguments()}; in EOSHIFT()
785 auto args{funcRef.arguments()}; in PACK()
849 auto args{funcRef.arguments()}; in RESHAPE()
900 auto args{funcRef.arguments()}; in SPREAD()
945 auto args{funcRef.arguments()}; in TRANSPOSE()
967 auto args{funcRef.arguments()}; in UNPACK()
1145 return Expr<T>{std::move(funcRef)}; in FoldOperation()
[all …]
H A Dtools.cpp778 } else if (const auto *funcRef{UnwrapProcedureRef(expr)}) { in IsObjectPointer() local
779 return IsVariable(*funcRef); in IsObjectPointer()
/llvm-project-15.0.7/flang/lib/Parser/
H A Dparse-tree.cpp229 FunctionReference funcRef{WithSource(source, in ConvertToAssignment() local
232 auto variable{Variable{common::Indirection{std::move(funcRef)}}}; in ConvertToAssignment()
/llvm-project-15.0.7/flang/lib/Semantics/
H A Dexpression.cpp2468 const parser::Call &call{funcRef.v}; in Analyze()
2963 const parser::FunctionReference &funcRef) { in CheckFuncRefToArrayElement() argument
2969 auto &proc{std::get<parser::ProcedureDesignator>(funcRef.v.t)}; in CheckFuncRefToArrayElement()
2980 auto &msg{context.Say(funcRef.v.source, in CheckFuncRefToArrayElement()
2989 auto &msg{context.Say(funcRef.v.source, in CheckFuncRefToArrayElement()
3012 parser::FunctionReference &funcRef{func->value()}; in FixMisparsedFunctionReference() local
3030 if (CheckFuncRefToArrayElement(context, funcRef)) { in FixMisparsedFunctionReference()
3064 if (const auto *funcRef{ in ExprOrVariable() local
3071 result = Analyze(funcRef->value(), &ctor); in ExprOrVariable()
3113 if (const auto *funcRef{ in Analyze() local
[all …]
/llvm-project-15.0.7/flang/lib/Lower/
H A DConvertExpr.cpp615 isOptimizableTranspose(const Fortran::evaluate::FunctionRef<T> &funcRef) { in isOptimizableTranspose() argument
617 static_cast<const Fortran::evaluate::ProcedureRef &>(funcRef)); in isOptimizableTranspose()
2147 if (!funcRef.GetType().has_value()) in genFunctionRef()
2149 mlir::Type resTy = genType(*funcRef.GetType()); in genFunctionRef()
2150 return genProcedureRef(funcRef, {resTy}); in genFunctionRef()
2156 ExtValue gen(const Fortran::evaluate::FunctionRef<A> &funcRef) { in gen() argument
2157 ExtValue retVal = genFunctionRef(funcRef); in gen()
2158 mlir::Type resultType = converter.genType(toEvExpr(funcRef)); in gen()
3220 ExtValue genval(const Fortran::evaluate::FunctionRef<A> &funcRef) { in genval() argument
3221 ExtValue result = genFunctionRef(funcRef); in genval()
[all …]