Data Flow Analysis Framework
Purpose
Provides expert guidance on designing and implementing data-flow analyses for compiler optimization and program analysis.
Capabilities
- Forward/backward analysis specification
- Lattice definition and verification
- Transfer function generation
- Fixpoint computation (worklist algorithm)
- Analysis soundness verification
- Interprocedural analysis
Usage Guidelines
- Lattice Design: Define abstract domain and lattice
- Transfer Functions: Define transfer functions for statements
- Analysis Direction: Specify forward or backward
- Fixpoint: Implement worklist algorithm
- Verification: Verify soundness of analysis
Tools/Libraries
- LLVM
- GCC internals
- Soot
- WALA