Home
last modified time | relevance | path

Searched refs:MemRegion (Results 1 – 25 of 78) sorted by relevance

1234

/external/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
DMemRegion.h49 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 …]
DStore.h72 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 …]
DSubEngine.h41 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,
DDynamicTypeMap.h27 typedef llvm::ImmutableMap<const MemRegion *, DynamicTypeInfo>
40 const MemRegion *Reg);
43 ProgramStateRef setDynamicTypeInfo(ProgramStateRef State, const MemRegion *Reg,
48 const MemRegion *Reg, QualType NewTy,
DSymbolManager.h61 const MemRegion *getOriginRegion() const override { return getRegion(); } in getOriginRegion()
131 const MemRegion *getOriginRegion() const override { return getRegion(); } in getOriginRegion()
186 const MemRegion* R;
192 SymbolMetadata(SymbolID sym, const MemRegion* r, const Stmt *s, QualType t, in SymbolMetadata()
196 const MemRegion *getRegion() const { return R; } in getRegion()
205 static void Profile(llvm::FoldingSetNodeID& profile, const MemRegion *R, in Profile()
437 const SymbolMetadata *getMetadataSymbol(const MemRegion *R, const Stmt *S,
483 typedef llvm::DenseSet<const MemRegion *> RegionSetTy;
495 llvm::DenseMap<const MemRegion *, unsigned> includedRegionCache;
513 bool isLiveRegion(const MemRegion *region);
[all …]
DRegions.def1 //===-- Regions.def - Metadata about MemRegion kinds ------------*- C++ -*-===//
10 // The list of regions (MemRegion sub-classes) used in the Static Analyzer.
14 // REGION(Id, Parent) - for specific MemRegion sub-classes, reserving
37 ABSTRACT_REGION(MemSpaceRegion, MemRegion)
58 ABSTRACT_REGION(SubRegion, MemRegion)
DProgramState.h261 invalidateRegions(ArrayRef<const MemRegion *> Regions, const Expr *E,
311 SVal getSVal(const MemRegion* R) const;
313 SVal getSValAsScalarOrLoc(const MemRegion *R) const;
331 bool scanReachableSymbols(const MemRegion * const *I,
332 const MemRegion * const *E,
340 scanReachableSymbols(const MemRegion * const *beg,
341 const MemRegion * const *end) const;
352 ProgramStateRef addTaint(const MemRegion *R,
360 bool isTainted(const MemRegion *Reg, TaintTagType Kind=TaintTagGeneric) const;
751 inline SVal ProgramState::getSVal(const MemRegion* R) const { in getSVal()
[all …]
/external/clang/lib/StaticAnalyzer/Core/
DStore.cpp45 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 …]
DMemRegion.cpp58 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 …]
DRegionStore.cpp49 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 …]
DSVals.cpp40 const MemRegion *R = RV->getRegion(); in hasConjuredSymbol()
53 const MemRegion* R = X->getRegion(); in getAsFunctionDecl()
75 const MemRegion *R = X->getRegion(); in getAsLocSymbol()
91 const MemRegion *R = X->getRegion(); in getLocSymbolInBase()
135 const MemRegion *SVal::getAsRegion() const { in getAsRegion()
145 const MemRegion *loc::MemRegionVal::stripCasts(bool StripBaseCasts) const { in stripCasts()
146 const MemRegion *R = getRegion(); in stripCasts()
DProgramState.cpp118 const MemRegion *MR = LV.getAsRegion(); in bindLoc()
127 const MemRegion *R = loc.castAs<loc::MemRegionVal>().getRegion(); in bindDefault()
135 typedef ArrayRef<const MemRegion *> RegionList;
235 SVal ProgramState::getSValAsScalarOrLoc(const MemRegion *R) const { in getSValAsScalarOrLoc()
517 const MemRegion *R = val.getRegion()->getBaseRegion(); in scan()
582 bool ScanReachableSymbols::scan(const MemRegion *R) { in scan()
600 const MemRegion *Super = SR->getSuperRegion(); in scan()
640 bool ProgramState::scanReachableSymbols(const MemRegion * const *I, in scanReachableSymbols()
641 const MemRegion * const *E, in scanReachableSymbols()
661 const MemRegion *R = getSVal(S, LCtx).getAsRegion(); in addTaint()
[all …]
/external/clang/lib/StaticAnalyzer/Checkers/
DPointerArithChecker.cpp52 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 …]
DStackAddrEscapeChecker.cpp38 void EmitStackError(CheckerContext &C, const MemRegion *R,
40 static SourceRange genName(raw_ostream &os, const MemRegion *R,
45 SourceRange StackAddrEscapeChecker::genName(raw_ostream &os, const MemRegion *R, in genName()
95 void StackAddrEscapeChecker::EmitStackError(CheckerContext &C, const MemRegion *R, in EmitStackError()
129 const MemRegion *R = V.getAsRegion(); in checkPreStmt()
181 SmallVector<std::pair<const MemRegion*, const MemRegion*>, 10> V; in checkEndFunction()
189 const MemRegion *region, SVal val) override { in checkEndFunction()
194 const MemRegion *vR = val.getAsRegion(); in checkEndFunction()
DCStringChecker.cpp71 ArrayRef<const MemRegion *> ExplicitRegions,
72 ArrayRef<const MemRegion *> Regions,
131 const MemRegion *MR,
136 const MemRegion *MR,
156 const MemRegion *MR);
213 REGISTER_MAP_WITH_PROGRAMSTATE(CStringLength, const MemRegion *, SVal) in REGISTER_MAP_WITH_PROGRAMSTATE() argument
284 const MemRegion *R = l.getAsRegion(); in CheckLocation()
633 const MemRegion *MR, in setCStringLength()
640 case MemRegion::StringRegionKind: in setCStringLength()
645 case MemRegion::SymbolicRegionKind: in setCStringLength()
[all …]
DPointerSubChecker.cpp47 const MemRegion *LR = LV.getAsRegion(); in checkPreStmt()
48 const MemRegion *RR = RV.getAsRegion(); in checkPreStmt()
53 const MemRegion *BaseLR = LR->getBaseRegion(); in checkPreStmt()
54 const MemRegion *BaseRR = RR->getBaseRegion(); in checkPreStmt()
DVforkChecker.cpp169 const MemRegion *LhsDeclReg = in checkPostCall()
172 : (const MemRegion *)VFORK_RESULT_NONE; in checkPostCall()
198 const MemRegion *VforkLhs = in checkBind()
199 static_cast<const MemRegion *>(State->get<VforkResultRegion>()); in checkBind()
200 const MemRegion *MR = L.getAsRegion(); in checkBind()
DPthreadLockChecker.cpp77 REGISTER_LIST_WITH_PROGRAMSTATE(LockSet, const MemRegion *) in REGISTER_LIST_WITH_PROGRAMSTATE() argument
79 REGISTER_MAP_WITH_PROGRAMSTATE(LockMap, const MemRegion *, LockState) in REGISTER_LIST_WITH_PROGRAMSTATE()
128 const MemRegion *lockR = lock.getAsRegion(); in AcquireLock()
196 const MemRegion *lockR = lock.getAsRegion(); in ReleaseLock()
226 const MemRegion *firstLockR = LS.getHead(); in ReleaseLock()
251 const MemRegion *LockR = Lock.getAsRegion(); in DestroyLock()
286 const MemRegion *LockR = Lock.getAsRegion(); in InitLock()
DDynamicTypeChecker.cpp44 DynamicTypeBugVisitor(const MemRegion *Reg) : Reg(Reg) {} in DynamicTypeBugVisitor()
59 const MemRegion *Reg;
63 const MemRegion *Reg, const Stmt *ReportedNode,
73 const MemRegion *Reg, in reportTypeError()
169 const MemRegion *Region = C.getSVal(CE).getAsRegion(); in checkPostStmt()
DArrayBoundCheckerV2.cpp69 const MemRegion *region) { in computeExtentBegin()
74 case MemRegion::SymbolicRegionKind: in computeExtentBegin()
78 case MemRegion::ElementRegionKind: in computeExtentBegin()
260 const MemRegion *region = location.getAsRegion(); in computeOffset()
273 case MemRegion::ElementRegionKind: { in computeOffset()
DNullabilityChecker.cpp148 NullabilityBugVisitor(const MemRegion *M) : Region(M) {} in NullabilityBugVisitor()
163 const MemRegion *Region;
172 ExplodedNode *N, const MemRegion *Region,
178 const MemRegion *Region, BugReporter &BR, in reportBug()
247 REGISTER_MAP_WITH_PROGRAMSTATE(NullabilityMap, const MemRegion *,
297 const MemRegion *Region = RegionSVal->getRegion(); in getTrackRegion()
459 ErrorKind Error, ExplodedNode *N, const MemRegion *Region, in reportBugIfInvariantHolds()
506 const MemRegion *Region = in checkEvent()
633 const MemRegion *Region = getTrackRegion(*RetSVal); in checkPreStmt()
722 const MemRegion *Region = getTrackRegion(*ArgSVal); in checkPreCall()
[all …]
/external/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/
DMPIChecker.cpp30 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()
DMPIBugReporter.h45 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;
DMPIChecker.h88 llvm::SmallVector<const clang::ento::MemRegion *, 2> &ReqRegions,
89 const clang::ento::MemRegion *const MR, const clang::ento::CallEvent &CE,
96 const clang::ento::MemRegion *
/external/clang/include/clang/StaticAnalyzer/Core/BugReporter/
DBugReporterVisitor.h29 class MemRegion; variable
101 const MemRegion *R;
115 FindLastStoreBRVisitor(KnownSVal V, const MemRegion *R, in FindLastStoreBRVisitor()
286 const MemRegion *R;
289 UndefOrNullArgVisitor(const MemRegion *InR) : R(InR) {} in UndefOrNullArgVisitor()

1234