Home
last modified time | relevance | path

Searched refs:SVB (Results 1 – 25 of 39) sorted by relevance

12

/src/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/
H A DDynamicExtent.cpp29 const MemRegion *MR, SValBuilder &SVB) { in getDynamicExtent() argument
34 SVB.convertToArrayIndex(*Size).getAs<DefinedOrUnknownSVal>()) in getDynamicExtent()
37 return MR->getMemRegionManager().getStaticSize(MR, SVB); in getDynamicExtent()
40 DefinedOrUnknownSVal getElementExtent(QualType Ty, SValBuilder &SVB) { in getElementExtent() argument
41 return SVB.makeIntVal(SVB.getContext().getTypeSizeInChars(Ty).getQuantity(), in getElementExtent()
42 SVB.getArrayIndexType()); in getElementExtent()
45 static DefinedOrUnknownSVal getConstantArrayElementCount(SValBuilder &SVB, in getConstantArrayElementCount() argument
54 SVB.getContext().getAsConstantArrayType(TVR->getValueType())) in getConstantArrayElementCount()
55 return SVB.makeIntVal(CAT->getSize(), /* isUnsigned = */ false); in getConstantArrayElementCount()
63 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in getDynamicElementCount() local
[all …]
H A DSimpleSValBuilder.cpp236 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in isInRelation() local
238 SVB.evalBinOpNN(State, Rel, nonloc::SymbolVal(Sym), in isInRelation()
239 nonloc::ConcreteInt(Bound), SVB.getConditionType()); in isInRelation()
253 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in isWithinConstantOverflowBounds() local
254 BasicValueFactory &BV = SVB.getBasicValueFactory(); in isWithinConstantOverflowBounds()
296 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in doRearrangeUnchecked() local
297 BasicValueFactory &BV = SVB.getBasicValueFactory(); in doRearrangeUnchecked()
298 SymbolManager &SymMgr = SVB.getSymbolManager(); in doRearrangeUnchecked()
310 ResultTy = SVB.getConditionType(); in doRearrangeUnchecked()
317 return SVB.evalBinOpNN(State, Op, nonloc::ConcreteInt(LInt), in doRearrangeUnchecked()
[all …]
H A DCallEvent.cpp401 const ParmVarDecl *Parameter, SValBuilder &SVB) { in processArgument() argument
417 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in processArgument()
423 return SVB.makeCompoundVal(ParamType, CompoundSVals); in processArgument()
436 SVal ArgVal, SValBuilder &SVB) { in castArgToParamTypeIfNeeded() argument
458 return SVB.evalCast(ArgVal, Param->getType(), ArgExpr->getType()); in castArgToParamTypeIfNeeded()
463 SValBuilder &SVB, in addParameterValuesToBindings() argument
466 MemRegionManager &MRMgr = SVB.getRegionManager(); in addParameterValuesToBindings()
492 ArgVal = castArgToParamTypeIfNeeded(Call, Idx, ArgVal, SVB); in addParameterValuesToBindings()
494 Loc ParamLoc = SVB.makeLoc( in addParameterValuesToBindings()
497 std::make_pair(ParamLoc, processArgument(ArgVal, ArgExpr, *I, SVB))); in addParameterValuesToBindings()
[all …]
H A DSimpleConstraintManager.cpp31 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in assumeInternal() local
37 T = SVB.getContext().VoidPtrTy; in assumeInternal()
39 Cond = SVB.evalCast(*LV, SVB.getContext().BoolTy, T).castAs<DefinedSVal>(); in assumeInternal()
H A DExprEngineCXX.cpp102 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in makeElementRegion() local
103 ASTContext &Ctx = SVB.getContext(); in makeElementRegion()
110 LValue = State->getLValue(Ty, SVB.makeArrayIndex(Idx), LValue); in makeElementRegion()
126 SValBuilder &SVB = getSValBuilder(); in computeObjectUnderConstruction() local
127 MemRegionManager &MRMgr = SVB.getRegionManager(); in computeObjectUnderConstruction()
128 ASTContext &ACtx = SVB.getContext(); in computeObjectUnderConstruction()
147 Loc ThisPtr = SVB.getCXXThis(CurCtor, LCtx->getStackFrame()); in computeObjectUnderConstruction()
156 return SVB.makeLoc(BaseReg); in computeObjectUnderConstruction()
190 MR, SVB.getContext()); in computeObjectUnderConstruction()
246 return SVB.conjureSymbolVal(&TopLevelSymRegionTag, RetE, SFC, RegionTy, in computeObjectUnderConstruction()
H A DRangedConstraintManager.cpp236 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in simplifyToSVal() local
237 return SVB.simplifySVal(State, SVB.makeSymbolVal(Sym)); in simplifyToSVal()
/src/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/
H A DErrnoTesterChecker.cpp108 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoIfError() local
111 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoIfError()
115 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoIfError()
125 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoIfErrorRange() local
128 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoIfErrorRange()
132 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoIfErrorRange()
133 DefinedOrUnknownSVal ErrnoVal = SVB.conjureSymbolVal( in evalSetErrnoIfErrorRange()
147 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoCheckState() local
150 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoCheckState()
154 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoCheckState()
[all …]
H A DArrayBoundCheckerV2.cpp171 computeOffset(ProgramStateRef State, SValBuilder &SVB, SVal Location) { in computeOffset() argument
172 QualType T = SVB.getArrayIndexType(); in computeOffset()
173 auto EvalBinOp = [&SVB, State, T](BinaryOperatorKind Op, NonLoc L, NonLoc R) { in computeOffset()
175 return SVB.evalBinOpNN(State, Op, L, R, T).getAs<NonLoc>(); in computeOffset()
179 std::optional<NonLoc> Offset = SVB.makeZeroArrayIndex(); in computeOffset()
198 NonLoc Size = SVB.makeArrayIndex( in computeOffset()
199 SVB.getContext().getTypeSizeInChars(ElemType).getQuantity()); in computeOffset()
273 static bool isNegative(SValBuilder &SVB, ProgramStateRef State, NonLoc Value) { in isNegative() argument
274 const llvm::APSInt *MaxV = SVB.getMaxValue(State, Value); in isNegative()
278 static bool isUnsigned(SValBuilder &SVB, NonLoc Value) { in isUnsigned() argument
[all …]
H A DPointerSubChecker.cpp68 SValBuilder &SVB = C.getSValBuilder(); in checkArrayBounds() local
71 if (const llvm::APSInt *I = SVB.getKnownValue(State, ElemReg->getIndex()); in checkArrayBounds()
78 getDynamicElementCount(State, SuperReg, SVB, ElemReg->getElementType()); in checkArrayBounds()
79 auto IndexTooLarge = SVB.evalBinOp(C.getState(), BO_GT, ElemReg->getIndex(), in checkArrayBounds()
80 ElemCount, SVB.getConditionType()) in checkArrayBounds()
90 auto IndexTooSmall = SVB.evalBinOp(State, BO_LT, ElemReg->getIndex(), in checkArrayBounds()
91 SVB.makeZeroVal(SVB.getArrayIndexType()), in checkArrayBounds()
92 SVB.getConditionType()) in checkArrayBounds()
H A DVLASizeChecker.cpp96 SValBuilder &SVB = C.getSValBuilder(); in checkVLA() local
99 SVB.getBasicValueFactory().getMaxValue(SizeTy).getZExtValue(); in checkVLA()
104 SVB.makeIntVal(EleSize.getQuantity(), SizeTy).castAs<NonLoc>(); in checkVLA()
108 if (const llvm::APSInt *KV = SVB.getKnownValue(State, ArrSize)) in checkVLA()
115 SVB.evalCast(SizeD, SizeTy, SizeE->getType()).castAs<NonLoc>(); in checkVLA()
117 SVal Mul = SVB.evalBinOpNN(State, BO_Mul, ArrSize, IndexLength, SizeTy); in checkVLA()
124 if (const llvm::APSInt *IndexLVal = SVB.getKnownValue(State, IndexLength)) { in checkVLA()
182 SValBuilder &SVB = C.getSValBuilder(); in checkVLAIndexSize() local
185 DefinedOrUnknownSVal Zero = SVB.makeZeroVal(SizeTy); in checkVLAIndexSize()
188 SVB.evalBinOp(State, BO_LT, SizeD, Zero, SVB.getConditionType()); in checkVLAIndexSize()
[all …]
H A DIterator.cpp230 auto &SVB = State->getStateManager().getSValBuilder(); in advancePosition() local
249 Pos->setTo(SVB.evalBinOp(State, BinOp, in advancePosition()
265 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in assumeNoOverflow() local
266 BasicValueFactory &BV = SVB.getBasicValueFactory(); in assumeNoOverflow()
276 SVB.evalBinOpNN(State, BO_LE, nonloc::SymbolVal(Sym), in assumeNoOverflow()
277 nonloc::ConcreteInt(Max), SVB.getConditionType()); in assumeNoOverflow()
286 SVB.evalBinOpNN(State, BO_GE, nonloc::SymbolVal(Sym), in assumeNoOverflow()
287 nonloc::ConcreteInt(Min), SVB.getConditionType()); in assumeNoOverflow()
304 auto &SVB = State->getStateManager().getSValBuilder(); in compare() local
307 SVB.evalBinOp(State, Opc, NL1, NL2, SVB.getConditionType()); in compare()
H A DSTLAlgorithmModeling.cpp132 auto &SVB = C.getSValBuilder(); in Find() local
135 SVal RetVal = SVB.conjureSymbolVal(nullptr, CE, LCtx, C.blockCount()); in Find()
151 SVal GreaterOrEqual = SVB.evalBinOp(StateFound, BO_GE, in Find()
154 SVB.getConditionType()); in Find()
173 SVal Less = SVB.evalBinOp(StateFound, BO_LT, in Find()
176 SVB.getConditionType()); in Find()
H A DErrnoModeling.cpp115 SValBuilder &SVB = C.getSValBuilder(); in checkBeginFunction() local
126 const SymbolConjured *Sym = SVB.conjureSymbol( in checkBeginFunction()
133 ACtx.IntTy, SVB.makeZeroArrayIndex(), in checkBeginFunction()
246 SValBuilder &SVB = C.getSValBuilder(); in setErrnoForStdFailure() local
247 NonLoc ZeroVal = SVB.makeZeroVal(C.getASTContext().IntTy).castAs<NonLoc>(); in setErrnoForStdFailure()
249 SVB.evalBinOp(State, BO_NE, ErrnoSym, ZeroVal, SVB.getConditionType()) in setErrnoForStdFailure()
H A DContainerModeling.cpp143 ProgramStateRef State, SValBuilder &SVB, SymbolRef OldSym,
145 SymbolRef rebaseSymbol(ProgramStateRef State, SValBuilder &SVB, SymbolRef Expr,
326 auto &SVB = C.getSValBuilder(); in handleAssignment() local
341 State, SVB, OldEndSym, NewEndSym, OldEndSym, BO_LT); in handleAssignment()
440 auto &SVB = C.getSValBuilder(); in handlePushBack() local
442 SVB.evalBinOp(State, BO_Add, in handlePushBack()
469 auto &SVB = C.getSValBuilder(); in handlePopBack() local
471 SVB.evalBinOp(State, BO_Sub, in handlePopBack()
514 auto &SVB = C.getSValBuilder(); in handlePushFront() local
516 SVB.evalBinOp(State, BO_Sub, in handlePushFront()
[all …]
H A DEnumCastOutOfRangeChecker.cpp40 SValBuilder &SVB; member in __anonfc3acb720111::ConstraintBasedEQEvaluator
45 : CompareValue(CompareValue), PS(C.getState()), SVB(C.getSValBuilder()) {} in ConstraintBasedEQEvaluator()
48 DefinedOrUnknownSVal EnumDeclValue = SVB.makeIntVal(EnumDeclInitValue); in operator ()()
50 SVB.evalEQ(PS, EnumDeclValue, CompareValue); in operator ()()
H A DBuiltinFunctionChecker.cpp130 SValBuilder &SVB = C.getSValBuilder(); in evalCall() local
136 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in evalCall()
138 V = SVB.makeIntVal(Result); in evalCall()
146 V = SVB.makeIntVal(0, CE->getType()); in evalCall()
H A DCXXSelfAssignmentChecker.cpp48 auto &SVB = C.getSValBuilder(); in checkBeginFunction() local
50 State->getSVal(SVB.getCXXThis(MD, LCtx->getStackFrame())); in checkBeginFunction()
51 auto Param = SVB.makeLoc(State->getRegion(MD->getParamDecl(0), LCtx)); in checkBeginFunction()
H A DBitwiseShiftChecker.cpp140 SValBuilder &SVB = Ctx.getSValBuilder(); in assumeRequirement() local
143 const auto LimitVal = SVB.makeIntVal(Limit, Ctx.getASTContext().IntTy); in assumeRequirement()
147 auto ResultVal = SVB.evalBinOp(FoldedState, Comparison, OperandVal, LimitVal, in assumeRequirement()
148 SVB.getConditionType()); in assumeRequirement()
179 SValBuilder &SVB = Ctx.getSValBuilder(); in checkOvershift() local
180 if (const llvm::APSInt *MinRight = SVB.getMinValue(FoldedState, Right)) { in checkOvershift()
H A DSetgidSetuidOrderChecker.cpp93 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in evalAssume() local
104 SVB.evalBinOpNN(State, BO_NE, nonloc::SymbolVal(LastSetuidSym), in evalAssume()
105 SVB.makeIntVal(0, /*isUnsigned=*/false), in evalAssume()
106 SVB.getConditionType()) in evalAssume()
H A DMIGChecker.cpp236 SValBuilder &SVB = C.getSValBuilder(); in mayBeSuccess() local
241 V = SVB.evalEQ(C.getState(), V, SVB.makeIntVal(MigNoReply, ACtx.IntTy)); in mayBeSuccess()
H A DVirtualCallChecker.cpp173 auto &SVB = C.getSValBuilder(); in registerCtorDtorCallInState() local
178 State->getSVal(SVB.getCXXThis(MD, LCtx->getStackFrame())); in registerCtorDtorCallInState()
192 State->getSVal(SVB.getCXXThis(MD, LCtx->getStackFrame())); in registerCtorDtorCallInState()
H A DTrustNonnullChecker.cpp217 SValBuilder &SVB = InputState->getStateManager().getSValBuilder(); in addImplication() local
224 SVal AntecedentV = SVB.makeSymbolVal(Antecedent); in addImplication()
229 SVal ConsequentS = SVB.makeSymbolVal(*Consequent); in addImplication()
/src/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
H A DSimpleConstraintManager.h25 SValBuilder &SVB; variable
29 : EE(exprengine), SVB(SB) {} in SimpleConstraintManager()
78 SValBuilder &getSValBuilder() const { return SVB; } in getSValBuilder()
79 BasicValueFactory &getBasicVals() const { return SVB.getBasicValueFactory(); } in getBasicVals()
80 SymbolManager &getSymbolManager() const { return SVB.getSymbolManager(); } in getSymbolManager()
H A DDynamicExtent.h27 const MemRegion *MR, SValBuilder &SVB);
30 DefinedOrUnknownSVal getElementExtent(QualType Ty, SValBuilder &SVB);
35 SValBuilder &SVB, QualType Ty);
39 DefinedOrUnknownSVal Extent, SValBuilder &SVB);
H A DSMTConstraintManager.h276 SValBuilder &SVB = getSValBuilder(); in REGISTER_TRAIT_WITH_PROGRAMSTATE() local
279 return canReasonAbout(SVB.makeSymbolVal(SC->getOperand())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()
283 return canReasonAbout(SVB.makeSymbolVal(SIE->getLHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()
286 return canReasonAbout(SVB.makeSymbolVal(ISE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()
289 return canReasonAbout(SVB.makeSymbolVal(SSE->getLHS())) && in REGISTER_TRAIT_WITH_PROGRAMSTATE()
290 canReasonAbout(SVB.makeSymbolVal(SSE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()

12