summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhongxing Xu <xuzhongxing@gmail.com>2009-03-09 09:31:22 +0000
committerZhongxing Xu <xuzhongxing@gmail.com>2009-03-09 09:31:22 +0000
commit7219d1bada7625dea51d2f8fc4e999f100468e8e (patch)
treef98c28857b3ccb57ab990a5ee7e886c7a9cd404a
parentce270a6dbc2b922c659dbdb3aec21c7c803d6d0a (diff)
downloadbcm5719-llvm-7219d1bada7625dea51d2f8fc4e999f100468e8e.tar.gz
bcm5719-llvm-7219d1bada7625dea51d2f8fc4e999f100468e8e.zip
Only track integer and pointer values.
llvm-svn: 66419
-rw-r--r--clang/lib/Analysis/RegionStore.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Analysis/RegionStore.cpp b/clang/lib/Analysis/RegionStore.cpp
index 433b05d996f..4c54721e349 100644
--- a/clang/lib/Analysis/RegionStore.cpp
+++ b/clang/lib/Analysis/RegionStore.cpp
@@ -751,8 +751,11 @@ SVal RegionStoreManager::Retrieve(const GRState* St, Loc L, QualType T) {
return UndefinedVal();
}
- // All other values are symbolic.
- return SVal::GetRValueSymbolVal(getSymbolManager(), R);
+ // All other integer values are symbolic.
+ if (Loc::IsLocType(RTy) || RTy->isIntegerType())
+ return SVal::GetRValueSymbolVal(getSymbolManager(), R);
+ else
+ return UnknownVal();
}
SVal RegionStoreManager::RetrieveStruct(const GRState* St,const TypedRegion* R){
OpenPOWER on IntegriCloud