diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-04-29 23:58:03 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-04-29 23:58:03 +0000 |
commit | ad87d25ef55c7cf8984b5557aa235f3884adb141 (patch) | |
tree | 372bd6d76a611f86493874620b2ec6a4e20237c1 /lib/Analysis/ValueState.cpp | |
parent | e2013f5646cb4a09b71e2708fbe9f8df43f5d7d6 (diff) |
Simplify RemoveDeadBindings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50458 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/ValueState.cpp')
-rw-r--r-- | lib/Analysis/ValueState.cpp | 26 |
1 files changed, 9 insertions, 17 deletions
diff --git a/lib/Analysis/ValueState.cpp b/lib/Analysis/ValueState.cpp index edc5b6d004..19ff06f004 100644 --- a/lib/Analysis/ValueState.cpp +++ b/lib/Analysis/ValueState.cpp @@ -106,26 +106,18 @@ ValueStateManager::RemoveDeadBindings(ValueState* St, Stmt* Loc, Marked.insert(V); - if (V->getType()->isPointerType()) { + RVal X = GetRVal(St, lval::DeclVal(cast<VarDecl>(V))); - RVal X = GetRVal(St, lval::DeclVal(cast<VarDecl>(V))); - - if (X.isUnknownOrUndef()) - continue; - - LVal LV = cast<LVal>(X); - - for (RVal::symbol_iterator SI = LV.symbol_begin(), SE = LV.symbol_end(); - SI != SE; ++SI) { - MarkedSymbols.insert(*SI); - } + for (RVal::symbol_iterator SI = X.symbol_begin(), SE = X.symbol_end(); + SI != SE; ++SI) { + MarkedSymbols.insert(*SI); + } - if (!isa<lval::DeclVal>(LV)) - continue; + if (!isa<lval::DeclVal>(X)) + continue; - const lval::DeclVal& LVD = cast<lval::DeclVal>(LV); - WList.push_back(LVD.getDecl()); - } + const lval::DeclVal& LVD = cast<lval::DeclVal>(X); + WList.push_back(LVD.getDecl()); } // Remove dead variable bindings. |