/external/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
D | MemRegion.h | 49 const MemRegion *R; 60 RegionOffset(const MemRegion *r, int64_t off) : R(r), Offset(off) {} in RegionOffset() 62 const MemRegion *getRegion() const { return R; } in getRegion() 79 class MemRegion : public llvm::FoldingSetNode { 91 MemRegion(Kind k) : kind(k) {} in MemRegion() function 92 virtual ~MemRegion(); 103 const MemRegion *getBaseRegion() const; 106 virtual bool isSubRegionOf(const MemRegion *R) const; 108 const MemRegion *StripCasts(bool StripBaseCasts = true) const; 179 class MemSpaceRegion : public MemRegion { [all …]
|
D | Store.h | 72 virtual StoreRef BindDefault(Store store, const MemRegion *R, SVal V); 107 const MemRegion *region, in getSizeInElements() 137 const ElementRegion *GetElementZeroRegion(const MemRegion *R, QualType T); 142 const MemRegion *castRegion(const MemRegion *region, QualType CastToTy); 148 const MemRegion *region) const = 0; 159 typedef SmallVector<const MemRegion *, 8> InvalidatedRegions; 203 virtual bool scanReachableSymbols(Store S, const MemRegion *R, 213 const MemRegion *region, SVal val) = 0; 219 const MemRegion* Binding; 226 bool HandleBinding(StoreManager& SMgr, Store store, const MemRegion* R, [all …]
|
D | DynamicTypeMap.h | 27 typedef llvm::ImmutableMap<const MemRegion *, DynamicTypeInfo> 40 const MemRegion *Reg); 43 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *Reg, 48 const MemRegion *Reg, QualType NewTy,
|
D | SubEngine.h | 41 class MemRegion; variable 135 ArrayRef<const MemRegion *> ExplicitRegions, 136 ArrayRef<const MemRegion *> Regions, 142 const MemRegion* MR) { in processRegionChange() 152 ArrayRef<const MemRegion *> ExplicitRegions, 153 ArrayRef<const MemRegion *> Regions,
|
/external/clang/lib/StaticAnalyzer/Core/ |
D | Store.cpp | 45 const MemRegion *StoreManager::MakeElementRegion(const MemRegion *Base, in MakeElementRegion() 51 StoreRef StoreManager::BindDefault(Store store, const MemRegion *R, SVal V) { in BindDefault() 55 const ElementRegion *StoreManager::GetElementZeroRegion(const MemRegion *R, in GetElementZeroRegion() 62 const MemRegion *StoreManager::castRegion(const MemRegion *R, QualType CastToTy) { in castRegion() 102 case MemRegion::CXXThisRegionKind: in castRegion() 103 case MemRegion::CodeSpaceRegionKind: in castRegion() 104 case MemRegion::StackLocalsSpaceRegionKind: in castRegion() 105 case MemRegion::StackArgumentsSpaceRegionKind: in castRegion() 106 case MemRegion::HeapSpaceRegionKind: in castRegion() 107 case MemRegion::UnknownSpaceRegionKind: in castRegion() [all …]
|
D | MemRegion.cpp | 58 const MemRegion *superRegion) { in getSubRegion() 96 const MemRegion *superRegion) { in getSubRegion() 114 const MemRegion *superRegion) { in getSubRegion() 134 MemRegion::~MemRegion() {} in ~MemRegion() 145 bool SubRegion::isSubRegionOf(const MemRegion* R) const { in isSubRegionOf() 146 const MemRegion* r = getSuperRegion(); in isSubRegionOf() 161 const MemRegion *superRegion = r->getSuperRegion(); in getMemRegionManager() 225 ObjCIvarRegion::ObjCIvarRegion(const ObjCIvarDecl *ivd, const MemRegion* sReg) in ObjCIvarRegion() 260 const MemRegion* superRegion) { in ProfileRegion() 268 const MemRegion* superRegion) { in ProfileRegion() [all …]
|
D | RegionStore.cpp | 49 llvm::PointerIntPair<const MemRegion *, 2> P; 61 explicit BindingKey(const MemRegion *r, uint64_t offset, Kind k) in BindingKey() 72 const MemRegion *getRegion() const { return P.getPointer(); } in getRegion() 83 const MemRegion *getBaseRegion() const { in getBaseRegion() 94 static BindingKey Make(const MemRegion *R, Kind k); 113 BindingKey BindingKey::Make(const MemRegion *R, Kind k) { in Make() 148 typedef llvm::ImmutableMap<const MemRegion *, ClusterBindings> 152 class RegionBindingsRef : public llvm::ImmutableMapRef<const MemRegion *, 157 typedef llvm::ImmutableMapRef<const MemRegion *, ClusterBindings> 163 : llvm::ImmutableMapRef<const MemRegion *, ClusterBindings>(T, F), in RegionBindingsRef() [all …]
|
/external/llvm-project/clang/lib/StaticAnalyzer/Core/ |
D | MemRegion.cpp | 122 MemRegion::~MemRegion() = default; 132 bool SubRegion::isSubRegionOf(const MemRegion* R) const { in isSubRegionOf() 133 const MemRegion* r = this; in isSubRegionOf() 148 const MemRegion *superRegion = r->getSuperRegion(); in getMemRegionManager() 226 const MemRegion *superRegion) { in ProfileRegion() 234 const MemRegion *superRegion) { in ProfileRegion() 242 const MemRegion *superRegion) { in ProfileRegion() 259 const MemRegion* superRegion) { in ProfileRegion() 267 const MemRegion *sRegion) { in ProfileRegion() 283 const MemRegion* superRegion) { in ProfileRegion() [all …]
|
D | Store.cpp | 74 const MemRegion *StoreManager::castRegion(const MemRegion *R, QualType CastToTy) { in castRegion() 113 case MemRegion::CXXThisRegionKind: in castRegion() 114 case MemRegion::CodeSpaceRegionKind: in castRegion() 115 case MemRegion::StackLocalsSpaceRegionKind: in castRegion() 116 case MemRegion::StackArgumentsSpaceRegionKind: in castRegion() 117 case MemRegion::HeapSpaceRegionKind: in castRegion() 118 case MemRegion::UnknownSpaceRegionKind: in castRegion() 119 case MemRegion::StaticGlobalSpaceRegionKind: in castRegion() 120 case MemRegion::GlobalInternalSpaceRegionKind: in castRegion() 121 case MemRegion::GlobalSystemSpaceRegionKind: in castRegion() [all …]
|
D | RegionStore.cpp | 50 llvm::PointerIntPair<const MemRegion *, 2> P; 62 explicit BindingKey(const MemRegion *r, uint64_t offset, Kind k) in BindingKey() 75 const MemRegion *getRegion() const { return P.getPointer(); } in getRegion() 86 const MemRegion *getBaseRegion() const { in getBaseRegion() 97 static BindingKey Make(const MemRegion *R, Kind k); 116 BindingKey BindingKey::Make(const MemRegion *R, Kind k) { in Make() 151 typedef llvm::ImmutableMap<const MemRegion *, ClusterBindings> 155 class RegionBindingsRef : public llvm::ImmutableMapRef<const MemRegion *, 171 typedef llvm::ImmutableMapRef<const MemRegion *, ClusterBindings> 178 : llvm::ImmutableMapRef<const MemRegion *, ClusterBindings>(T, F), in RegionBindingsRef() [all …]
|
/external/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
D | MemRegion.h | 54 class MemRegion; variable 64 const MemRegion *R = nullptr; 75 RegionOffset(const MemRegion *r, int64_t off) : R(r), Offset(off) {} in RegionOffset() 77 const MemRegion *getRegion() const { return R; } in getRegion() 94 class MemRegion : public llvm::FoldingSetNode { 107 MemRegion(Kind k) : kind(k) {} in MemRegion() function 108 virtual ~MemRegion(); 119 const MemRegion *getBaseRegion() const; 123 const MemRegion *getMostDerivedObjectRegion() const; 127 virtual bool isSubRegionOf(const MemRegion *R) const; [all …]
|
D | DynamicType.h | 33 DynamicTypeInfo getDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR); 37 const MemRegion *MR); 45 const MemRegion *MR, 50 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR, 54 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *MR, 69 const MemRegion *MR,
|
D | Store.h | 86 virtual Optional<SVal> getDefaultBinding(Store store, const MemRegion *R) = 0; 112 virtual StoreRef BindDefaultInitial(Store store, const MemRegion *R, 117 virtual StoreRef BindDefaultZero(Store store, const MemRegion *R) = 0; 184 const MemRegion *castRegion(const MemRegion *region, QualType CastToTy); 190 const MemRegion *region) const = 0; 201 using InvalidatedRegions = SmallVector<const MemRegion *, 8>; 245 virtual bool scanReachableSymbols(Store S, const MemRegion *R, 257 const MemRegion *region, SVal val) = 0; 262 const MemRegion* Binding = nullptr; 270 bool HandleBinding(StoreManager& SMgr, Store store, const MemRegion* R, [all …]
|
/external/clang/lib/StaticAnalyzer/Checkers/ |
D | PointerArithChecker.cpp | 52 const MemRegion *getArrayRegion(const MemRegion *Region, bool &Polymorphic, 54 const MemRegion *getPointedRegion(const MemRegion *Region, 76 REGISTER_MAP_WITH_PROGRAMSTATE(RegionState, const MemRegion *, AllocKind) in REGISTER_MAP_WITH_PROGRAMSTATE() argument 106 const MemRegion * 107 PointerArithChecker::getPointedRegion(const MemRegion *Region, in getPointedRegion() 119 const MemRegion *PointerArithChecker::getArrayRegion(const MemRegion *Region, in getArrayRegion() 124 while (Region->getKind() == MemRegion::Kind::CXXBaseObjectRegionKind) { in getArrayRegion() 128 if (Region->getKind() == MemRegion::Kind::ElementRegionKind) { in getArrayRegion() 142 if (Region->getKind() == MemRegion::Kind::SymbolicRegionKind) in getArrayRegion() 158 const MemRegion *Region = in reportPointerArithMisuse() [all …]
|
/external/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
D | MoveChecker.cpp | 59 ArrayRef<const MemRegion *> RequestedRegions, 60 ArrayRef<const MemRegion *> InvalidatedRegions, 148 ObjectKind classifyObject(const MemRegion *MR, const CXXRecordDecl *RD) const; 152 void explainObject(llvm::raw_ostream &OS, const MemRegion *MR, 159 MovedBugVisitor(const MoveChecker &Chk, const MemRegion *R, in MovedBugVisitor() 180 const MemRegion *Region; 211 void modelUse(ProgramStateRef State, const MemRegion *Region, 217 ExplodedNode *reportBug(const MemRegion *Region, const CXXRecordDecl *RD, 224 const MemRegion *Region, 229 REGISTER_MAP_WITH_PROGRAMSTATE(TrackedRegionMap, const MemRegion *, RegionState) [all …]
|
D | StackAddrEscapeChecker.cpp | 57 void EmitStackError(CheckerContext &C, const MemRegion *R, 60 static SourceRange genName(raw_ostream &os, const MemRegion *R, 62 static SmallVector<const MemRegion *, 4> 64 static bool isArcManagedBlock(const MemRegion *R, CheckerContext &C); 65 static bool isNotInCurrentFrame(const MemRegion *R, CheckerContext &C); 69 SourceRange StackAddrEscapeChecker::genName(raw_ostream &os, const MemRegion *R, in genName() 113 bool StackAddrEscapeChecker::isArcManagedBlock(const MemRegion *R, in isArcManagedBlock() 120 bool StackAddrEscapeChecker::isNotInCurrentFrame(const MemRegion *R, in isNotInCurrentFrame() 137 SmallVector<const MemRegion *, 4> 140 SmallVector<const MemRegion *, 4> Regions; in getCapturedStackRegions() [all …]
|
D | PointerArithChecker.cpp | 50 const MemRegion *getArrayRegion(const MemRegion *Region, bool &Polymorphic, 52 const MemRegion *getPointedRegion(const MemRegion *Region, 74 REGISTER_MAP_WITH_PROGRAMSTATE(RegionState, const MemRegion *, AllocKind) in REGISTER_MAP_WITH_PROGRAMSTATE() argument 104 const MemRegion * 105 PointerArithChecker::getPointedRegion(const MemRegion *Region, in getPointedRegion() 117 const MemRegion *PointerArithChecker::getArrayRegion(const MemRegion *Region, in getArrayRegion() 156 const MemRegion *Region = C.getSVal(E).getAsRegion(); in reportPointerArithMisuse() 166 if (const MemRegion *ArrayRegion = in reportPointerArithMisuse() 190 Region->getKind() == MemRegion::Kind::SymbolicRegionKind) in reportPointerArithMisuse() 229 const MemRegion *Region = SV.getAsRegion(); in checkPostStmt() [all …]
|
D | SmartPtrModeling.cpp | 53 ArrayRef<const MemRegion *> ExplicitRegions, 54 ArrayRef<const MemRegion *> Regions, 67 const MemRegion *ThisRegion) const; 68 bool updateMovedSmartPointers(CheckerContext &C, const MemRegion *ThisRegion, 69 const MemRegion *OtherSmartPtrRegion) const; 82 REGISTER_MAP_WITH_PROGRAMSTATE(TrackedRegionMap, const MemRegion *, SVal) 104 bool isNullSmartPtr(const ProgramStateRef State, const MemRegion *ThisRegion) { in isNullSmartPtr() 117 const MemRegion *Region) { in removeTrackedSubregions() 128 const MemRegion *Region, in updateSwappedRegion() 162 const MemRegion *Region) { in checkAndPrettyPrintRegion() [all …]
|
D | Iterator.h | 30 const MemRegion *Cont; 38 IteratorPosition(const MemRegion *C, bool V, SymbolRef Of) in IteratorPosition() 42 const MemRegion *getContainer() const { return Cont; } in getContainer() 50 static IteratorPosition getPosition(const MemRegion *C, SymbolRef Of) { in getPosition() 58 IteratorPosition reAssign(const MemRegion *NewCont) const { in reAssign() 121 CLANG_ENTO_PROGRAMSTATE_MAP(const MemRegion *, IteratorPosition); 123 CLANG_ENTO_PROGRAMSTATE_MAP(const MemRegion *, ContainerData); 167 const MemRegion *Cont); 173 const MemRegion *Cont, const Stmt* S,
|
D | ValistChecker.cpp | 24 REGISTER_SET_WITH_PROGRAMSTATE(InitializedVALists, const MemRegion *) 27 typedef SmallVector<const MemRegion *, 2> RegionVector; 56 const MemRegion *getVAListAsRegion(SVal SV, const Expr *VAExpr, 59 const MemRegion *Reg) const; 61 void reportUninitializedAccess(const MemRegion *VAList, StringRef Msg, 73 ValistBugVisitor(const MemRegion *Reg, bool IsLeak = false) in ValistBugVisitor() 96 const MemRegion *Reg; 140 const MemRegion *VAList = in checkPreCall() 163 const MemRegion *ValistChecker::getVAListAsRegion(SVal SV, const Expr *E, in getVAListAsRegion() 166 const MemRegion *Reg = SV.getAsRegion(); in getVAListAsRegion() [all …]
|
D | ContainerModeling.cpp | 54 const MemRegion *ContReg, 114 bool hasSubscriptOperator(ProgramStateRef State, const MemRegion *Reg); 115 bool frontModifiable(ProgramStateRef State, const MemRegion *Reg); 116 bool backModifiable(ProgramStateRef State, const MemRegion *Reg); 117 SymbolRef getContainerBegin(ProgramStateRef State, const MemRegion *Cont); 118 SymbolRef getContainerEnd(ProgramStateRef State, const MemRegion *Cont); 120 const MemRegion *Cont, const Expr *E, 123 ProgramStateRef createContainerEnd(ProgramStateRef State, const MemRegion *Cont, 127 ProgramStateRef setContainerData(ProgramStateRef State, const MemRegion *Cont, 130 const MemRegion *Cont); [all …]
|
/external/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/ |
D | MPIChecker.cpp | 30 const MemRegion *const MR = in checkDoubleNonblocking() 60 const MemRegion *const MR = topRegionUsedByWait(PreCallEvent); in checkUnmatchedWaits() 69 llvm::SmallVector<const MemRegion *, 2> ReqRegions; in checkUnmatchedWaits() 135 const MemRegion *MPIChecker::topRegionUsedByWait(const CallEvent &CE) const { in topRegionUsedByWait() 142 return (const MemRegion *)nullptr; in topRegionUsedByWait() 147 llvm::SmallVector<const MemRegion *, 2> &ReqRegions, in allRegionsUsedByWait() argument 148 const MemRegion *const MR, const CallEvent &CE, CheckerContext &Ctx) const { in allRegionsUsedByWait() 153 const MemRegion *SuperRegion{nullptr}; in allRegionsUsedByWait() 176 ReqRegions.push_back(ER->getAs<MemRegion>()); in allRegionsUsedByWait()
|
D | MPIBugReporter.h | 45 const MemRegion *const RequestRegion, 58 const MemRegion *const RequestRegion, 69 const MemRegion *const RequestRegion, 85 RequestNodeVisitor(const MemRegion *const MemoryRegion, in RequestNodeVisitor() 101 const MemRegion *const RequestRegion;
|
/external/llvm-project/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/ |
D | MPIBugReporter.h | 44 const MemRegion *const RequestRegion, 55 const MemRegion *const RequestRegion, 66 const MemRegion *const RequestRegion, 82 RequestNodeVisitor(const MemRegion *const MemoryRegion, in RequestNodeVisitor() 97 const MemRegion *const RequestRegion;
|
D | MPIChecker.cpp | 30 const MemRegion *const MR = in checkDoubleNonblocking() 61 const MemRegion *const MR = topRegionUsedByWait(PreCallEvent); in checkUnmatchedWaits() 70 llvm::SmallVector<const MemRegion *, 2> ReqRegions; in checkUnmatchedWaits() 135 const MemRegion *MPIChecker::topRegionUsedByWait(const CallEvent &CE) const { in topRegionUsedByWait() 142 return (const MemRegion *)nullptr; in topRegionUsedByWait() 147 llvm::SmallVector<const MemRegion *, 2> &ReqRegions, in allRegionsUsedByWait() argument 148 const MemRegion *const MR, const CallEvent &CE, CheckerContext &Ctx) const { in allRegionsUsedByWait() 177 ReqRegions.push_back(ER->getAs<MemRegion>()); in allRegionsUsedByWait()
|