Lines Matching refs:SVal
128 ProgramStateRef state, SVal V, QualType Ty);
132 SVal strLength);
133 static SVal getCStringLengthForRegion(CheckerContext &C,
138 SVal getCStringLength(CheckerContext &C,
141 SVal Buf,
147 SVal val) const;
151 const Expr *Ex, SVal V,
162 SVal l) const;
166 SVal l,
213 REGISTER_MAP_WITH_PROGRAMSTATE(CStringLength, const MemRegion *, SVal) in REGISTER_MAP_WITH_PROGRAMSTATE() argument
220 CStringChecker::assumeZero(CheckerContext &C, ProgramStateRef state, SVal V, in REGISTER_MAP_WITH_PROGRAMSTATE()
233 const Expr *S, SVal l) const { in checkNonNull()
277 const Expr *S, SVal l, in CheckLocation()
298 SVal Extent = in CheckLocation()
369 SVal BufVal = state->getSVal(FirstBuf, LCtx); in CheckBufferAccess()
381 SVal LengthVal = state->getSVal(Size, LCtx); in CheckBufferAccess()
392 SVal BufStart = svalBuilder.evalCast(BufVal, PtrTy, FirstBuf->getType()); in CheckBufferAccess()
396 SVal BufEnd = svalBuilder.evalBinOpLN(state, BO_Add, *BufLoc, in CheckBufferAccess()
416 SVal BufEnd = svalBuilder.evalBinOpLN(state, BO_Add, *BufLoc, in CheckBufferAccess()
446 SVal firstVal = state->getSVal(First, LCtx); in CheckOverlap()
447 SVal secondVal = state->getSVal(Second, LCtx); in CheckOverlap()
474 SVal reverse = svalBuilder.evalBinOpLL(state, BO_GT, in CheckOverlap()
496 SVal LengthVal = state->getSVal(Size, LCtx); in CheckOverlap()
505 SVal FirstStart = svalBuilder.evalCast(*firstLoc, CharPtrTy, in CheckOverlap()
512 SVal FirstEnd = svalBuilder.evalBinOpLN(state, BO_Add, in CheckOverlap()
519 SVal Overlap = svalBuilder.evalBinOpLL(state, BO_GT, in CheckOverlap()
577 SVal maxMinusRight; in checkAdditionOverflow()
592 SVal willOverflow = svalBuilder.evalBinOpNN(state, BO_GT, left, in checkAdditionOverflow()
634 SVal strLength) { in setCStringLength()
672 SVal CStringChecker::getCStringLengthForRegion(CheckerContext &C, in getCStringLengthForRegion()
679 const SVal *Recorded = state->get<CStringLength>(MR); in getCStringLengthForRegion()
687 SVal strLength = svalBuilder.getMetadataSymbolVal(CStringChecker::getTag(), in getCStringLengthForRegion()
700 SVal evalLength = svalBuilder.evalBinOpNN(state, BO_LE, *strLn, in getCStringLengthForRegion()
710 SVal CStringChecker::getCStringLength(CheckerContext &C, ProgramStateRef &state, in getCStringLength()
711 const Expr *Ex, SVal Buf, in getCStringLength()
811 ProgramStateRef &state, const Expr *expr, SVal val) const { in getCStringLiteral()
845 SVal BufVal = state->getSVal(FirstBuf, LCtx); in IsFirstBufInBound()
847 SVal LengthVal = state->getSVal(Size, LCtx); in IsFirstBufInBound()
859 SVal BufStart = svalBuilder.evalCast(BufVal, PtrTy, FirstBuf->getType()); in IsFirstBufInBound()
864 SVal BufEnd = in IsFirstBufInBound()
881 SVal Extent = in IsFirstBufInBound()
895 const Expr *E, SVal V, in InvalidateBuffer()
1001 SVal sizeVal = state->getSVal(Size, LCtx); in evalCopyCommon()
1009 SVal destVal = state->getSVal(Dest, LCtx); in evalCopyCommon()
1030 SVal srcVal = state->getSVal(Source, LCtx); in evalCopyCommon()
1062 SVal lastElement = C.getSValBuilder().evalBinOpLN(state, BO_Add, in evalCopyCommon()
1072 SVal result = C.getSValBuilder().conjureSymbolVal(nullptr, CE, LCtx, in evalCopyCommon()
1163 SVal sizeVal = state->getSVal(Size, LCtx); in evalMemcmp()
1214 SVal CmpV = svalBuilder.conjureSymbolVal(nullptr, CE, LCtx, in evalMemcmp()
1249 SVal maxlenVal = state->getSVal(maxlenExpr, LCtx); in evalstrLengthCommon()
1258 SVal zero = C.getSValBuilder().makeZeroVal(CE->getType()); in evalstrLengthCommon()
1273 SVal ArgVal = state->getSVal(Arg, LCtx); in evalstrLengthCommon()
1280 SVal strLength = getCStringLength(C, state, Arg, ArgVal); in evalstrLengthCommon()
1297 SVal maxlenVal = state->getSVal(maxlenExpr, LCtx); in evalstrLengthCommon()
1424 SVal DstVal = state->getSVal(Dst, LCtx); in evalStrcpyCommon()
1432 SVal srcVal = state->getSVal(srcExpr, LCtx); in evalStrcpyCommon()
1438 SVal strLength = getCStringLength(C, state, srcExpr, srcVal); in evalStrcpyCommon()
1451 SVal amountCopied = UnknownVal(); in evalStrcpyCommon()
1452 SVal maxLastElementIndex = UnknownVal(); in evalStrcpyCommon()
1459 SVal lenVal = state->getSVal(lenExpr, LCtx); in evalStrcpyCommon()
1500 SVal dstStrLength = getCStringLength(C, state, Dst, DstVal); in evalStrcpyCommon()
1556 SVal copiedLessThanBound = svalBuilder.evalBinOpNN(state, BO_LE, in evalStrcpyCommon()
1568 SVal copiedLessThanSrc = svalBuilder.evalBinOpNN(state, BO_LE, in evalStrcpyCommon()
1591 SVal finalStrLength = UnknownVal(); in evalStrcpyCommon()
1599 SVal dstStrLength = getCStringLength(C, state, Dst, DstVal); in evalStrcpyCommon()
1628 SVal sourceInResult = svalBuilder.evalBinOpNN(state, BO_GE, in evalStrcpyCommon()
1640 SVal destInResult = svalBuilder.evalBinOpNN(state, BO_GE, in evalStrcpyCommon()
1660 SVal Result = (returnEnd ? UnknownVal() : DstVal); in evalStrcpyCommon()
1674 SVal maxLastElement = svalBuilder.evalBinOpLN(state, BO_Add, *dstRegVal, in evalStrcpyCommon()
1685 SVal lastElement = svalBuilder.evalBinOpLN(state, BO_Add, *dstRegVal, in evalStrcpyCommon()
1784 SVal s1Val = state->getSVal(s1, LCtx); in evalStrcmpCommon()
1791 SVal s2Val = state->getSVal(s2, LCtx); in evalStrcmpCommon()
1797 SVal s1Length = getCStringLength(C, state, s1, s1Val); in evalStrcmpCommon()
1802 SVal s2Length = getCStringLength(C, state, s2, s2Val); in evalStrcmpCommon()
1840 SVal resultVal = svalBuilder.conjureSymbolVal(nullptr, CE, LCtx, in evalStrcmpCommon()
1850 SVal lenVal = state->getSVal(lenExpr, LCtx); in evalStrcmpCommon()
1888 SVal compareWithZero = in evalStrcmpCommon()
1921 SVal SearchStrVal = State->getSVal(SearchStrPtr, LCtx); in evalStrsep()
1928 SVal DelimStrVal = State->getSVal(DelimStr, LCtx); in evalStrsep()
1934 SVal Result; in evalStrsep()
1986 SVal DstVal = State->getSVal(Dst, LCtx); in evalStdCopyCommon()
1992 SVal ResultVal = SVB.conjureSymbolVal(nullptr, CE, LCtx, C.blockCount()); in evalStdCopyCommon()
2104 SVal StrVal = state->getSVal(Init, C.getLocationContext()); in checkPreStmt()
2180 SVal Len = I.getData(); in checkLiveSymbols()
2201 SVal Len = I.getData(); in checkDeadSymbols()