| /freebsd-13.1/contrib/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | SVals.h | 75 class SVal { 229 friend class SVal; 250 friend class SVal; 262 friend class SVal; 283 friend class SVal; 292 friend class SVal; variable 320 friend class SVal; 342 friend class SVal; 373 friend class SVal; 403 friend class SVal; [all …]
|
| H A D | Store.h | 113 SVal V) = 0; 143 virtual SVal getLValueIvar(const ObjCIvarDecl *decl, SVal base); 145 virtual SVal getLValueField(const FieldDecl *D, SVal Base) { in getLValueField() 149 virtual SVal getLValueElement(QualType elementType, NonLoc offset, SVal Base); 157 SVal evalDerivedToBase(SVal Derived, const CastExpr *Cast); 160 SVal evalDerivedToBase(SVal Derived, const CXXBasePath &CastPath); 163 SVal evalDerivedToBase(SVal Derived, QualType DerivedPtrType, 177 SVal attemptDownCast(SVal Base, QualType DerivedPtrType, bool &Failed); 228 ArrayRef<SVal> Values, 272 SVal val) override; [all …]
|
| H A D | SValBuilder.h | 119 SVal evalCast(SVal V, QualType CastTy, QualType OriginalTy); 122 SVal evalIntegralCast(ProgramStateRef state, SVal val, QualType castTy, 125 virtual SVal evalMinus(NonLoc val) = 0; 127 virtual SVal evalComplement(NonLoc val) = 0; 152 virtual SVal simplifySVal(ProgramStateRef State, SVal Val) = 0; 159 SVal lhs, SVal rhs, QualType type); 162 ConditionTruthVal areEqual(ProgramStateRef state, SVal lhs, SVal rhs); 164 SVal evalEQ(ProgramStateRef state, SVal lhs, SVal rhs); 270 Optional<SVal> getConstantVal(const Expr *E); 298 SVal convertToArrayIndex(SVal val); [all …]
|
| H A D | ProgramState.h | 226 ConditionTruthVal areEqual(SVal Lhs, SVal Rhs) const; 245 LLVM_NODISCARD ProgramStateRef bindLoc(SVal location, SVal V, 255 bindDefaultInitial(SVal loc, SVal V, const LocationContext *LCtx) const; 322 SVal getLValue(const ObjCIvarDecl *decl, SVal base) const; 325 SVal getLValue(const FieldDecl *decl, SVal Base) const; 328 SVal getLValue(const IndirectFieldDecl *decl, SVal Base) const; 331 SVal getLValue(QualType ElementType, SVal Idx, SVal Base) const; 745 inline SVal ProgramState::getLValue(const FieldDecl *D, SVal Base) const { in getLValue() 759 inline SVal ProgramState::getLValue(QualType ElementType, SVal Idx, SVal Base) const{ in getLValue() 771 inline SVal [all …]
|
| H A D | BasicValueFactory.h | 43 llvm::ImmutableList<SVal> L; 50 using iterator = llvm::ImmutableList<SVal>::iterator; 58 llvm::ImmutableList<SVal> L); 119 llvm::ImmutableList<SVal>::Factory SValListFactory; 251 llvm::ImmutableList<SVal> getEmptySValList() { in getEmptySValList() 255 llvm::ImmutableList<SVal> prependSVal(SVal X, llvm::ImmutableList<SVal> L) { in prependSVal() 277 const std::pair<SVal, uintptr_t>& 278 getPersistentSValWithData(const SVal& V, uintptr_t Data); 280 const std::pair<SVal, SVal>& 281 getPersistentSValPair(const SVal& V1, const SVal& V2); [all …]
|
| H A D | ExprEngine.h | 592 SVal evalMinus(SVal X) { in evalMinus() 596 SVal evalComplement(SVal X) { in evalComplement() 629 SVal LHS, SVal RHS, QualType T) { in evalBinOp() 636 static Optional<SVal> 643 ProgramStateRef State, ArrayRef<std::pair<SVal, SVal>> LocAndVals, 661 SVal location, SVal Val, bool atDeclInit = false, 666 SVal Loc, SVal Val, 687 SVal location, 694 ExplodedNode *Pred, ProgramStateRef St, SVal TargetLV, SVal Val, 768 SVal location, [all …]
|
| H A D | SVals.def | 1 //===-- SVals.def - Metadata about SVal kinds -------------------*- C++ -*-===// 9 // The list of symbolic values (SVal kinds and sub-kinds) used in the Static 10 // Analyzer. The distinction between loc:: and nonloc:: SVal namespaces is 15 // BASIC_SVAL(Id, Parent) - for specific SVal sub-kinds, which are 19 // ABSTRACT_SVAL(Id, Parent) - for abstract SVal classes which are 22 // ABSTRACT_SVAL_WITH_KIND(Id, Parent) - for SVal classes which are also 54 BASIC_SVAL(UndefinedVal, SVal) 55 ABSTRACT_SVAL(DefinedOrUnknownSVal, SVal)
|
| /freebsd-13.1/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | IteratorModeling.cpp | 92 SVal, SVal, SVal) const; 101 const SVal &LVal, const SVal &RVal, 117 void handlePrev(CheckerContext &C, const Expr *CE, SVal RetVal, SVal Iter, 119 void handleNext(CheckerContext &C, const Expr *CE, SVal RetVal, SVal Iter, 235 void IteratorModeling::checkBind(SVal Loc, SVal Val, const Stmt *S, in checkBind() 450 SVal RetVal, const SVal &LVal, in handleComparison() 604 SVal Val; in handleRandomIncrOrDecr() 648 SVal NewVal; in handlePtrIncrOrDecr() 674 SVal RetVal, SVal Iter, in handleAdvance() 680 SVal RetVal, SVal Iter, SVal Amount) const { in handlePrev() [all …]
|
| H A D | IteratorRangeChecker.cpp | 37 void verifyDereference(CheckerContext &C, SVal Val) const; 38 void verifyIncrement(CheckerContext &C, SVal Iter) const; 39 void verifyDecrement(CheckerContext &C, SVal Iter) const; 41 SVal LHS, SVal RHS) const; 42 void verifyAdvance(CheckerContext &C, SVal LHS, SVal RHS) const; 43 void verifyPrev(CheckerContext &C, SVal LHS, SVal RHS) const; 44 void verifyNext(CheckerContext &C, SVal LHS, SVal RHS) const; 223 SVal LHS, SVal RHS) const { in verifyRandomIncrOrDecr() 264 SVal RHS) const { in verifyAdvance() 269 SVal RHS) const { in verifyPrev() [all …]
|
| H A D | GTestChecker.cpp | 111 SVal 113 SVal Instance, 116 static ProgramStateRef assumeValuesEqual(SVal Val1, SVal Val2, 135 SVal BooleanArgVal = Call->getArgSVal(0); in modelAssertionResultBoolConstructor() 143 SVal ThisVal = Call->getCXXThisVal(); in modelAssertionResultBoolConstructor() 145 SVal ThisSuccess = getAssertionResultSuccessFieldValue( in modelAssertionResultBoolConstructor() 165 SVal OtherVal = Call->getArgSVal(0); in modelAssertionResultCopyConstructor() 166 SVal ThisVal = Call->getCXXThisVal(); in modelAssertionResultCopyConstructor() 249 SVal GTestChecker::getAssertionResultSuccessFieldValue( in getAssertionResultSuccessFieldValue() 250 const CXXRecordDecl *AssertionResultDecl, SVal Instance, in getAssertionResultSuccessFieldValue() [all …]
|
| H A D | ArrayBoundCheckerV2.cpp | 42 void checkLocation(SVal l, bool isLoad, const Stmt*S, 50 SVal byteOffset; 56 RegionRawOffsetV2(const SubRegion* base, SVal offset) in RegionRawOffsetV2() 64 SVal location); 71 static SVal computeExtentBegin(SValBuilder &svalBuilder, in computeExtentBegin() 208 SVal ByteOffset = rawOffset.getByteOffset(); in checkLocation() 277 static inline SVal getValue(SVal val, SValBuilder &svalBuilder) { in getValue() 283 static inline SVal scaleValue(ProgramStateRef state, in scaleValue() 293 static SVal addValue(ProgramStateRef state, SVal x, SVal y, in addValue() 312 SVal offset = UndefinedVal(); in computeOffset() [all …]
|
| H A D | ContainerModeling.cpp | 38 SVal Cont) const; 47 void handleInsert(CheckerContext &C, SVal Cont, SVal Iter) const; 48 void handleErase(CheckerContext &C, SVal Cont, SVal Iter) const; 49 void handleErase(CheckerContext &C, SVal Cont, SVal Iter1, SVal Iter2) const; 50 void handleEraseAfter(CheckerContext &C, SVal Cont, SVal Iter) const; 51 void handleEraseAfter(CheckerContext &C, SVal Cont, SVal Iter1, 70 using TwoItParamFn = void (ContainerModeling::*)(CheckerContext &, SVal, SVal, 260 SVal RetVal, SVal Cont) const { in handleBegin() 282 SVal RetVal, SVal Cont) const { in handleEnd() 638 void ContainerModeling::handleErase(CheckerContext &C, SVal Cont, SVal Iter1, in handleErase() [all …]
|
| H A D | MismatchedIteratorChecker.cpp | 35 void verifyMatch(CheckerContext &C, const SVal &Iter, 37 void verifyMatch(CheckerContext &C, const SVal &Iter1, 38 const SVal &Iter2) const; 39 void reportBug(const StringRef &Message, const SVal &Val1, 40 const SVal &Val2, CheckerContext &C, 42 void reportBug(const StringRef &Message, const SVal &Val, 170 SVal LHS = UndefinedVal(); in checkPreCall() 198 SVal LVal = State->getSVal(BO->getLHS(), C.getLocationContext()); in checkPreStmt() 240 const SVal &Iter1, in verifyMatch() 279 const SVal &Val1, in reportBug() [all …]
|
| H A D | CStringChecker.cpp | 416 SVal BufStart = in CheckBufferAccess() 420 SVal BufEnd = in CheckBufferAccess() 481 SVal reverse = in CheckOverlap() 512 SVal FirstStart = in CheckOverlap() 526 SVal Overlap = in CheckOverlap() 661 SVal maxMinusRight; in checkAdditionOverflow() 907 SVal BufEnd = in IsFirstBufInBound() 1189 SVal DestRegCharVal = in evalCopyCommon() 1828 SVal Result; in evalStrcpyCommon() 1853 SVal maxLastElement = in evalStrcpyCommon() [all …]
|
| H A D | ObjCSelfInitChecker.cpp | 54 static bool isSelfVar(SVal location, CheckerContext &C); 74 void checkLocation(SVal location, bool isLoad, const Stmt *S, 76 void checkBind(SVal loc, SVal val, const Stmt *S, CheckerContext &C) const; 113 static SelfFlagEnum getSelfFlags(SVal val, CheckerContext &C) { in getSelfFlags() 117 static void addSelfFlag(ProgramStateRef state, SVal val, in addSelfFlag() 134 SVal exprVal = C.getSVal(E); in isInvalidSelf() 185 SVal V = C.getSVal(Msg.getOriginExpr()); in checkPostObjCMessage() 252 SVal argV = CE.getArgSVal(i); in checkPreCall() 280 SVal argV = CE.getArgSVal(i); in checkPostCall() 316 void ObjCSelfInitChecker::checkBind(SVal loc, SVal val, const Stmt *S, in checkBind() [all …]
|
| H A D | TestAfterDivZeroChecker.cpp | 81 void reportBug(SVal Val, CheckerContext &C) const; 87 void setDivZeroMap(SVal Var, CheckerContext &C) const; 88 bool hasDivZeroMap(SVal Var, const CheckerContext &C) const; 89 bool isZero(SVal S, CheckerContext &C) const; 115 SVal S = Succ->getSVal(E); in REGISTER_SET_WITH_PROGRAMSTATE() 155 bool TestAfterDivZeroChecker::hasDivZeroMap(SVal Var, in hasDivZeroMap() 205 SVal S = C.getSVal(B->getRHS()); in checkPreStmt() 226 SVal Val = C.getSVal(LRHS ? B->getLHS() : B->getRHS()); in checkBranchCondition() 232 SVal Val; in checkBranchCondition() 247 SVal Val = C.getSVal(IE->getSubExpr()); in checkBranchCondition() [all …]
|
| H A D | InvalidatedIteratorChecker.cpp | 36 void verifyAccess(CheckerContext &C, const SVal &Val) const; 37 void reportBug(const StringRef &Message, const SVal &Val, 82 SVal SubVal = State->getSVal(UO->getSubExpr(), C.getLocationContext()); in checkPreStmt() 93 SVal LVal = State->getSVal(BO->getLHS(), C.getLocationContext()); in checkPreStmt() 103 SVal LVal = State->getSVal(ASE->getLHS(), C.getLocationContext()); in checkPreStmt() 113 SVal BaseVal = State->getSVal(ME->getBase(), C.getLocationContext()); in checkPreStmt() 117 void InvalidatedIteratorChecker::verifyAccess(CheckerContext &C, const SVal &Val) const { in verifyAccess() 130 const SVal &Val, CheckerContext &C, in reportBug()
|
| /freebsd-13.1/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ |
| H A D | SimpleSValBuilder.cpp | 31 SVal evalMinus(NonLoc val) override; 46 SVal simplifySVal(ProgramStateRef State, SVal V) override; 184 SVal Result = in isInRelation() 773 SVal ResultVal = in evalBinOpLL() 988 SVal Result = lhs; in evalBinOpLN() 1056 SVal index = UnknownVal(); in evalBinOpLN() 1114 SVal SimpleSValBuilder::simplifySVal(ProgramStateRef State, SVal V) { in simplifySVal() 1133 SVal cache(SymbolRef Sym, SVal V) { in simplifySVal() 1138 SVal skip(SymbolRef Sym) { in simplifySVal() 1167 SVal RHS; in simplifySVal() [all …]
|
| H A D | RegionStore.cpp | 1009 void VisitBinding(SVal V); 1225 SVal V = I.getData(); in VisitCluster() 1300 SVal V = *I; in populateWorkList() 1645 SVal Idx = R->getIndex(); in getBindingForElement() 1775 Optional<SVal> 1782 const SVal &val = D.getValue(); in getBindingForDerivedDefaultValue() 1806 SVal Result; in getLazyBinding() 1833 SVal 2032 SVal V = I->second; in getInterestingValues() 2165 SVal V; in setImplicitDefaultValue() [all …]
|
| H A D | Store.cpp | 230 static bool regionMatchesCXXRecordType(SVal V, QualType Ty) { in regionMatchesCXXRecordType() 250 SVal StoreManager::evalDerivedToBase(SVal Derived, const CastExpr *Cast) { in evalDerivedToBase() 257 SVal Result = Derived; in evalDerivedToBase() 266 SVal StoreManager::evalDerivedToBase(SVal Derived, const CXXBasePath &Path) { in evalDerivedToBase() 268 SVal Result = Derived; in evalDerivedToBase() 275 SVal StoreManager::evalDerivedToBase(SVal Derived, QualType BaseType, in evalDerivedToBase() 316 SVal StoreManager::attemptDownCast(SVal Base, QualType TargetType, in attemptDownCast() 398 SVal StoreManager::getLValueFieldOrIvar(const Decl *D, SVal Base) { in getLValueFieldOrIvar() 439 SVal StoreManager::getLValueIvar(const ObjCIvarDecl *decl, SVal base) { in getLValueIvar() 444 SVal Base) { in getLValueElement() [all …]
|
| H A D | SValBuilder.cpp | 99 SVal SValBuilder::convertToArrayIndex(SVal val) { in convertToArrayIndex() 428 SVal lhs, SVal rhs, QualType type) { in evalBinOp() 473 SVal SValBuilder::evalEQ(ProgramStateRef state, SVal lhs, SVal rhs) { in evalEQ() 480 return evalEQ(state, static_cast<SVal>(lhs), static_cast<SVal>(rhs)) in evalEQ() 520 SVal SValBuilder::evalIntegralCast(ProgramStateRef state, SVal val, in evalIntegralCast() 572 SVal SValBuilder::evalCast(SVal V, QualType CastTy, QualType OriginalTy) { in evalCast() 596 case SVal::UndefinedValKind: in evalCast() 598 case SVal::UnknownValKind: in evalCast() 600 case SVal::LocKind: in evalCast() 602 case SVal::NonLocKind: in evalCast() [all …]
|
| H A D | ExprEngineC.cpp | 29 SVal Symbol, SVal Other, Expr* Expression, SValBuilder &svalBuilder, in conjureOffsetSymbolOnLocation() 133 SVal location = LeftV; in VisitBinaryOperator() 164 SVal LHSVal; in VisitBinaryOperator() 237 SVal originalV; in VisitBlockExpr() 514 SVal CastedPTMSV = in VisitCast() 697 SVal X; in VisitLogicalExpr() 777 SVal V; in VisitInitListExpr() 820 SVal V; in VisitGuardedExpr() 1041 SVal Result; in VisitUnaryOperator() 1109 SVal RHS; in VisitIncrementDecrementOperator() [all …]
|
| H A D | SVals.cpp | 46 bool SVal::hasConjuredSymbol() const { in hasConjuredSymbol() 65 const FunctionDecl *SVal::getAsFunctionDecl() const { in getAsFunctionDecl() 87 SymbolRef SVal::getAsLocSymbol(bool IncludeBaseRegions) const { in getAsLocSymbol() 99 SymbolRef SVal::getLocSymbolInBase() const { in getLocSymbolInBase() 123 SymbolRef SVal::getAsSymbol(bool IncludeBaseRegions) const { in getAsSymbol() 131 const MemRegion *SVal::getAsRegion() const { in getAsRegion() 193 QualType SVal::getType(const ASTContext &Context) const { in getType() 259 bool SVal::isConstant() const { in isConstant() 263 bool SVal::isConstant(int I) const { in isConstant() 271 bool SVal::isZeroConstant() const { in isZeroConstant() [all …]
|
| H A D | ProgramState.cpp | 118 SVal V, in bindLoc() 132 ProgramState::bindDefaultInitial(SVal loc, SVal V, in bindDefaultInitial() 151 typedef ArrayRef<SVal> ValueList; 161 SmallVector<SVal, 8> Values; in invalidateRegions() 246 return SVal(); in getSelfSVal() 267 SVal V = getRawSVal(location, T); in getSVal() 342 SVal newIdx = svalBuilder.evalBinOpNN(this, BO_Add, in assumeInBound() 348 SVal newBound = in assumeInBound() 373 ConditionTruthVal ProgramState::areEqual(SVal Lhs, SVal Rhs) const { in areEqual() 377 ConditionTruthVal ProgramState::isNull(SVal V) const { in isNull() [all …]
|
| H A D | BasicValueFactory.cpp | 33 llvm::ImmutableList<SVal> L) { in Profile() 52 using SValData = std::pair<SVal, uintptr_t>; 53 using SValPair = std::pair<SVal, SVal>; 127 llvm::ImmutableList<SVal> Vals) { in getCompoundValData() 344 const std::pair<SVal, uintptr_t>& 345 BasicValueFactory::getPersistentSValWithData(const SVal& V, uintptr_t Data) { in getPersistentSValWithData() 369 const std::pair<SVal, SVal>& 370 BasicValueFactory::getPersistentSValPair(const SVal& V1, const SVal& V2) { in getPersistentSValPair() 394 const SVal* BasicValueFactory::getPersistentSVal(SVal X) { in getPersistentSVal()
|