Lines Matching full:state

56     ProgramStateRef state = (*it)->getState();  in VisitBinaryOperator()  local
58 SVal LeftV = state->getSVal(LHS, LCtx); in VisitBinaryOperator()
59 SVal RightV = state->getSVal(RHS, LCtx); in VisitBinaryOperator()
74 evalStore(Tmp2, B, LHS, *it, state->BindExpr(B, LCtx, ExprVal), in VisitBinaryOperator()
96 state = createTemporaryRegionIfNeeded(state, LCtx, LHS); in VisitBinaryOperator()
100 SVal Result = evalBinOp(state, Op, LeftV, RightV, B->getType()); in VisitBinaryOperator()
102 state = state->BindExpr(B, LCtx, Result); in VisitBinaryOperator()
105 state = escapeValues(state, LeftV, PSK_EscapeOther); in VisitBinaryOperator()
106 state = escapeValues(state, RightV, PSK_EscapeOther); in VisitBinaryOperator()
109 Bldr.generateNode(B, *it, state); in VisitBinaryOperator()
134 evalLoad(Tmp, B, LHS, *it, state, location); in VisitBinaryOperator()
137 state = N->getState(); in VisitBinaryOperator()
139 SVal V = state->getSVal(LHS, LCtx); in VisitBinaryOperator()
156 SVal Result = svalBuilder.evalCast(evalBinOp(state, Op, V, RightV, CTy), in VisitBinaryOperator()
181 state = state->BindExpr(B, LCtx, location); in VisitBinaryOperator()
183 state = state->BindExpr(B, LCtx, Result); in VisitBinaryOperator()
185 evalStore(Tmp2, B, LHS, N, state, location, LHSVal); in VisitBinaryOperator()
204 ProgramStateRef State = Pred->getState(); in VisitBlockExpr() local
235 originalV = State->getSVal(copyExpr, LCtx); in VisitBlockExpr()
237 originalV = State->getSVal(loc::MemRegionVal(originalR)); in VisitBlockExpr()
239 State = State->bindLoc(loc::MemRegionVal(capturedR), originalV, LCtx); in VisitBlockExpr()
247 State->BindExpr(BE, Pred->getLocationContext(), V), in VisitBlockExpr()
255 ProgramStateRef state, const Expr* Ex, const LocationContext* LCtx, in handleLValueBitCast() argument
266 SVal OrigV = state->getSVal(Ex, LCtx); in handleLValueBitCast()
267 SVal SimplifiedOrigV = svalBuilder.simplifySVal(state, OrigV); in handleLValueBitCast()
273 state = state->BindExpr(CastE, LCtx, V); in handleLValueBitCast()
275 state = escapeValues(state, OrigV, PSK_EscapeOther); in handleLValueBitCast()
277 Bldr.generateNode(CastE, Pred, state); in handleLValueBitCast()
279 return state; in handleLValueBitCast()
291 ProgramStateRef state = subExprNode->getState(); in VisitCast() local
293 evalLoad(Dst, CastE, CastE, subExprNode, state, state->getSVal(Ex, LCtx)); in VisitCast()
307 ProgramStateRef state = Pred->getState(); in VisitCast() local
336 ProgramStateRef state = Pred->getState(); in VisitCast() local
338 SVal V = state->getSVal(Ex, LCtx); in VisitCast()
339 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
340 Bldr.generateNode(CastE, Pred, state); in VisitCast()
345 SVal V = state->getSVal(Ex, LCtx); in VisitCast()
350 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
351 Bldr.generateNode(CastE, Pred, state); in VisitCast()
355 state = in VisitCast()
356 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
366 SVal V = state->getSVal(Ex, LCtx); in VisitCast()
368 state = state->BindExpr(CastE, LCtx, UnknownVal()); in VisitCast()
369 Bldr.generateNode(CastE, Pred, state); in VisitCast()
373 state = in VisitCast()
374 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
405 state = in VisitCast()
406 handleLValueBitCast(state, Ex, LCtx, T, ExTy, CastE, Bldr, Pred); in VisitCast()
411 SVal V = state->getSVal(Ex, LCtx); in VisitCast()
415 V = svalBuilder.evalIntegralCast(state, V, T, ExTy); in VisitCast()
416 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
417 Bldr.generateNode(CastE, Pred, state); in VisitCast()
423 SVal val = state->getSVal(Ex, LCtx); in VisitCast()
425 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
426 Bldr.generateNode(CastE, Pred, state); in VisitCast()
431 SVal val = state->getSVal(Ex, LCtx); in VisitCast()
452 Bldr.generateSink(CastE, Pred, state); in VisitCast()
456 state = state->BindExpr(CastE, LCtx, in VisitCast()
465 state = state->BindExpr(CastE, LCtx, NewSym); in VisitCast()
468 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
470 Bldr.generateNode(CastE, Pred, state); in VisitCast()
474 SVal val = state->getSVal(Ex, LCtx); in VisitCast()
490 state = state->BindExpr(CastE, LCtx, val); in VisitCast()
491 Bldr.generateNode(CastE, Pred, state); in VisitCast()
496 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
497 Bldr.generateNode(CastE, Pred, state); in VisitCast()
502 state = state->BindExpr(CastE, LCtx, V); in VisitCast()
503 Bldr.generateNode(CastE, Pred, state); in VisitCast()
509 SVal V = state->getSVal(Ex, LCtx); in VisitCast()
514 state = state->BindExpr(CastE, LCtx, CastedPTMSV); in VisitCast()
515 Bldr.generateNode(CastE, Pred, state); in VisitCast()
532 state = state->BindExpr(CastE, LCtx, result); in VisitCast()
533 Bldr.generateNode(CastE, Pred, state); in VisitCast()
545 ProgramStateRef State = Pred->getState(); in VisitCompoundLiteralExpr() local
549 SVal V = State->getSVal(CL->getInitializer(), LCtx); in VisitCompoundLiteralExpr()
555 Loc CLLoc = State->getLValue(CL, LCtx); in VisitCompoundLiteralExpr()
556 State = State->bindLoc(CLLoc, V, LCtx); in VisitCompoundLiteralExpr()
562 B.generateNode(CL, Pred, State->BindExpr(CL, LCtx, V)); in VisitCompoundLiteralExpr()
597 ProgramStateRef state = N->getState(); in VisitDeclStmt() local
603 // Note in the state that the initialization has occurred. in VisitDeclStmt()
605 SVal InitVal = state->getSVal(InitEx, LC); in VisitDeclStmt()
608 if (getObjectUnderConstruction(state, DS, LC)) { in VisitDeclStmt()
609 state = finishObjectConstruction(state, DS, LC); in VisitDeclStmt()
612 B.generateNode(DS, UpdatedN, state); in VisitDeclStmt()
629 evalBind(Dst2, DS, UpdatedN, state->getLValue(VD, LC), InitVal, true); in VisitDeclStmt()
634 B.generateNode(DS, N, state); in VisitDeclStmt()
645 // It doesn't produce any state splits. in VisitLogicalExpr()
662 ProgramStateRef state = Pred->getState(); in VisitLogicalExpr() local
670 Bldr.generateNode(B, Pred, state); in VisitLogicalExpr()
681 Bldr.generateNode(B, Pred, state); in VisitLogicalExpr()
689 Bldr.generateNode(B, Pred, state); in VisitLogicalExpr()
732 Bldr.generateNode(B, Pred, state->BindExpr(B, Pred->getLocationContext(), X)); in VisitLogicalExpr()
740 ProgramStateRef state = Pred->getState(); in VisitInitListExpr() local
754 B.generateNode(IE, Pred, state->BindExpr(IE, LCtx, V)); in VisitInitListExpr()
759 SVal V = state->getSVal(cast<Expr>(S), LCtx); in VisitInitListExpr()
764 state->BindExpr(IE, LCtx, in VisitInitListExpr()
778 V = state->getSVal(IE->getInit(0), LCtx); in VisitInitListExpr()
780 B.generateNode(IE, Pred, state->BindExpr(IE, LCtx, V)); in VisitInitListExpr()
791 ProgramStateRef state = Pred->getState(); in VisitGuardedExpr() local
796 ProgramStateRef SrcState = state; in VisitGuardedExpr()
800 // If the state N has multiple predecessors P, it means that successors in VisitGuardedExpr()
844 B.generateNode(Ex, Pred, state->BindExpr(Ex, LCtx, V, true)); in VisitGuardedExpr()
898 ProgramStateRef state = N->getState(); in VisitUnaryExprOrTypeTraitExpr() local
899 state = state->BindExpr( in VisitUnaryExprOrTypeTraitExpr()
902 Bldr.generateNode(Ex, N, state); in VisitUnaryExprOrTypeTraitExpr()
918 ProgramStateRef state = N->getState(); in handleUOExtension() local
920 Bldr.generateNode(U, N, state->BindExpr(U, LCtx, state->getSVal(Ex, LCtx))); in handleUOExtension()
952 ProgramStateRef state = N->getState(); in VisitUnaryOperator() local
955 state->BindExpr(U, LCtx, state->getSVal(Ex, LCtx))); in VisitUnaryOperator()
967 ProgramStateRef state = N->getState(); in VisitUnaryOperator() local
970 Bldr.generateNode(U, N, state->BindExpr(U, LCtx, X)); in VisitUnaryOperator()
981 ProgramStateRef State = N->getState(); in VisitUnaryOperator() local
984 Bldr.generateNode(U, N, State->BindExpr(U, LCtx, SV)); in VisitUnaryOperator()
1006 ProgramStateRef state = N->getState(); in VisitUnaryOperator() local
1010 SVal V = state->getSVal(Ex, LCtx); in VisitUnaryOperator()
1013 Bldr.generateNode(U, N, state->BindExpr(U, LCtx, V)); in VisitUnaryOperator()
1022 state = state->BindExpr( in VisitUnaryOperator()
1027 state = state->BindExpr(U, LCtx, in VisitUnaryOperator()
1038 Result = evalBinOp(state, BO_EQ, *LV, X, U->getType()); in VisitUnaryOperator()
1044 Result = evalBinOp(state, BO_EQ, V.castAs<NonLoc>(), X, U->getType()); in VisitUnaryOperator()
1047 state = state->BindExpr(U, LCtx, Result); in VisitUnaryOperator()
1050 Bldr.generateNode(U, N, state); in VisitUnaryOperator()
1067 ProgramStateRef state = Pred->getState(); in VisitIncrementDecrementOperator() local
1068 SVal loc = state->getSVal(Ex, LCtx); in VisitIncrementDecrementOperator()
1072 evalLoad(Tmp, U, Ex, Pred, state, loc); in VisitIncrementDecrementOperator()
1077 state = N->getState(); in VisitIncrementDecrementOperator()
1079 SVal V2_untested = state->getSVal(Ex, LCtx); in VisitIncrementDecrementOperator()
1083 state = state->BindExpr(U, LCtx, V2_untested); in VisitIncrementDecrementOperator()
1088 evalStore(Dst3, U, Ex, N, state, loc, V2_untested); in VisitIncrementDecrementOperator()
1118 Result = evalBinOp(state, Op, V2, RHS, U->getType()); in VisitIncrementDecrementOperator()
1132 svalBuilder.evalEQ(state, V2,svalBuilder.makeZeroVal(U->getType())); in VisitIncrementDecrementOperator()
1134 if (!state->assume(Constraint, true)) { in VisitIncrementDecrementOperator()
1137 Constraint = svalBuilder.evalEQ(state, SymVal, in VisitIncrementDecrementOperator()
1140 state = state->assume(Constraint, false); in VisitIncrementDecrementOperator()
1141 assert(state); in VisitIncrementDecrementOperator()
1149 state = state->BindExpr(U, LCtx, loc); in VisitIncrementDecrementOperator()
1151 state = state->BindExpr(U, LCtx, U->isPostfix() ? V2 : Result); in VisitIncrementDecrementOperator()
1156 evalStore(Dst3, U, Ex, N, state, loc, Result); in VisitIncrementDecrementOperator()