Release 1.0.04
From WalaWiki
We will periodically tag the subversion repository with release numbers. To check out a particular release, see the tags branch of the subversion repository.
- Previous Release: Release 1.0.03
- Next Release: Release 1.1
- Subversion path: https://wala.svn.sourceforge.net/svnroot/wala/tags/R_1.0.04/
- Date: August 14 2007
[edit]
ChangeLog
Changes since Release 1.0.03:
- New features
- Manu Sridharan's demand-driven pointer analysis
- logic package: CNF and related formula simplifications
- PartialCallGraph
- Graphs with edge labels (contributed by Manu Sridharan and Juergen Graf)
- Code cleanup
- clean up instances of local variables shadowing fields
- more type parameters
- use HashSetFactory and HashMapFactory everywhere
- API Changes
- Bumped up prerequisites to Eclipse 3.3 and EMF 2.3.0
- Nuke WarningSet and introduce new static dictionary Warnings.
- Allow CGNode to dwell in more than one call graph. Delete CGNode.getCallGraph(). Lift getPossibleTargets and getPossibleSites from CGNode to CallGraph
- Remove some unnecessary parameters from various methods
- Delete DFSVisit. Use methods from class DFS instead.
- Changed semantics of instruction index in NormalStatement to indicate IR instruction index.
- Remove CallGraph.dump
- Significant changes in logic formula APIs
- Remove ExpandedControlFlowGraph; use new ExplodedControlFlowGraph instead.
- Rename com.ibm.wala.cfg.getTrueSuccessor/getFalseSuccessor to getTakenSuccessor/getNotTakenSuccessor. Throw IllegalArgumentException if the last instruction is not a conditional branch.
- Introduce a new AnalysisCache object to decouple IR caching from the AnalysisOptions ... the new AnalysisCache is threaded through many APIs.
- Bug Fixes
- misc slicing bugs reported on mailing list by Sameer Madan
- fix instruction index for SingleInstructionBasicBlock
- SimpleVector.iterator() ... don't return trailing null values
- fix SSACFG.BasicBlock.iteratePhis() so the iterator never returns a null phi instruction
- fix IR construction so that unreachable paths to phis always result in an operand of TOP (-1) and never 0
