diff options
author | Zhongxing Xu <xuzhongxing@gmail.com> | 2009-04-10 06:06:13 +0000 |
---|---|---|
committer | Zhongxing Xu <xuzhongxing@gmail.com> | 2009-04-10 06:06:13 +0000 |
commit | dadf250598950abf6cfab7053c3df19489d9bec5 (patch) | |
tree | 048616048550a0c586bd08f840a269ef2c98a5b5 /clang/lib/Analysis/SimpleConstraintManager.cpp | |
parent | bb72f7741608f258274cb3e413cdb02205544108 (diff) | |
download | bcm5719-llvm-dadf250598950abf6cfab7053c3df19489d9bec5.tar.gz bcm5719-llvm-dadf250598950abf6cfab7053c3df19489d9bec5.zip |
Finally nuke loc::SymbolVal.
llvm-svn: 68771
Diffstat (limited to 'clang/lib/Analysis/SimpleConstraintManager.cpp')
-rw-r--r-- | clang/lib/Analysis/SimpleConstraintManager.cpp | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/clang/lib/Analysis/SimpleConstraintManager.cpp b/clang/lib/Analysis/SimpleConstraintManager.cpp index 904479c4c3a..feaad191ef4 100644 --- a/clang/lib/Analysis/SimpleConstraintManager.cpp +++ b/clang/lib/Analysis/SimpleConstraintManager.cpp @@ -94,14 +94,6 @@ SimpleConstraintManager::AssumeAux(const GRState* St, Loc Cond, bool Assumption, assert (false && "'Assume' not implemented for this Loc."); return St; - case loc::SymbolValKind: - if (Assumption) - return AssumeSymNE(St, cast<loc::SymbolVal>(Cond).getSymbol(), - BasicVals.getZeroWithPtrWidth(), isFeasible); - else - return AssumeSymEQ(St, cast<loc::SymbolVal>(Cond).getSymbol(), - BasicVals.getZeroWithPtrWidth(), isFeasible); - case loc::MemRegionKind: { // FIXME: Should this go into the storemanager? @@ -110,9 +102,14 @@ SimpleConstraintManager::AssumeAux(const GRState* St, Loc Cond, bool Assumption, while (SubR) { // FIXME: now we only find the first symbolic region. - if (const SymbolicRegion* SymR = dyn_cast<SymbolicRegion>(SubR)) - return AssumeAux(St, loc::SymbolVal(SymR->getSymbol()), Assumption, - isFeasible); + if (const SymbolicRegion* SymR = dyn_cast<SymbolicRegion>(SubR)) { + if (Assumption) + return AssumeSymNE(St, SymR->getSymbol(), + BasicVals.getZeroWithPtrWidth(), isFeasible); + else + return AssumeSymEQ(St, SymR->getSymbol(), + BasicVals.getZeroWithPtrWidth(), isFeasible); + } SubR = dyn_cast<SubRegion>(SubR->getSuperRegion()); } |