Lines Matching refs:SVal
201 ProgramStateRef state, SVal V, QualType Ty);
205 SVal strLength);
206 static SVal getCStringLengthForRegion(CheckerContext &C,
211 SVal getCStringLength(CheckerContext &C,
214 SVal Buf,
220 SVal val) const;
224 const Expr *Ex, SVal V,
231 static bool memsetAux(const Expr *DstBuffer, SVal CharE,
237 AnyArgExpr Arg, SVal l) const;
239 AnyArgExpr Buffer, SVal Element,
276 REGISTER_MAP_WITH_PROGRAMSTATE(CStringLength, const MemRegion *, SVal) in REGISTER_MAP_WITH_PROGRAMSTATE() argument
283 CStringChecker::assumeZero(CheckerContext &C, ProgramStateRef state, SVal V, in REGISTER_MAP_WITH_PROGRAMSTATE()
296 AnyArgExpr Arg, SVal l) const { in checkNonNull()
327 AnyArgExpr Buffer, SVal Element, in CheckLocation()
391 SVal BufVal = C.getSVal(Buffer.Expression); in CheckBufferAccess()
403 SVal LengthVal = C.getSVal(Size.Expression); in CheckBufferAccess()
410 SVal Offset = svalBuilder.evalBinOpNN(State, BO_Sub, *Length, One, SizeTy); in CheckBufferAccess()
416 SVal BufStart = in CheckBufferAccess()
420 SVal BufEnd = in CheckBufferAccess()
453 SVal firstVal = state->getSVal(First.Expression, LCtx); in CheckOverlap()
454 SVal secondVal = state->getSVal(Second.Expression, LCtx); in CheckOverlap()
481 SVal reverse = in CheckOverlap()
503 SVal LengthVal = state->getSVal(Size.Expression, LCtx); in CheckOverlap()
512 SVal FirstStart = in CheckOverlap()
519 SVal FirstEnd = svalBuilder.evalBinOpLN(state, BO_Add, *FirstStartLoc, in CheckOverlap()
526 SVal Overlap = in CheckOverlap()
661 SVal maxMinusRight; in checkAdditionOverflow()
676 SVal willOverflow = svalBuilder.evalBinOpNN(state, BO_GT, left, in checkAdditionOverflow()
699 SVal strLength) { in setCStringLength()
738 SVal CStringChecker::getCStringLengthForRegion(CheckerContext &C, in getCStringLengthForRegion()
745 const SVal *Recorded = state->get<CStringLength>(MR); in getCStringLengthForRegion()
753 SVal strLength = svalBuilder.getMetadataSymbolVal(CStringChecker::getTag(), in getCStringLengthForRegion()
767 SVal evalLength = svalBuilder.evalBinOpNN(state, BO_LE, *strLn, in getCStringLengthForRegion()
777 SVal CStringChecker::getCStringLength(CheckerContext &C, ProgramStateRef &state, in getCStringLength()
778 const Expr *Ex, SVal Buf, in getCStringLength()
853 ProgramStateRef &state, const Expr *expr, SVal val) const { in getCStringLiteral()
887 SVal BufVal = state->getSVal(FirstBuf, LCtx); in IsFirstBufInBound()
889 SVal LengthVal = state->getSVal(Size, LCtx); in IsFirstBufInBound()
896 SVal Offset = svalBuilder.evalBinOpNN(state, BO_Sub, *Length, One, sizeTy); in IsFirstBufInBound()
902 SVal BufStart = svalBuilder.evalCast(BufVal, PtrTy, FirstBuf->getType()); in IsFirstBufInBound()
907 SVal BufEnd = in IsFirstBufInBound()
938 const Expr *E, SVal V, in InvalidateBuffer()
1035 bool CStringChecker::memsetAux(const Expr *DstBuffer, SVal CharVal, in memsetAux()
1038 SVal MemVal = C.getSVal(DstBuffer); in memsetAux()
1039 SVal SizeVal = C.getSVal(Size); in memsetAux()
1100 SVal NewStrLen = svalBuilder.getMetadataSymbolVal( in memsetAux()
1106 SVal NewStrLenGESize = svalBuilder.evalBinOp( in memsetAux()
1135 SVal sizeVal = state->getSVal(Size.Expression, LCtx); in evalCopyCommon()
1143 SVal destVal = state->getSVal(Dest.Expression, LCtx); in evalCopyCommon()
1164 SVal srcVal = state->getSVal(Source.Expression, LCtx); in evalCopyCommon()
1189 SVal DestRegCharVal = in evalCopyCommon()
1191 SVal lastElement = C.getSValBuilder().evalBinOp( in evalCopyCommon()
1289 SVal sizeVal = State->getSVal(Size.Expression, LCtx); in evalMemcmp()
1340 SVal CmpV = Builder.conjureSymbolVal(nullptr, CE, LCtx, C.blockCount()); in evalMemcmp()
1367 SVal maxlenVal = state->getSVal(maxlenExpr, LCtx); in evalstrLengthCommon()
1376 SVal zero = C.getSValBuilder().makeZeroVal(CE->getType()); in evalstrLengthCommon()
1391 SVal ArgVal = state->getSVal(Arg.Expression, LCtx); in evalstrLengthCommon()
1397 SVal strLength = getCStringLength(C, state, Arg.Expression, ArgVal); in evalstrLengthCommon()
1414 SVal maxlenVal = state->getSVal(maxlenExpr, LCtx); in evalstrLengthCommon()
1551 SVal DstVal = state->getSVal(Dst.Expression, LCtx); in evalStrcpyCommon()
1558 SVal srcVal = state->getSVal(srcExpr.Expression, LCtx); in evalStrcpyCommon()
1564 SVal strLength = getCStringLength(C, state, srcExpr.Expression, srcVal); in evalStrcpyCommon()
1568 SVal dstStrLength = getCStringLength(C, state, Dst.Expression, DstVal); in evalStrcpyCommon()
1582 SVal amountCopied = UnknownVal(); in evalStrcpyCommon()
1583 SVal maxLastElementIndex = UnknownVal(); in evalStrcpyCommon()
1601 SVal lenVal = state->getSVal(lenExpr.Expression, LCtx); in evalStrcpyCommon()
1642 SVal freeSpace = svalBuilder.evalBinOpNN(state, BO_Sub, *lenValNL, in evalStrcpyCommon()
1655 SVal hasEnoughSpace = svalBuilder.evalBinOpNN( in evalStrcpyCommon()
1721 SVal retSize = svalBuilder.evalBinOp( in evalStrcpyCommon()
1752 SVal finalStrLength = UnknownVal(); in evalStrcpyCommon()
1753 SVal strlRetVal = UnknownVal(); in evalStrcpyCommon()
1799 SVal sourceInResult = svalBuilder.evalBinOpNN( in evalStrcpyCommon()
1810 SVal destInResult = svalBuilder.evalBinOpNN(state, BO_GE, in evalStrcpyCommon()
1828 SVal Result; in evalStrcpyCommon()
1853 SVal maxLastElement = in evalStrcpyCommon()
1863 SVal lastElement = svalBuilder.evalBinOpLN(state, BO_Add, *dstRegVal, in evalStrcpyCommon()
1949 SVal LeftVal = state->getSVal(Left.Expression, LCtx); in evalStrcmpCommon()
1956 SVal RightVal = state->getSVal(Right.Expression, LCtx); in evalStrcmpCommon()
1962 SVal LeftLength = getCStringLength(C, state, Left.Expression, LeftVal); in evalStrcmpCommon()
1967 SVal RightLength = getCStringLength(C, state, Right.Expression, RightVal); in evalStrcmpCommon()
2007 SVal resultVal = svalBuilder.conjureSymbolVal(nullptr, CE, LCtx, in evalStrcmpCommon()
2017 SVal lenVal = state->getSVal(lenExpr, LCtx); in evalStrcmpCommon()
2055 SVal compareWithZero = in evalStrcmpCommon()
2086 SVal SearchStrVal = State->getSVal(SearchStrPtr.Expression, LCtx); in evalStrsep()
2093 SVal DelimStrVal = State->getSVal(DelimStr.Expression, LCtx); in evalStrsep()
2099 SVal Result; in evalStrsep()
2155 SVal DstVal = State->getSVal(Dst, LCtx); in evalStdCopyCommon()
2161 SVal ResultVal = SVB.conjureSymbolVal(nullptr, CE, LCtx, C.blockCount()); in evalStdCopyCommon()
2179 SVal SizeVal = C.getSVal(Size.Expression); in evalMemset()
2186 SVal BufferPtrVal = C.getSVal(Buffer.Expression); in evalMemset()
2222 SVal Zero = C.getSValBuilder().makeZeroVal(C.getASTContext().IntTy); in evalBzero()
2227 SVal SizeVal = C.getSVal(Size.Expression); in evalBzero()
2242 SVal MemVal = C.getSVal(Buffer.Expression); in evalBzero()
2341 SVal StrVal = C.getSVal(Init); in checkPreStmt()
2413 SVal Len = I.getData(); in checkLiveSymbols()
2431 SVal Len = I.getData(); in checkDeadSymbols()