diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-10-27 21:01:26 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-10-27 21:01:26 +0000 |
commit | 9a1f03afc569abbdcc182379c99d1fe1ece67c9d (patch) | |
tree | 088678ea6f5e5e43e871bb28da3dfb81d6a80de2 /lib/Analysis/MemRegion.cpp | |
parent | 329d6fde79254503b14724e1231a9d70fa6b387f (diff) |
Pull determination of the super region for a VarRegion into a single getVarRegion() method. This provides a common clean API for clients.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58272 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/MemRegion.cpp')
-rw-r--r-- | lib/Analysis/MemRegion.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/Analysis/MemRegion.cpp b/lib/Analysis/MemRegion.cpp index 8a7be0d564..27ecffdc06 100644 --- a/lib/Analysis/MemRegion.cpp +++ b/lib/Analysis/MemRegion.cpp @@ -189,8 +189,11 @@ StringRegion* MemRegionManager::getStringRegion(const StringLiteral* Str) { return R; } -VarRegion* MemRegionManager::getVarRegion(const VarDecl* d, - const MemRegion* superRegion) { +VarRegion* MemRegionManager::getVarRegion(const VarDecl* d) { + + const MemRegion* superRegion = d->hasLocalStorage() ? getStackRegion() + : getGlobalsRegion(); + llvm::FoldingSetNodeID ID; DeclRegion::ProfileRegion(ID, d, superRegion, MemRegion::VarRegionKind); |