Lines Matching refs:ParameterStatus
75 class ParameterStatus { class
170 constexpr ParameterStatus() = default;
171 /* implicit */ ParameterStatus(Kind K) : StatusKind(K) { in ParameterStatus() function in __anon4ef948f50111::ParameterStatus
174 ParameterStatus(Kind K, const Expr *Call) : StatusKind(K), Call(Call) { in ParameterStatus() function in __anon4ef948f50111::ParameterStatus
192 void join(const ParameterStatus &Other) { in join()
205 bool operator==(const ParameterStatus &Other) const { in operator ==()
221 State(unsigned Size, ParameterStatus::Kind K = ParameterStatus::NotVisited) in State()
226 ParameterStatus &getStatusFor(unsigned Index) { return ParamData[Index]; } in getStatusFor()
227 const ParameterStatus &getStatusFor(unsigned Index) const { in getStatusFor()
243 ParameterStatus::Kind getKindFor(unsigned Index) const { in getKindFor()
248 return llvm::all_of(ParamData, [](const ParameterStatus &S) { in isVisited()
249 return S.getKind() != ParameterStatus::NotVisited; in isVisited()
262 using iterator = ParamSizedVector<ParameterStatus>::iterator;
263 using const_iterator = ParamSizedVector<ParameterStatus>::const_iterator;
276 ParamSizedVector<ParameterStatus> ParamData;
717 assignState(Exit, State(size(), ParameterStatus::NotCalled)); in check()
778 case ParameterStatus::NotCalled: in checkEntry()
800 case ParameterStatus::MaybeCalled: in checkEntry()
858 BlockState.getKindFor(Index) == ParameterStatus::MaybeCalled) { in checkEntry()
905 ParameterStatus &CurrentParamStatus = CurrentState.getStatusFor(Index); in processCallFor()
916 CurrentParamStatus.getKind() == ParameterStatus::DefinitelyCalled); in processCallFor()
920 CurrentParamStatus = ParameterStatus::Reported; in processCallFor()
922 } else if (CurrentParamStatus.getKind() != ParameterStatus::Reported) { in processCallFor()
925 ParameterStatus Called(ParameterStatus::DefinitelyCalled, Call); in processCallFor()
932 ParameterStatus &CurrentParamStatus = CurrentState.getStatusFor(Index); in processEscapeFor()
936 CurrentParamStatus.getKind() != ParameterStatus::Kind::Reported) { in processEscapeFor()
937 CurrentParamStatus = ParameterStatus::Escaped; in processEscapeFor()
947 if (getState(Succ).getKindFor(Index) == ParameterStatus::NotCalled) { in findAndReportNotCalledBranches()
1293 return StateForOneBB.getKindFor(Index) == ParameterStatus::Escaped; in hasEverEscaped()
1369 ParameterStatus &CurrentStatus = ToAlter.getStatusFor(*Index); in handleParameterCheck()
1381 const ParameterStatus &StatusInSucc = in handleParameterCheck()
1391 if (StatusInSucc.getKind() == ParameterStatus::DefinitelyCalled) { in handleParameterCheck()
1419 ParameterStatus &CurrentStatus = IndexedStatus.value(); in handleConventionalCheck()
1430 CurrentStatus = ParameterStatus::Escaped; in handleConventionalCheck()
1440 ParameterStatus::MaybeCalled, in isLosingCall()
1441 ParameterStatus::DefinitelyCalled); in isLosingCall()
1448 ParameterStatus::NotCalled, ParameterStatus::Escaped); in isLosingEscape()
1452 unsigned ParameterIndex, ParameterStatus::Kind AfterJoin, in isLosingJoin()
1453 ParameterStatus::Kind BeforeJoin) const { in isLosingJoin()
1454 assert(!ParameterStatus::isErrorStatus(BeforeJoin) && in isLosingJoin()
1455 ParameterStatus::isErrorStatus(AfterJoin) && in isLosingJoin()
1459 const ParameterStatus &CurrentStatus = in isLosingJoin()
1469 ParameterStatus::Kind ToFind) const { in anySuccessorHasStatus()
1492 for (ParameterStatus &PS : CurrentState) { in markNoReturn()
1493 PS = ParameterStatus::NoReturn; in markNoReturn()
1510 ParameterStatus &CurrentParamStatus = CurrentState.getStatusFor(*Index); in checkSuppression()
1521 CurrentParamStatus = ParameterStatus::Reported; in checkSuppression()