Home
last modified time | relevance | path

Searched refs:UnwrapExpr (Results 1 – 25 of 36) sorted by relevance

12

/llvm-project-15.0.7/flang/lib/Evaluate/
H A Dfold-complex.cpp41 if (auto *x{UnwrapExpr<Expr<SomeComplex>>(args[0])}) { in FoldIntrinsicFunction()
50 if (MayBePassedAsAbsentOptional(*args[1]->UnwrapExpr(), context)) { in FoldIntrinsicFunction()
55 Expr<SomeType> re{std::move(*args[0].value().UnwrapExpr())}; in FoldIntrinsicFunction()
57 ? std::move(*args[1]->UnwrapExpr()) in FoldIntrinsicFunction()
H A Dfold-logical.cpp62 const Expr<SomeType> *firstArgExpr{args[0]->UnwrapExpr()}; in FoldIntrinsicFunction()
66 const Expr<SomeType> *secondArgExpr{args[1]->UnwrapExpr()}; in FoldIntrinsicFunction()
82 if (BOZLiteralConstant * x{UnwrapExpr<BOZLiteralConstant>(args[i])}) { in FoldIntrinsicFunction()
84 } else if (auto *x{UnwrapExpr<Expr<SomeInteger>>(args[i])}) { in FoldIntrinsicFunction()
124 if (const auto *ix{UnwrapExpr<Expr<SomeInteger>>(args[0])}) { in FoldIntrinsicFunction()
180 if (auto *expr{args[0]->UnwrapExpr()}) { in FoldIntrinsicFunction()
188 auto *cx0{UnwrapExpr<Expr<SomeCharacter>>(args[0])}; in FoldIntrinsicFunction()
189 auto *cx1{UnwrapExpr<Expr<SomeCharacter>>(args[1])}; in FoldIntrinsicFunction()
201 if (auto *expr{UnwrapExpr<Expr<SomeLogical>>(args[0])}) { in FoldIntrinsicFunction()
H A Dfold-integer.cpp117 if (const auto *array{UnwrapExpr<Expr<SomeType>>(args[0])}) { in LBOUND()
171 if (auto *array{UnwrapExpr<Expr<SomeType>>(args[0])}) { in UBOUND()
510 if (const auto *cx{UnwrapExpr<Expr<SomeReal>>(args[0])}) { in FoldIntrinsicFunction()
533 if (const auto *cx{UnwrapExpr<Expr<SomeInteger>>(args[0])}) { in FoldIntrinsicFunction()
567 if (auto *sx{UnwrapExpr<Expr<SomeReal>>(args[0])}) { in FoldIntrinsicFunction()
583 auto *someChar{UnwrapExpr<Expr<SomeCharacter>>(args[0])}; in FoldIntrinsicFunction()
706 if (auto *expr{UnwrapExpr<Expr<SomeType>>(args[0])}) { in FoldIntrinsicFunction()
769 if (auto *sn{UnwrapExpr<Expr<SomeInteger>>(args[0])}) { in FoldIntrinsicFunction()
843 if (auto *sx{UnwrapExpr<Expr<SomeReal>>(args[0])}) { in FoldIntrinsicFunction()
866 if (auto *sx{UnwrapExpr<Expr<SomeReal>>(args[0])}) { in FoldIntrinsicFunction()
[all …]
H A Dcall.cpp42 if (const Expr<SomeType> *expr{UnwrapExpr()}) { in GetType()
52 if (const Expr<SomeType> *expr{UnwrapExpr()}) { in Rank()
65 u_ = evaluate::Parenthesize(std::move(DEREF(UnwrapExpr()))); in Parenthesize()
190 UnwrapExpr<Expr<SomeCharacter>>(arguments_[0].value())}; in LEN()
192 UnwrapExpr<Expr<SomeInteger>>(arguments_[1].value())}; in LEN()
H A Dfold-real.cpp103 if (auto *x{UnwrapExpr<Expr<SomeReal>>(args[0])}) { in FoldIntrinsicFunction()
106 } else if (auto *z{UnwrapExpr<Expr<SomeComplex>>(args[0])}) { in FoldIntrinsicFunction()
115 if (auto *zExpr{UnwrapExpr<Expr<ComplexT>>(args[0])}) { in FoldIntrinsicFunction()
197 if (const auto *sExpr{UnwrapExpr<Expr<SomeReal>>(args[1])}) { in FoldIntrinsicFunction()
225 if (auto *expr{args[0].value().UnwrapExpr()}) { in FoldIntrinsicFunction()
233 if (const auto *byExpr{UnwrapExpr<Expr<SomeInteger>>(args[1])}) { in FoldIntrinsicFunction()
279 if (const auto *yExpr{UnwrapExpr<Expr<SomeReal>>(args[1])}) { in FoldIntrinsicFunction()
H A Dshape.cpp63 if (auto *constructor{UnwrapExpr<ArrayConstructor<ExtentType>>(arrayExpr)}) { in AsShapeResult()
797 (*this)(UnwrapExpr<Expr<SomeType>>(call.arguments().at(0)))}; in operator ()()
798 const auto *dimArg{UnwrapExpr<Expr<SomeType>>(call.arguments().at(1))}; in operator ()()
814 (*this)(UnwrapExpr<Expr<SomeType>>(call.arguments().at(0)))}) { in operator ()()
817 UnwrapExpr<Expr<SomeType>>(call.arguments()[dimIndex])}) { in operator ()()
875 DEREF(call.arguments().at(1).value().UnwrapExpr()))}}; in operator ()()
889 call.arguments().at(1).value().UnwrapExpr()}) { in operator ()()
902 (*this)(UnwrapExpr<Expr<SomeType>>(call.arguments().at(0)))}; in operator ()()
903 const auto *dimArg{UnwrapExpr<Expr<SomeType>>(call.arguments().at(1))}; in operator ()()
905 UnwrapExpr<Expr<SomeInteger>>(call.arguments().at(2))}; in operator ()()
[all …]
H A Dfold.cpp197 if (const auto *intExpr{UnwrapExpr<Expr<SomeInteger>>(arg)}) { in GetInt64Arg()
208 } else if (const auto *intExpr{UnwrapExpr<Expr<SomeInteger>>(arg)}) { in GetInt64ArgOr()
228 const auto *source{UnwrapExpr<Expr<SomeType>>(arguments[0])}; in FoldTransfer()
259 if (const auto *sizeExpr{arguments[2]->UnwrapExpr()}) { in FoldTransfer()
H A Dfold-implementation.h280 auto *typedExpr{UnwrapExpr<Expr<T>>(expr.value())}; in ApplyComponent()
399 if (auto *expr{UnwrapExpr<Expr<SomeType>>(arg)}) { in Folding()
400 if (!UnwrapExpr<Expr<T>>(*expr)) { in Folding()
543 if (const auto *someInteger{UnwrapExpr<Expr<SomeInteger>>(x)}) { in GetIntegerVector()
578 const auto *shiftExpr{UnwrapExpr<Expr<SomeInteger>>(args[1])}; in CSHIFT()
656 const auto *shiftExpr{UnwrapExpr<Expr<SomeInteger>>(args[1])}; in EOSHIFT()
673 boundary = UnwrapExpr<Constant<T>>(convertedBoundary); in EOSHIFT()
1021 return DEREF(UnwrapExpr<Expr<T>>(*folded)); in TRANSFER()
1092 if (auto *sx{UnwrapExpr<Expr<SomeReal>>(*resultTypeArg)}) { in RewriteSpecificMINorMAX()
1117 if (auto *expr{UnwrapExpr<Expr<SomeType>>(arg)}) { in FoldOperation()
[all …]
H A Dintrinsics.cpp1361 const Expr<SomeType> &expr{DEREF(arg->UnwrapExpr())}; in Match()
1681 if (auto *expr{kindArg->UnwrapExpr()}) { in Match()
1827 if (const Expr<SomeType> *expr{arg->UnwrapExpr()}) { in Match()
2082 if (Expr<SomeType> * mold{arguments[0]->UnwrapExpr()}) { in HandleNull()
2221 if (const auto *pointerExpr{pointerArg->UnwrapExpr()}) { in CheckAssociated()
2343 if (const Expr<SomeType> *expr{arg.UnwrapExpr()}) { in CheckForNonPositiveValues()
2365 if (auto val{ToInt64(arg.UnwrapExpr())}) { in CheckForNonPositiveValues()
2384 if (const auto *expr{arg->UnwrapExpr()}) { in ApplySpecificChecks()
2403 if (auto sizeVal{ToInt64(sizeArg->UnwrapExpr())}) { in ApplySpecificChecks()
2429 if (const auto *expr{arg->UnwrapExpr()}) { in ApplySpecificChecks()
[all …]
H A Dtools.cpp64 if (const Expr<SomeType> *expr{arg.UnwrapExpr()}) { in ExtractDataRef()
641 if (auto *cx{UnwrapExpr<Expr<SomeCharacter>>(x)}) { in ConvertToType()
659 if (auto *cx{UnwrapExpr<Expr<SomeLogical>>(x)}) { in ConvertToType()
718 if (const auto *expr{arg.UnwrapExpr()}) { in IsAssumedRank()
728 const auto *expr{arg.UnwrapExpr()}; in IsCoarray()
1033 if (const auto *someExpr{UnwrapExpr<Expr<SomeKind<FROM>>>(*sized)}) { in DataConstantConversionHelper()
1039 if (const auto *fromConst{UnwrapExpr<Constant<FromType>>(w)}) { in DataConstantConversionHelper()
H A Dcheck-expression.cpp123 auto base{ExtractNamedEntity(call.arguments()[0]->UnwrapExpr())}; in operator ()()
126 auto base{ExtractNamedEntity(call.arguments()[0]->UnwrapExpr())}; in operator ()()
129 auto shape{GetShape(call.arguments()[0]->UnwrapExpr())}; in operator ()()
H A Dfold-character.cpp17 if (auto *chExpr{UnwrapExpr<Expr<SomeCharacter>>(expr)}) { in GetConstantLength()
H A Dvariable.cpp203 if (const auto *value{UnwrapExpr<Expr<SomeCharacter>>(folded)}) { in Fold()
264 if (const auto *chExpr{UnwrapExpr<Expr<SomeCharacter>>(assoc->expr())}) { in SymbolLEN()
/llvm-project-15.0.7/flang/lib/Lower/
H A DCustomIntrinsicCall.cpp34 Fortran::evaluate::UnwrapExpr<Fortran::lower::SomeExpr>(args[i])) in isMinOrMaxWithDynamicallyOptionalArg()
49 auto *expr = Fortran::evaluate::UnwrapExpr<Fortran::lower::SomeExpr>( in isIshftcWithDynamicallyOptionalArg()
65 auto *expr = Fortran::evaluate::UnwrapExpr<Fortran::lower::SomeExpr>(arg); in isRandomSeedWithDynamicallyOptionalArg()
98 Fortran::evaluate::UnwrapExpr<Fortran::lower::SomeExpr>(arg.value()); in prepareMinOrMaxArguments()
172 Fortran::evaluate::UnwrapExpr<Fortran::lower::SomeExpr>(arg.value()); in prepareIshftcArguments()
H A DIterationSpace.cpp202 return getHashValue(*x.UnwrapExpr()); in getHashValue()
473 isEqual(*x.UnwrapExpr(), *y.UnwrapExpr()); in isEqual()
753 (void)find(x.UnwrapExpr()); in find()
H A DDumpEvaluateExpr.cpp190 show(x.UnwrapExpr()); in show()
/llvm-project-15.0.7/flang/include/flang/Evaluate/
H A Dcall.h81 Expr<SomeType> *UnwrapExpr() { in UnwrapExpr() function
89 const Expr<SomeType> *UnwrapExpr() const { in UnwrapExpr() function
232 return arguments_[n]->UnwrapExpr(); in UnwrapArgExpr()
239 return arguments_[n]->UnwrapExpr(); in UnwrapArgExpr()
H A Dfold.h57 if (auto *c{UnwrapExpr<Constant<T>>(expr)}) {
61 if (auto *parens{UnwrapExpr<Parentheses<T>>(expr)}) {
H A Dtools.h172 auto UnwrapExpr(B &x) -> common::Constify<A, B> * {
177 if (auto *expr{x.UnwrapExpr()}) {
178 return UnwrapExpr<A>(*expr);
181 return common::visit([](auto &x) { return UnwrapExpr<A>(x); }, x.u);
185 return common::visit([](auto &x) { return UnwrapExpr<A>(x); }, x.u);
192 const A *UnwrapExpr(const std::optional<B> &x) { in UnwrapExpr() function
194 return UnwrapExpr<A>(*x); in UnwrapExpr()
200 template <typename A, typename B> A *UnwrapExpr(std::optional<B> &x) { in UnwrapExpr() function
202 return UnwrapExpr<A>(*x); in UnwrapExpr()
217 if (auto *expr{x.UnwrapExpr()}) {
H A Dtraverse.h182 return visitor_(x.UnwrapExpr()); in operator()
H A Dcharacteristics.h103 if (const auto *chExpr{UnwrapExpr<Expr<SomeCharacter>>(x)}) { in Characterize()
/llvm-project-15.0.7/clang/lib/Analysis/FlowSensitive/Models/
H A DUncheckedOptionalAccessModel.cpp307 void transferUnwrapCall(const Expr *UnwrapExpr, const Expr *ObjectExpr, in transferUnwrapCall() argument
311 if (State.Env.getStorageLocation(*UnwrapExpr, SkipPast::None) == nullptr) in transferUnwrapCall()
313 UnwrapExpr->getType(), *OptionalVal, State.Env)) in transferUnwrapCall()
314 State.Env.setStorageLocation(*UnwrapExpr, *Loc); in transferUnwrapCall()
656 std::vector<SourceLocation> diagnoseUnwrapCall(const Expr *UnwrapExpr, in diagnoseUnwrapCall() argument
/llvm-project-15.0.7/flang/lib/Semantics/
H A Dcheck-call.cpp50 if (const auto *expr{arg.UnwrapExpr()}) { in CheckImplicitInterfaceArg()
574 if (const auto *expr{arg.UnwrapExpr()}) { in CheckProcedureArg()
687 if (auto *expr{arg.UnwrapExpr()}) { in ConvertBOZLiteralArg()
723 if (auto *expr{arg.UnwrapExpr()}) { in CheckExplicitInterfaceArg()
858 if (const auto *expr{arg->UnwrapExpr()}) { in CheckElementalConformance()
H A Dresolve-names-utils.h63 if (auto *intExpr{evaluate::UnwrapExpr<SomeIntExpr>(*maybeExpr)}) { in EvaluateIntExpr()
H A Dexpression.cpp128 return DEREF(actuals_.at(i).value().UnwrapExpr()); in GetExpr()
131 return std::move(DEREF(actuals_.at(i).value().UnwrapExpr())); in MoveExpr()
1124 if (auto *dtExpr{UnwrapExpr<Expr<SomeDerived>>(*base)}) { in Analyze()
1225 if (auto *intExpr{UnwrapExpr<Expr<SomeInteger>>(coex)}) { in Analyze()
1282 auto *typed{UnwrapExpr<Expr<T>>(expr.value())}; in MakeSpecific()
2003 if (auto *dtExpr{UnwrapExpr<Expr<SomeDerived>>(*base)}) { in AnalyzeProcedureComponentRef()
2056 const auto *expr{actual.UnwrapExpr()}; in CheckCompatibleArgument()
2160 return IsBareNullPointer(iter->UnwrapExpr()); in ResolveGeneric()
3459 const auto *lhs{actuals_.at(0).value().UnwrapExpr()}; in CheckConformance()
3460 const auto *rhs{actuals_.at(1).value().UnwrapExpr()}; in CheckConformance()
[all …]

12