Lines Matching refs:Region

50   const MemRegion *getArrayRegion(const MemRegion *Region, bool &Polymorphic,
52 const MemRegion *getPointedRegion(const MemRegion *Region,
105 PointerArithChecker::getPointedRegion(const MemRegion *Region,
107 assert(Region);
109 SVal S = State->getSVal(Region);
117 const MemRegion *PointerArithChecker::getArrayRegion(const MemRegion *Region,
121 assert(Region);
122 while (const auto *BaseRegion = dyn_cast<CXXBaseObjectRegion>(Region)) {
123 Region = BaseRegion->getSuperRegion();
126 if (const auto *ElemRegion = dyn_cast<ElementRegion>(Region)) {
127 Region = ElemRegion->getSuperRegion();
131 if (const AllocKind *Kind = State->get<RegionState>(Region)) {
134 return Region;
140 if (isa<SymbolicRegion>(Region))
141 return Region;
156 const MemRegion *Region = C.getSVal(E).getAsRegion();
157 if (!Region)
160 Region = getPointedRegion(Region, C);
161 if (!Region)
167 getArrayRegion(Region, IsPolymorphic, Kind, C)) {
190 Region->getKind() == MemRegion::Kind::SymbolicRegionKind)
202 R->markInteresting(Region);
229 const MemRegion *Region = SV.getAsRegion();
230 if (!Region)
236 State = State->set<RegionState>(Region, AllocKind::Array);
250 const MemRegion *Region = AllocedVal.getAsRegion();
251 if (!Region)
253 State = State->set<RegionState>(Region, Kind);
266 const MemRegion *Region = CastedVal.getAsRegion();
267 if (!Region)
271 State = State->set<RegionState>(Region, AllocKind::Reinterpreted);
284 const MemRegion *Region = CastedVal.getAsRegion();
285 if (!Region)
288 if (const AllocKind *Kind = State->get<RegionState>(Region)) {
292 State = State->set<RegionState>(Region, AllocKind::Array);