| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Core/ |
| H A D | DynamicExtent.cpp | 29 const MemRegion *MR, SValBuilder &SVB) { in getDynamicExtent() argument 35 return MR->getMemRegionManager().getStaticSize(MR, SVB); in getDynamicExtent() 38 DefinedOrUnknownSVal getElementExtent(QualType Ty, SValBuilder &SVB) { in getElementExtent() argument 39 return SVB.makeIntVal(SVB.getContext().getTypeSizeInChars(Ty).getQuantity(), in getElementExtent() 40 SVB.getArrayIndexType()); in getElementExtent() 45 SValBuilder &SVB, in getDynamicElementCount() argument 49 DefinedOrUnknownSVal Size = getDynamicExtent(State, MR, SVB); in getDynamicElementCount() 50 SVal ElementSize = getElementExtent(ElementTy, SVB); in getDynamicElementCount() 53 SVB.evalBinOp(State, BO_Div, Size, ElementSize, SVB.getArrayIndexType()); in getDynamicElementCount() 82 DefinedOrUnknownSVal Size, SValBuilder &SVB) { in setDynamicExtent() argument
|
| H A D | SimpleSValBuilder.cpp | 295 ResultTy = SVB.getConditionType(); in doRearrangeUnchecked() 355 SValBuilder &SVB = StateMgr.getSValBuilder(); in tryRearrange() local 372 if (ResultTy != SVB.getConditionType()) in tryRearrange() 720 return SVB.makeTruthVal(false, resultTy); in evalBinOpFieldRegionFieldRegion() 722 return SVB.makeTruthVal(true, resultTy); in evalBinOpFieldRegionFieldRegion() 1210 SValBuilder &SVB; in simplifySValOnce() member in SimpleSValBuilder::simplifySValOnce::Simplifier 1259 return SVB.makeSymbolVal(S); in simplifySValOnce() 1283 LHS = SVB.makeLoc(Sym); in simplifySValOnce() 1285 RHS = SVB.makeIntLocVal(S->getRHS()); in simplifySValOnce() 1287 RHS = SVB.makeIntVal(S->getRHS()); in simplifySValOnce() [all …]
|
| H A D | CallEvent.cpp | 415 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in processArgument() 432 MemRegionManager &MRMgr = SVB.getRegionManager(); in addParameterValuesToBindings() 453 Loc ParamLoc = SVB.makeLoc( in addParameterValuesToBindings() 760 SValBuilder &SVB = StateMgr.getSValBuilder(); in getInitialStackFrameContents() local 763 Loc ThisLoc = SVB.getCXXThis(MD, CalleeCtx); in getInitialStackFrameContents() 768 ASTContext &Ctx = SVB.getContext(); in getInitialStackFrameContents() 782 ThisVal = SVB.evalCast(ThisVal, Ty, StaticTy); in getInitialStackFrameContents() 880 Loc ThisLoc = SVB.getCXXThis(MD, CalleeCtx); in getInitialStackFrameContents() 1332 MemRegionManager &MRMgr = SVB.getRegionManager(); in getInitialStackFrameContents() 1374 Loc ThisPtr = SVB.getCXXThis(Ctor, CalleeCtx); in getCaller() [all …]
|
| H A D | SimpleConstraintManager.cpp | 30 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in assumeInternal() local 36 T = SVB.getContext().VoidPtrTy; in assumeInternal() 38 Cond = SVB.evalCast(*LV, SVB.getContext().BoolTy, T).castAs<DefinedSVal>(); in assumeInternal()
|
| H A D | ExprEngineCXX.cpp | 99 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in makeElementRegion() local 100 ASTContext &Ctx = SVB.getContext(); in makeElementRegion() 107 LValue = State->getLValue(Ty, SVB.makeArrayIndex(Idx), LValue); in makeElementRegion() 117 SValBuilder &SVB = getSValBuilder(); in computeObjectUnderConstruction() local 118 MemRegionManager &MRMgr = SVB.getRegionManager(); in computeObjectUnderConstruction() 119 ASTContext &ACtx = SVB.getContext(); in computeObjectUnderConstruction() 138 Loc ThisPtr = SVB.getCXXThis(CurCtor, LCtx->getStackFrame()); in computeObjectUnderConstruction() 147 return SVB.makeLoc(BaseReg); in computeObjectUnderConstruction() 180 SVB.getContext()); in computeObjectUnderConstruction() 233 return SVB.conjureSymbolVal(&TopLevelSymRegionTag, RetE, SFC, RegionTy, in computeObjectUnderConstruction()
|
| H A D | RangedConstraintManager.cpp | 236 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in simplifyToSVal() local 237 return SVB.simplifySVal(State, SVB.makeSymbolVal(Sym)); in simplifyToSVal()
|
| H A D | MemRegion.cpp | 737 SValBuilder &SVB) const { in getStaticSize() 739 SymbolManager &SymMgr = SVB.getSymbolManager(); in getStaticSize() 746 return SVB.makeIntVal( in getStaticSize() 748 SVB.getArrayIndexType()); in getStaticSize() 766 return getElementExtent(Ty, SVB); in getStaticSize() 774 const DefinedOrUnknownSVal Size = getElementExtent(Ty, SVB); in getStaticSize() 785 &SVB](QualType Ty) -> bool { in getStaticSize() 800 const AnalyzerOptions &Opts = SVB.getAnalyzerOptions(); in getStaticSize()
|
| H A D | RegionStore.cpp | 847 SValBuilder &SVB, const ClusterBindings &Cluster, in collectSubRegionBindings() argument 859 SVal Extent = Top->getMemRegionManager().getStaticSize(Top, SVB); in collectSubRegionBindings() 865 Length = ExtentInt.getLimitedValue() * SVB.getContext().getCharWidth(); in collectSubRegionBindings() 868 Length = FR->getDecl()->getBitWidthValue(SVB.getContext()); in collectSubRegionBindings() 919 SValBuilder &SVB, const ClusterBindings &Cluster, in collectSubRegionBindings() argument 921 collectSubRegionBindings(Bindings, SVB, Cluster, Top, in collectSubRegionBindings() 1541 getExistingLazyBinding(SValBuilder &SVB, RegionBindingsConstRef B, in getExistingLazyBinding() argument 1557 if (!SVB.getContext().hasSameUnqualifiedType(RegionTy, SourceRegionTy)) in getExistingLazyBinding() 1565 collectSubRegionBindings(Bindings, SVB, *B.lookup(R->getBaseRegion()), R, in getExistingLazyBinding() 1893 const TypedValueRegion *SubReg, const ASTContext &Ctx, SValBuilder &SVB) { in getDerivedSymbolForBinding() argument [all …]
|
| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | ErrnoTesterChecker.cpp | 105 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoIfError() local 108 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoIfError() 112 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoIfError() 122 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoIfErrorRange() local 125 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoIfErrorRange() 129 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoIfErrorRange() 130 DefinedOrUnknownSVal ErrnoVal = SVB.conjureSymbolVal( in evalSetErrnoIfErrorRange() 144 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoCheckState() local 147 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoCheckState() 151 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoCheckState() [all …]
|
| H A D | VLASizeChecker.cpp | 96 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() 189 SValBuilder &SVB = C.getSValBuilder(); in checkVLAIndexSize() local 192 DefinedOrUnknownSVal Zero = SVB.makeZeroVal(SizeTy); in checkVLAIndexSize() 194 SVal LessThanZeroVal = SVB.evalBinOp(State, BO_LT, SizeD, Zero, SizeTy); in checkVLAIndexSize() 256 SValBuilder &SVB = C.getSValBuilder(); in checkPreStmt() local [all …]
|
| H A D | Iterator.cpp | 232 auto &SVB = State->getStateManager().getSValBuilder(); in advancePosition() local 251 Pos->setTo(SVB.evalBinOp(State, BinOp, in advancePosition() 267 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in assumeNoOverflow() local 268 BasicValueFactory &BV = SVB.getBasicValueFactory(); in assumeNoOverflow() 278 SVB.evalBinOpNN(State, BO_LE, nonloc::SymbolVal(Sym), in assumeNoOverflow() 279 nonloc::ConcreteInt(Max), SVB.getConditionType()); in assumeNoOverflow() 288 SVB.evalBinOpNN(State, BO_GE, nonloc::SymbolVal(Sym), in assumeNoOverflow() 289 nonloc::ConcreteInt(Min), SVB.getConditionType()); in assumeNoOverflow() 306 auto &SVB = State->getStateManager().getSValBuilder(); in compare() local 309 SVB.evalBinOp(State, Opc, NL1, NL2, SVB.getConditionType()); in compare()
|
| H A D | STLAlgorithmModeling.cpp | 111 auto &SVB = C.getSValBuilder(); in Find() local 114 SVal RetVal = SVB.conjureSymbolVal(nullptr, CE, LCtx, C.blockCount()); in Find() 130 SVal GreaterOrEqual = SVB.evalBinOp(StateFound, BO_GE, in Find() 133 SVB.getConditionType()); in Find() 152 SVal Less = SVB.evalBinOp(StateFound, BO_LT, in Find() 155 SVB.getConditionType()); in Find()
|
| H A D | EnumCastOutOfRangeChecker.cpp | 37 SValBuilder &SVB; member in __anon883282cd0111::ConstraintBasedEQEvaluator 42 : CompareValue(CompareValue), PS(C.getState()), SVB(C.getSValBuilder()) {} in ConstraintBasedEQEvaluator() 45 DefinedOrUnknownSVal EnumDeclValue = SVB.makeIntVal(EnumDeclInitValue); in operator ()() 47 SVB.evalEQ(PS, EnumDeclValue, CompareValue); in operator ()()
|
| H A D | BuiltinFunctionChecker.cpp | 108 SValBuilder &SVB = C.getSValBuilder(); in evalCall() local 114 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in evalCall() 116 V = SVB.makeIntVal(Result); in evalCall() 124 V = SVB.makeIntVal(0, CE->getType()); in evalCall()
|
| H A D | ContainerModeling.cpp | 321 auto &SVB = C.getSValBuilder(); in handleAssignment() local 435 auto &SVB = C.getSValBuilder(); in handlePushBack() local 437 SVB.evalBinOp(State, BO_Add, in handlePushBack() 464 auto &SVB = C.getSValBuilder(); in handlePopBack() local 466 SVB.evalBinOp(State, BO_Sub, in handlePopBack() 509 auto &SVB = C.getSValBuilder(); in handlePushFront() local 511 SVB.evalBinOp(State, BO_Sub, in handlePushFront() 546 auto &SVB = C.getSValBuilder(); in handlePopFront() local 548 SVB.evalBinOp(State, BO_Add, in handlePopFront() 671 auto &SVB = C.getSValBuilder(); in handleEraseAfter() local [all …]
|
| H A D | CXXSelfAssignmentChecker.cpp | 48 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 D | MIGChecker.cpp | 235 SValBuilder &SVB = C.getSValBuilder(); in mayBeSuccess() local 240 V = SVB.evalEQ(C.getState(), V, SVB.makeIntVal(MigNoReply, ACtx.IntTy)); in mayBeSuccess()
|
| H A D | VirtualCallChecker.cpp | 173 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 D | TrustNonnullChecker.cpp | 218 SValBuilder &SVB = InputState->getStateManager().getSValBuilder(); in addImplication() local 225 SVal AntecedentV = SVB.makeSymbolVal(Antecedent); in addImplication() 230 SVal ConsequentS = SVB.makeSymbolVal(*Consequent); in addImplication()
|
| H A D | ErrnoModeling.cpp | 156 SValBuilder &SVB = C.getSValBuilder(); in checkBeginFunction() local 164 const SymbolConjured *Sym = SVB.conjureSymbol( in checkBeginFunction() 171 ACtx.IntTy, SVB.makeZeroArrayIndex(), in checkBeginFunction()
|
| H A D | IteratorModeling.cpp | 256 auto &SVB = C.getSValBuilder(); in checkPostStmt() local 259 SVB.makeArrayIndex(1)); in checkPostStmt() 651 auto &SVB = C.getSValBuilder(); in handlePtrIncrOrDecr() local 652 SVal NegatedOffset = SVB.evalMinus(Offset.castAs<NonLoc>()); in handlePtrIncrOrDecr() 791 auto &SVB = State->getStateManager().getSValBuilder(); in relateSymbols() local 799 SVB.evalBinOp(State, BO_EQ, nonloc::SymbolVal(Sym1), in relateSymbols() 800 nonloc::SymbolVal(Sym2), SVB.getConditionType()); in relateSymbols()
|
| H A D | StdLibraryFunctionsChecker.cpp | 437 SValBuilder &SVB = C.getSValBuilder(); in apply() local 446 SVB.evalBinOp(State, Op, ErrnoSVal, ZeroVal, SVB.getConditionType()) in apply() 776 SValBuilder &SVB = Mgr.getSValBuilder(); in getBVF() local 777 return SVB.getBasicValueFactory(); in getBVF() 860 SValBuilder &SVB = Mgr.getSValBuilder(); in applyAsOutOfRange() local 861 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in applyAsOutOfRange() 889 SValBuilder &SVB = Mgr.getSValBuilder(); in applyAsWithinRange() local 946 SValBuilder &SVB = Mgr.getSValBuilder(); in apply() local 947 QualType CondT = SVB.getConditionType(); in apply() 956 OtherV = SVB.evalCast(OtherV, T, OtherT); in apply() [all …]
|
| /llvm-project-15.0.7/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | SimpleConstraintManager.h | 25 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 D | DynamicExtent.h | 27 const MemRegion *MR, SValBuilder &SVB); 30 DefinedOrUnknownSVal getElementExtent(QualType Ty, SValBuilder &SVB); 35 SValBuilder &SVB, QualType Ty); 39 DefinedOrUnknownSVal Extent, SValBuilder &SVB);
|
| H A D | SMTConstraintManager.h | 272 SValBuilder &SVB = getSValBuilder(); in REGISTER_TRAIT_WITH_PROGRAMSTATE() local 275 return canReasonAbout(SVB.makeSymbolVal(SC->getOperand())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 279 return canReasonAbout(SVB.makeSymbolVal(SIE->getLHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 282 return canReasonAbout(SVB.makeSymbolVal(ISE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 285 return canReasonAbout(SVB.makeSymbolVal(SSE->getLHS())) && in REGISTER_TRAIT_WITH_PROGRAMSTATE() 286 canReasonAbout(SVB.makeSymbolVal(SSE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()
|