summaryrefslogtreecommitdiffstats
path: root/clang/lib/Analysis/SimpleConstraintManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove loc::FuncVal.Zhongxing Xu2009-04-201-1/+0
| | | | llvm-svn: 69577
* Finally nuke loc::SymbolVal.Zhongxing Xu2009-04-101-11/+8
| | | | llvm-svn: 68771
* analyzer infrastructure: make a bunch of changes to symbolic expressions thatTed Kremenek2009-03-261-37/+57
| | | | | | | | | | | | | | | | Zhongxing and I discussed by email. Main changes: - Removed SymIntConstraintVal and SymIntConstraint - Added SymExpr as a parent class to SymbolData, SymSymExpr, SymIntExpr - Added nonloc::SymExprVal to wrap SymExpr - SymbolRef is now just a typedef of 'const SymbolData*' - Bunch of minor code cleanups in how some methods were invoked (no functionality change) This changes are part of a long-term plan to have full symbolic expression trees. This will be useful for lazily evaluating complicated expressions. llvm-svn: 67731
* This patch adds two more SymbolData subclasses: SymIntExpr and SymSymExpr, forZhongxing Xu2009-03-251-22/+11
| | | | | | | | representing symbolic expressions like 'x'+3 and 'x'+'y'. The design is subjected to change later when we fix the class hierarchy of symbolic expressions. llvm-svn: 67678
* analyzer: Provide temporary workaround for false positive reported byTed Kremenek2009-03-231-0/+11
| | | | | | | <rdar://problem/6704930> involving SimpleConstraintManager not reasoning well about symbolic constraint values involving arithmetic operators. llvm-svn: 67534
* SimpleConstraintManager doesn't reason about bitwise-constraints on symbolicTed Kremenek2009-03-111-0/+13
| | | | | | | values. Indicating this in 'canReasonAbout' allows GRExprEngine to recover path-sensitivity in some cases. llvm-svn: 66628
* Added method "canReasonAbout" to ConstraintManager. This method returns true ifTed Kremenek2009-03-111-0/+4
| | | | | | a ConstraintManager can usefully reason about the given SVal. llvm-svn: 66624
* Patch by Ben Laurie:Ted Kremenek2009-02-141-0/+230
ConstraintManager: - constify getSymVal() BasicConstraintManager: - Pull out logic that would be common to ConstraintManagers of a similar nature and put them in a parent class called 'SimpleConstraintManager'. RangeConstraintManager: - Added a new prototype ConstraintManager to track ranges of variables! This ConstraintManager keeps tracks of ranges of concrete integers that a symbolic integer may have. AnalysisConsumer: - Add driver option to use RangeConstraintManager with GRExprEngine-based analyses. llvm-svn: 64558
OpenPOWER on IntegriCloud