From: Ted Kremenek Date: Tue, 26 Oct 2010 00:06:15 +0000 (+0000) Subject: Move 'includeGlobals' as a field into ClusterAnalysis. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d45d59f4aebfe6399437074ed5391928c73993bb;p=clang Move 'includeGlobals' as a field into ClusterAnalysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117335 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Checker/RegionStore.cpp b/lib/Checker/RegionStore.cpp index 91f7cfaf6c..95d082ee44 100644 --- a/lib/Checker/RegionStore.cpp +++ b/lib/Checker/RegionStore.cpp @@ -456,12 +456,14 @@ protected: ValueManager &ValMgr; RegionBindings B; + + const bool includeGlobals; public: ClusterAnalysis(RegionStoreManager &rm, GRStateManager &StateMgr, - RegionBindings b) + RegionBindings b, const bool includeGlobals) : RM(rm), Ctx(StateMgr.getContext()), ValMgr(StateMgr.getValueManager()), - B(b) {} + B(b), includeGlobals(includeGlobals) {} RegionBindings getRegionBindings() const { return B; } @@ -487,7 +489,7 @@ public: return *CRef; } - void GenerateClusters(bool includeGlobals = false) { + void GenerateClusters() { // Scan the entire set of bindings and make the region clusters. for (RegionBindings::iterator RI = B.begin(), RE = B.end(); RI != RE; ++RI){ RegionCluster &C = AddToCluster(RI.getKey()); @@ -574,8 +576,9 @@ public: RegionBindings b, const Expr *ex, unsigned count, StoreManager::InvalidatedSymbols *is, - StoreManager::InvalidatedRegions *r) - : ClusterAnalysis(rm, stateMgr, b), + StoreManager::InvalidatedRegions *r, + bool includeGlobals) + : ClusterAnalysis(rm, stateMgr, b, includeGlobals), Ex(ex), Count(count), IS(is), Regions(r) {} void VisitCluster(const MemRegion *baseR, BindingKey *I, BindingKey *E); @@ -698,10 +701,10 @@ Store RegionStoreManager::InvalidateRegions(Store store, InvalidatedRegions *Regions) { InvalidateRegionsWorker W(*this, StateMgr, RegionStoreManager::GetRegionBindings(store), - Ex, Count, IS, Regions); + Ex, Count, IS, Regions, invalidateGlobals); // Scan the bindings and generate the clusters. - W.GenerateClusters(invalidateGlobals); + W.GenerateClusters(); // Add I .. E to the worklist. for ( ; I != E; ++I) @@ -1612,7 +1615,8 @@ public: RemoveDeadBindingsWorker(RegionStoreManager &rm, GRStateManager &stateMgr, RegionBindings b, SymbolReaper &symReaper, const StackFrameContext *LCtx) - : ClusterAnalysis(rm, stateMgr, b), + : ClusterAnalysis(rm, stateMgr, b, + /* includeGlobals = */ false), SymReaper(symReaper), CurrentLCtx(LCtx) {} // Called by ClusterAnalysis.