| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Core/ |
| H A D | Store.cpp | 60 const ElementRegion *StoreManager::MakeElementRegion(const SubRegion *Base, in MakeElementRegion() 67 const ElementRegion *StoreManager::GetElementZeroRegion(const SubRegion *R, in GetElementZeroRegion() 149 return MakeElementRegion(cast<SubRegion>(R), PointeeTy); in castRegion() 189 return MakeElementRegion(cast<SubRegion>(baseR), PointeeTy); in castRegion() 220 newSuperR = MakeElementRegion(cast<SubRegion>(baseR), Ctx.CharTy, in castRegion() 298 BaseDecl, cast<SubRegion>(DerivedReg), IsVirtual); in evalDerivedToBase() 403 const SubRegion* BaseR = nullptr; in getLValueFieldOrIvar() 407 BaseR = cast<SubRegion>(BaseL.castAs<loc::MemRegionVal>().getRegion()); in getLValueFieldOrIvar() 468 const SubRegion *BaseRegion = in getLValueElement() 469 Base.castAs<loc::MemRegionVal>().getRegionAs<SubRegion>(); in getLValueElement() [all …]
|
| H A D | RegionStore.cpp | 54 explicit BindingKey(const SubRegion *r, const SubRegion *Base, Kind k) in BindingKey() 118 return BindingKey(cast<SubRegion>(R), cast<SubRegion>(RO.getRegion()), k); in Make() 601 std::pair<Store, const SubRegion *> 648 if (const SubRegion *R = dyn_cast<SubRegion>(K.getRegion())) { in iterBindings() 813 R = cast<SubRegion>(R)->getSuperRegion(); in getSymbolicOffsetFields() 906 } else if (const SubRegion *BaseSR = dyn_cast<SubRegion>(Base)) { in collectSubRegionBindings() 1386 const SubRegion *R = in ArrayToPointer() 1575 std::pair<Store, const SubRegion *> 2114 const SubRegion *SR = R; in getBindingForFieldOrElementCommon() 2134 SR = dyn_cast<SubRegion>(Base); in getBindingForFieldOrElementCommon() [all …]
|
| H A D | MemRegion.cpp | 134 bool SubRegion::isSubRegionOf(const MemRegion* R) const { in isSubRegionOf() 139 if (const auto *sr = dyn_cast<SubRegion>(r)) in isSubRegionOf() 147 MemRegionManager &SubRegion::getMemRegionManager() const { in getMemRegionManager() 148 const SubRegion* r = this; in getMemRegionManager() 435 void SubRegion::anchor() {} in anchor() 738 const auto *SR = cast<SubRegion>(MR); in getStaticSize() 1263 const auto *SR = dyn_cast<SubRegion>(this); in getMemorySpace() 1267 SR = dyn_cast<SubRegion>(R); in getMemorySpace() 1300 R = cast<SubRegion>(R)->getSuperRegion(); in getBaseRegion() 1351 const auto *SubR = dyn_cast<SubRegion>(this); in getSymbolicBase() [all …]
|
| H A D | SymbolManager.cpp | 219 SymbolManager::getExtentSymbol(const SubRegion *R) { in getExtentSymbol() 419 for (auto SR = dyn_cast<SubRegion>(region); SR; in markElementIndicesLive() 420 SR = dyn_cast<SubRegion>(SR->getSuperRegion())) { in markElementIndicesLive()
|
| H A D | ExprEngineCXX.cpp | 141 const auto *ThisReg = cast<SubRegion>(ThisVal.getAsRegion()); in computeObjectUnderConstruction() 171 if (const SubRegion *MR = in computeObjectUnderConstruction() 172 dyn_cast_or_null<SubRegion>(V.getAsRegion())) { in computeObjectUnderConstruction() 1001 if (const auto *NewReg = cast_or_null<SubRegion>(symVal.getAsRegion())) { in VisitCXXNewExpr()
|
| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Checkers/ |
| H A D | Taint.cpp | 25 REGISTER_MAP_FACTORY_WITH_PROGRAMSTATE(TaintedSubRegions, const SubRegion *, in REGISTER_MAP_WITH_PROGRAMSTATE() 125 const SubRegion *SubRegion, in addPartialTaint() argument 133 if (SubRegion == SubRegion->getBaseRegion()) in addPartialTaint() 140 Regs = F.add(Regs, SubRegion, Kind); in addPartialTaint() 174 if (const SubRegion *ER = dyn_cast<SubRegion>(Reg)) in isTainted()
|
| H A D | MacOSXAPIChecker.cpp | 56 const SubRegion *SR = dyn_cast<SubRegion>(R); in getParentIvarRegion() 60 SR = dyn_cast<SubRegion>(SR->getSuperRegion()); in getParentIvarRegion()
|
| H A D | ArrayBoundCheckerV2.cpp | 49 const SubRegion *baseRegion; 56 RegionRawOffsetV2(const SubRegion* base, SVal offset) in RegionRawOffsetV2() 60 const SubRegion *getRegion() const { return baseRegion; } in getRegion() 316 if (const SubRegion *subReg = dyn_cast<SubRegion>(region)) { in computeOffset()
|
| H A D | ObjCSuperDeallocChecker.cpp | 148 while (const SubRegion *SR = dyn_cast<SubRegion>(R)) { in checkLocation()
|
| /llvm-project-15.0.7/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ |
| H A D | MemRegion.h | 442 class SubRegion : public MemRegion { 474 class AllocaRegion : public SubRegion { 507 class TypedRegion : public SubRegion { 511 TypedRegion(const MemRegion *sReg, Kind k) : SubRegion(sReg, k) { in TypedRegion() 770 class SymbolicRegion : public SubRegion { 776 : SubRegion(sreg, SymbolicRegionKind), sym(s) { in SymbolicRegion() 1089 FieldRegion(const FieldDecl *fd, const SubRegion *sReg) in FieldRegion() 1129 ObjCIvarRegion(const ObjCIvarDecl *ivd, const SubRegion *sReg); 1254 const SubRegion *SReg) in CXXBaseObjectRegion() 1490 const SubRegion *superRegion) { in getCXXBaseObjectRegionWithSuper() [all …]
|
| H A D | Regions.def | 57 ABSTRACT_REGION(SubRegion, MemRegion) 58 REGION(AllocaRegion, SubRegion) 59 REGION(SymbolicRegion, SubRegion) 60 ABSTRACT_REGION(TypedRegion, SubRegion)
|
| H A D | SymbolManager.h | 179 const SubRegion *R; 182 SymbolExtent(SymbolID sym, const SubRegion *r) in SymbolExtent() 188 const SubRegion *getRegion() const { return R; } in getRegion() 196 static void Profile(llvm::FoldingSetNodeID& profile, const SubRegion *R) { in Profile() 523 const SymbolExtent *getExtentSymbol(const SubRegion *R);
|
| H A D | Store.h | 179 const ElementRegion *GetElementZeroRegion(const SubRegion *R, QualType T); 280 const ElementRegion *MakeElementRegion(const SubRegion *baseRegion,
|
| H A D | ProgramState.h | 347 Loc getLValue(const CXXBaseSpecifier &BaseSpec, const SubRegion *Super) const; 350 Loc getLValue(const CXXRecordDecl *BaseClass, const SubRegion *Super, 754 const SubRegion *Super) const { in getLValue() 762 const SubRegion *Super, in getLValue()
|
| /llvm-project-15.0.7/llvm/include/llvm/Analysis/ |
| H A D | RegionInfoImpl.h | 391 void RegionBase<Tr>::addSubRegion(RegionT *SubRegion, bool moveChildren) { in addSubRegion() argument 392 assert(!SubRegion->parent && "SubRegion already has a parent!"); in addSubRegion() 395 return R.get() == SubRegion; in addSubRegion() 399 SubRegion->parent = static_cast<RegionT *>(this); in addSubRegion() 400 children.push_back(std::unique_ptr<RegionT>(SubRegion)); in addSubRegion() 405 assert(SubRegion->children.empty() && in addSubRegion() 412 if (SubRegion->contains(BB)) in addSubRegion() 413 RI->setRegionFor(BB, SubRegion); in addSubRegion() 419 if (SubRegion->contains(R.get()) && R.get() != SubRegion) { in addSubRegion() 420 R->parent = SubRegion; in addSubRegion() [all …]
|
| H A D | RegionInfo.h | 454 bool contains(const RegionT *SubRegion) const { 459 return contains(SubRegion->getEntry()) && 460 (contains(SubRegion->getExit()) || 461 SubRegion->getExit() == getExit()); 526 void addSubRegion(RegionT *SubRegion, bool moveChildren = false); 533 RegionT *removeSubRegion(RegionT *SubRegion);
|
| /llvm-project-15.0.7/clang/include/clang/StaticAnalyzer/Checkers/ |
| H A D | Taint.h | 61 ProgramStateRef State, SymbolRef ParentSym, const SubRegion *SubRegion,
|
| /llvm-project-15.0.7/llvm/lib/Transforms/IPO/ |
| H A D | HotColdSplitting.cpp | 554 BlockSequence SubRegion = {SuggestedEntryPoint}; in takeSingleEntrySubRegion() local 568 SubRegion.push_back(BB); in takeSingleEntrySubRegion() 576 return SubRegion; in takeSingleEntrySubRegion() 668 BlockSequence SubRegion = Region.takeSingleEntrySubRegion(*DT); in outlineColdRegions() local 671 for (BasicBlock *BB : SubRegion) in outlineColdRegions() 675 Function *Outlined = extractColdRegion(SubRegion, CEAC, *DT, BFI, TTI, in outlineColdRegions()
|
| /llvm-project-15.0.7/polly/lib/Analysis/ |
| H A D | ScopGraphPrinter.cpp | 113 for (const auto &SubRegion : *R) in printRegionCluster() 114 printRegionCluster(SD, SubRegion.get(), O, depth + 1); in printRegionCluster()
|
| H A D | ScopDetection.cpp | 1545 for (auto &SubRegion : R) { in removeCachedResultsRecursively() local 1546 if (ValidRegions.count(SubRegion.get())) { in removeCachedResultsRecursively() 1547 removeCachedResults(*SubRegion.get()); in removeCachedResultsRecursively() 1549 removeCachedResultsRecursively(*SubRegion); in removeCachedResultsRecursively() 1578 for (auto &SubRegion : R) in findScops() local 1579 findScops(*SubRegion); in findScops() 1589 for (auto &SubRegion : R) in findScops() local 1590 ToExpand.push_back(SubRegion.get()); in findScops()
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanVerifier.cpp | 121 if (const auto *SubRegion = dyn_cast<VPRegionBlock>(VPB)) in verifyRegionRec() local 122 verifyRegionRec(SubRegion); in verifyRegionRec()
|
| /llvm-project-15.0.7/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/ |
| H A D | MPIChecker.cpp | 153 const SubRegion *SuperRegion{nullptr}; in allRegionsUsedByWait() 155 SuperRegion = cast<SubRegion>(ER->getSuperRegion()); in allRegionsUsedByWait()
|
| /llvm-project-15.0.7/llvm/test/Transforms/StructurizeCFG/AMDGPU/ |
| H A D | loop-subregion-misordered.ll | 10 ; However, we found a problem for a SubRegion which is a loop itself: 16 ; In this case, BB2 is a SubRegion (loop), and thus its loopdepth is different than that of 19 ; In this work, we treat the SubRegion as a special case and use its exit block to determine
|
| /llvm-project-15.0.7/llvm/lib/Transforms/Scalar/ |
| H A D | StructurizeCFG.cpp | 712 Region *SubRegion = Node->getNodeAs<Region>(); in changeExit() local 713 BasicBlock *OldExit = SubRegion->getExit(); in changeExit() 719 if (!SubRegion->contains(BB)) in changeExit() 741 SubRegion->replaceExit(NewExit); in changeExit()
|
| /llvm-project-15.0.7/clang/unittests/StaticAnalyzer/ |
| H A D | StoreTest.cpp | 127 const SubRegion *CLRegion = MRManager.getCompoundLiteralRegion(CL, SFC); in performTest()
|