diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-04-09 22:22:44 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-04-09 22:22:44 +0000 |
commit | 8d7f5481a0eeb4c0508202a4bd2b754cfa93c4fe (patch) | |
tree | fbd4f2479b757e9694ffa66acf47cb6a12e72496 /lib/Analysis/BasicStore.cpp | |
parent | c612f7bc9a6379cd7e7c2dd306d05938e890051b (diff) |
- Move ownership of MemRegionManager into ValueManager.
- Pull SVal::GetConjuredSymbol() and friends into ValueManager. This greatly
simplifies the calling interface to clients.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68731 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/BasicStore.cpp')
-rw-r--r-- | lib/Analysis/BasicStore.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/Analysis/BasicStore.cpp b/lib/Analysis/BasicStore.cpp index c1efb983c0..5c234549a4 100644 --- a/lib/Analysis/BasicStore.cpp +++ b/lib/Analysis/BasicStore.cpp @@ -40,7 +40,7 @@ class VISIBILITY_HIDDEN BasicStoreManager : public StoreManager { public: BasicStoreManager(GRStateManager& mgr) - : StoreManager(mgr.getAllocator()), + : StoreManager(mgr.getValueManager()), VBFactory(mgr.getAllocator()), StateMgr(mgr), SelfRegion(0) {} @@ -478,11 +478,8 @@ Store BasicStoreManager::scanForIvars(Stmt *B, const Decl* SelfDecl, Store St) { if (const DeclRefExpr *DR = dyn_cast<DeclRefExpr>(Base)) { if (DR->getDecl() == SelfDecl) { const MemRegion *IVR = MRMgr.getObjCIvarRegion(IV->getDecl(), - SelfRegion); - - SVal X = SVal::GetRValueSymbolVal(StateMgr.getSymbolManager(), - MRMgr, IVR); - + SelfRegion); + SVal X = ValMgr.getRValueSymbolVal(IVR); St = BindInternal(St, Loc::MakeVal(IVR), X); } } @@ -538,7 +535,7 @@ Store BasicStoreManager::getInitialStore() { const MemRegion *R = StateMgr.getRegion(VD); SVal X = (VD->hasGlobalStorage() || isa<ParmVarDecl>(VD) || isa<ImplicitParamDecl>(VD)) - ? SVal::GetRValueSymbolVal(StateMgr.getSymbolManager(), MRMgr,R) + ? ValMgr.getRValueSymbolVal(R) : UndefinedVal(); St = BindInternal(St, Loc::MakeVal(R), X); |