| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ |
| H A D | DynamicExtent.cpp | 28 const MemRegion *MR, SValBuilder &SVB) { in getDynamicExtent() argument 33 SVB.convertToArrayIndex(*Size).getAs<DefinedOrUnknownSVal>()) in getDynamicExtent() 36 return MR->getMemRegionManager().getStaticSize(MR, SVB); in getDynamicExtent() 39 DefinedOrUnknownSVal getElementExtent(QualType Ty, SValBuilder &SVB) { in getElementExtent() argument 40 return SVB.makeIntVal(SVB.getContext().getTypeSizeInChars(Ty).getQuantity(), in getElementExtent() 41 SVB.getArrayIndexType()); in getElementExtent() 44 static DefinedOrUnknownSVal getConstantArrayElementCount(SValBuilder &SVB, in getConstantArrayElementCount() argument 53 SVB.getContext().getAsConstantArrayType(TVR->getValueType())) in getConstantArrayElementCount() 54 return SVB.makeIntVal(CAT->getSize(), /* isUnsigned = */ false); in getConstantArrayElementCount() 62 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in getDynamicElementCount() local [all …]
|
| H A D | SimpleSValBuilder.cpp | 236 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in isInRelation() local 237 BasicValueFactory &BV = SVB.getBasicValueFactory(); in isInRelation() 238 SVal Result = SVB.evalBinOpNN(State, Rel, nonloc::SymbolVal(Sym), in isInRelation() 240 SVB.getConditionType()); in isInRelation() 254 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in isWithinConstantOverflowBounds() local 255 BasicValueFactory &BV = SVB.getBasicValueFactory(); in isWithinConstantOverflowBounds() 297 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in doRearrangeUnchecked() local 298 BasicValueFactory &BV = SVB.getBasicValueFactory(); in doRearrangeUnchecked() 299 SymbolManager &SymMgr = SVB.getSymbolManager(); in doRearrangeUnchecked() 311 ResultTy = SVB.getConditionType(); in doRearrangeUnchecked() [all …]
|
| H A D | CallEvent.cpp | 400 const ParmVarDecl *Parameter, SValBuilder &SVB) { in processArgument() argument 416 BasicValueFactory &BVF = SVB.getBasicValueFactory(); in processArgument() 422 return SVB.makeCompoundVal(ParamType, CompoundSVals); in processArgument() 435 SVal ArgVal, SValBuilder &SVB) { in castArgToParamTypeIfNeeded() argument 457 return SVB.evalCast(ArgVal, Param->getType(), ArgExpr->getType()); in castArgToParamTypeIfNeeded() 462 SValBuilder &SVB, in addParameterValuesToBindings() argument 465 MemRegionManager &MRMgr = SVB.getRegionManager(); in addParameterValuesToBindings() 491 ArgVal = castArgToParamTypeIfNeeded(Call, Idx, ArgVal, SVB); in addParameterValuesToBindings() 493 Loc ParamLoc = SVB.makeLoc( in addParameterValuesToBindings() 496 std::make_pair(ParamLoc, processArgument(ArgVal, ArgExpr, *I, SVB))); in addParameterValuesToBindings() [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 | 112 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in makeElementRegion() local 113 ASTContext &Ctx = SVB.getContext(); in makeElementRegion() 120 LValue = State->getLValue(Ty, SVB.makeArrayIndex(Idx), LValue); in makeElementRegion() 136 SValBuilder &SVB = getSValBuilder(); in computeObjectUnderConstruction() local 137 MemRegionManager &MRMgr = SVB.getRegionManager(); in computeObjectUnderConstruction() 138 ASTContext &ACtx = SVB.getContext(); in computeObjectUnderConstruction() 157 Loc ThisPtr = SVB.getCXXThis(CurCtor, LCtx->getStackFrame()); in computeObjectUnderConstruction() 166 return SVB.makeLoc(BaseReg); in computeObjectUnderConstruction() 200 MR, SVB.getContext()); in computeObjectUnderConstruction() 256 return SVB.conjureSymbolVal(&TopLevelSymRegionTag, getCFGElementRef(), in computeObjectUnderConstruction() [all …]
|
| H A D | RangedConstraintManager.cpp | 236 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in simplifyToSVal() local 237 return SVB.simplifySVal(State, SVB.makeSymbolVal(Sym)); in simplifyToSVal()
|
| /freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | ErrnoTesterChecker.cpp | 108 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(Call, C.blockCount()); in evalSetErrnoIfErrorRange() 146 SValBuilder &SVB = C.getSValBuilder(); in evalSetErrnoCheckState() local 149 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(0, true)); in evalSetErrnoCheckState() 153 Call.getOriginExpr(), C.getLocationContext(), SVB.makeIntVal(1, true)); in evalSetErrnoCheckState() [all …]
|
| H A D | ArrayBoundChecker.cpp | 187 computeOffset(ProgramStateRef State, SValBuilder &SVB, SVal Location) { in computeOffset() argument 188 QualType T = SVB.getArrayIndexType(); in computeOffset() 189 auto EvalBinOp = [&SVB, State, T](BinaryOperatorKind Op, NonLoc L, NonLoc R) { in computeOffset() 191 return SVB.evalBinOpNN(State, Op, L, R, T).getAs<NonLoc>(); in computeOffset() 195 std::optional<NonLoc> Offset = SVB.makeZeroArrayIndex(); in computeOffset() 214 NonLoc Size = SVB.makeArrayIndex( in computeOffset() 215 SVB.getContext().getTypeSizeInChars(ElemType).getQuantity()); in computeOffset() 288 static bool isNegative(SValBuilder &SVB, ProgramStateRef State, NonLoc Value) { in isNegative() argument 289 const llvm::APSInt *MaxV = SVB.getMaxValue(State, Value); in isNegative() 293 static bool isUnsigned(SValBuilder &SVB, NonLoc Value) { in isUnsigned() argument [all …]
|
| H A D | BuiltinFunctionChecker.cpp | 155 SValBuilder &SVB = C.getSValBuilder(); in checkOverflow() local 156 BasicValueFactory &VF = SVB.getBasicValueFactory(); in checkOverflow() 164 SVal IsLeMax = SVB.evalBinOp(State, BO_LE, RetVal, MaxVal, Res); in checkOverflow() 165 SVal IsGeMin = SVB.evalBinOp(State, BO_GE, RetVal, MinVal, Res); in checkOverflow() 178 SValBuilder &SVB = C.getSValBuilder(); in initStateAftetBuiltinOverflow() local 185 SVB.makeTruthVal(IsOverflow, BoolTy)); in initStateAftetBuiltinOverflow() 206 SValBuilder &SVB = C.getSValBuilder(); in handleOverflowBuiltin() local 211 SVal RetValMax = SVB.evalBinOp(State, Op, Arg1, Arg2, in handleOverflowBuiltin() 213 SVal RetVal = SVB.evalBinOp(State, Op, Arg1, Arg2, ResultType); in handleOverflowBuiltin() 322 SValBuilder &SVB = C.getSValBuilder(); in evalCall() local [all …]
|
| H A D | VLASizeChecker.cpp | 94 SValBuilder &SVB = C.getSValBuilder(); in checkVLA() local 97 SVB.getBasicValueFactory().getMaxValue(SizeTy)->getZExtValue(); in checkVLA() 102 SVB.makeIntVal(EleSize.getQuantity(), SizeTy).castAs<NonLoc>(); in checkVLA() 106 if (const llvm::APSInt *KV = SVB.getKnownValue(State, ArrSize)) in checkVLA() 113 SVB.evalCast(SizeD, SizeTy, SizeE->getType()).castAs<NonLoc>(); in checkVLA() 115 SVal Mul = SVB.evalBinOpNN(State, BO_Mul, ArrSize, IndexLength, SizeTy); in checkVLA() 122 if (const llvm::APSInt *IndexLVal = SVB.getKnownValue(State, IndexLength)) { in checkVLA() 180 SValBuilder &SVB = C.getSValBuilder(); in checkVLAIndexSize() local 183 DefinedOrUnknownSVal Zero = SVB.makeZeroVal(SizeTy); in checkVLAIndexSize() 186 SVB.evalBinOp(State, BO_LT, SizeD, Zero, SVB.getConditionType()); in checkVLAIndexSize()
|
| H A D | Iterator.cpp | 231 auto &SVB = State->getStateManager().getSValBuilder(); in advancePosition() local 250 Pos->setTo(SVB.evalBinOp(State, BinOp, in advancePosition() 266 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in assumeNoOverflow() local 267 BasicValueFactory &BV = SVB.getBasicValueFactory(); in assumeNoOverflow() 276 SVal IsCappedFromAbove = SVB.evalBinOpNN( in assumeNoOverflow() 278 nonloc::ConcreteInt(BV.getValue(Max)), SVB.getConditionType()); in assumeNoOverflow() 286 SVal IsCappedFromBelow = SVB.evalBinOpNN( in assumeNoOverflow() 288 nonloc::ConcreteInt(BV.getValue(Min)), SVB.getConditionType()); in assumeNoOverflow() 305 auto &SVB = State->getStateManager().getSValBuilder(); in compare() local 308 SVB.evalBinOp(State, Opc, NL1, NL2, SVB.getConditionType()); in compare()
|
| H A D | STLAlgorithmModeling.cpp | 135 auto &SVB = C.getSValBuilder(); in Find() local 138 SVal RetVal = SVB.conjureSymbolVal(nullptr, Elem, LCtx, C.blockCount()); in Find() 154 SVal GreaterOrEqual = SVB.evalBinOp(StateFound, BO_GE, in Find() 157 SVB.getConditionType()); in Find() 176 SVal Less = SVB.evalBinOp(StateFound, BO_LT, in Find() 179 SVB.getConditionType()); in Find()
|
| H A D | ErrnoModeling.cpp | 113 SValBuilder &SVB = C.getSValBuilder(); in checkBeginFunction() local 124 const SymbolConjured *Sym = SVB.conjureSymbol( in checkBeginFunction() 131 ACtx.IntTy, SVB.makeZeroArrayIndex(), in checkBeginFunction() 244 SValBuilder &SVB = C.getSValBuilder(); in setErrnoForStdFailure() local 245 NonLoc ZeroVal = SVB.makeZeroVal(C.getASTContext().IntTy).castAs<NonLoc>(); in setErrnoForStdFailure() 247 SVB.evalBinOp(State, BO_NE, ErrnoSym, ZeroVal, SVB.getConditionType()) in setErrnoForStdFailure()
|
| H A D | ContainerModeling.cpp | 143 ProgramStateRef State, SValBuilder &SVB, SymbolRef OldSym, 145 SymbolRef rebaseSymbol(ProgramStateRef State, SValBuilder &SVB, SymbolRef Expr, 330 auto &SVB = C.getSValBuilder(); in handleAssignment() local 345 State, SVB, OldEndSym, NewEndSym, OldEndSym, BO_LT); in handleAssignment() 444 auto &SVB = C.getSValBuilder(); in handlePushBack() local 446 SVB.evalBinOp(State, BO_Add, in handlePushBack() 473 auto &SVB = C.getSValBuilder(); in handlePopBack() local 475 SVB.evalBinOp(State, BO_Sub, in handlePopBack() 518 auto &SVB = C.getSValBuilder(); in handlePushFront() local 520 SVB.evalBinOp(State, BO_Sub, in handlePushFront() [all …]
|
| H A D | EnumCastOutOfRangeChecker.cpp | 41 SValBuilder &SVB; member in __anonfe9dbf9d0111::ConstraintBasedEQEvaluator 46 : CompareValue(CompareValue), PS(C.getState()), SVB(C.getSValBuilder()) {} in ConstraintBasedEQEvaluator() 49 DefinedOrUnknownSVal EnumDeclValue = SVB.makeIntVal(EnumDeclInitValue); in operator ()() 51 SVB.evalEQ(PS, EnumDeclValue, CompareValue); in operator ()()
|
| 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 | BitwiseShiftChecker.cpp | 138 SValBuilder &SVB = Ctx.getSValBuilder(); in assumeRequirement() local 141 const auto LimitVal = SVB.makeIntVal(Limit, Ctx.getASTContext().IntTy); in assumeRequirement() 145 auto ResultVal = SVB.evalBinOp(FoldedState, Comparison, OperandVal, LimitVal, in assumeRequirement() 146 SVB.getConditionType()); in assumeRequirement() 177 SValBuilder &SVB = Ctx.getSValBuilder(); in checkOvershift() local 178 if (const llvm::APSInt *MinRight = SVB.getMinValue(FoldedState, Right); in checkOvershift()
|
| H A D | SetgidSetuidOrderChecker.cpp | 93 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 D | VirtualCallChecker.cpp | 181 auto &SVB = C.getSValBuilder(); in registerCtorDtorCallInState() local 186 State->getSVal(SVB.getCXXThis(MD, LCtx->getStackFrame())); in registerCtorDtorCallInState() 200 State->getSVal(SVB.getCXXThis(MD, LCtx->getStackFrame())); in registerCtorDtorCallInState()
|
| H A D | StreamChecker.cpp | 640 SValBuilder &SVB; member 650 : SVB(C.getSValBuilder()), ACtx(C.getASTContext()) { in StreamOperationEvaluator() 676 return *SVB.makeZeroVal(Call.getResultType()).getAs<NonLoc>(); in getZeroVal() 693 SVB.makeIntVal(Val, CE->getCallReturnType(ACtx))); in bindReturnValue() 710 auto Cond = SVB.evalBinOpNN(State, Op, LHS, RHS, SVB.getConditionType()) in assumeBinOpNN() 826 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in getKnownValue() local 827 if (const llvm::APSInt *Int = SVB.getKnownValue(State, V)) in getKnownValue() 846 SValBuilder &SVB = State->getStateManager().getSValBuilder(); in escapeByStartIndexAndCount() local 854 NonLoc Index = SVB.makeArrayIndex(Idx); in escapeByStartIndexAndCount() 911 auto &SVB = C.getSValBuilder(); in assumeNoAliasingWithStdStreams() local [all …]
|
| H A D | TrustNonnullChecker.cpp | 217 SValBuilder &SVB = InputState->getStateManager().getSValBuilder(); in addImplication() local 224 SVal AntecedentV = SVB.makeSymbolVal(Antecedent); in addImplication() 229 SVal ConsequentS = SVB.makeSymbolVal(*Consequent); in addImplication()
|
| H A D | MIGChecker.cpp | 236 SValBuilder &SVB = C.getSValBuilder(); in mayBeSuccess() local 241 V = SVB.evalEQ(C.getState(), V, SVB.makeIntVal(MigNoReply, ACtx.IntTy)); in mayBeSuccess()
|
| /freebsd/contrib/llvm-project/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);
|
| H A D | SMTConstraintManager.h | 279 SValBuilder &SVB = getSValBuilder(); in REGISTER_TRAIT_WITH_PROGRAMSTATE() local 282 return canReasonAbout(SVB.makeSymbolVal(SC->getOperand())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 291 return canReasonAbout(SVB.makeSymbolVal(SIE->getLHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 294 return canReasonAbout(SVB.makeSymbolVal(ISE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE() 297 return canReasonAbout(SVB.makeSymbolVal(SSE->getLHS())) && in REGISTER_TRAIT_WITH_PROGRAMSTATE() 298 canReasonAbout(SVB.makeSymbolVal(SSE->getRHS())); in REGISTER_TRAIT_WITH_PROGRAMSTATE()
|