summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/ValueManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix PR 4594 by refactoring almost all casting logic from GRExprEngine::VisitCastTed Kremenek2009-07-211-1/+4
| | | | | | | | | to SValuator::EvalCast. In the process, the StoreManagers now use this new cast machinery, and the hack in GRExprEngine::EvalBind to handle implicit casts involving OSAtomicCompareAndSwap and friends has been removed (and replaced with logic closer to the logic specific to those functions). llvm-svn: 76641
* Return CodeTextRegions for BlockPointerTypes in addition to ↵Ted Kremenek2009-07-181-9/+9
| | | | | | FunctionPointerTypes. llvm-svn: 76287
* Two changes:Ted Kremenek2009-07-161-0/+11
| | | | | | | | | | | | | (1) Moved the SValuator object from GRExprEngine to ValueManager. This allows ValueManager to use the SValuator when creating SVals. (2) Added ValueManager::makeArrayIndex() and ValueManager::convertToArrayIndex(), two SVal creation methods that will help RegionStoreManager always have a consistent set of SVals with the same integer size and type when reasoning about array indices. llvm-svn: 75882
* Introduced the notion of a "derived symbol" using the class SymbolDerived.Ted Kremenek2009-07-151-0/+16
| | | | | | | | SymbolDerived allows us to model symbolic values that are related to other symbols via a region hierarchy. For example, SymbolDerived can be used to model individual values of a symbolic array. llvm-svn: 75728
* Move all factory methods from SVal to ValueManager. API cleanup!Zhongxing Xu2009-06-231-27/+11
| | | | llvm-svn: 73954
* Split ValueManager method definitions into its own source file.Zhongxing Xu2009-06-231-0/+141
No functionality change. llvm-svn: 73952
OpenPOWER on IntegriCloud