| |
|
- Overview
- Precision/cost tradeoff and landscape
- Survey of analysis techniques
-
Flow-sensitive analysis
- Recap of intra-procedural dataflow analysis and lattices
- Inter-procedural analysis - Sharir and Pnueli
- IDFA - Reps et. al., CFL-Reachability
- Dependence graphs, program slicing
- Survey: Landi,
WilsonLam, Ruf, Liang, etc
- Correctness
- Abstract interpretation
-
Flow-insensitive analysis
- Monomorphic type inference, unification
- Polymorphic type inference
- Constraint-based analysis, constraint solving
- Precision via SSA
- Effect systems
- Region inference
-
Path-sensitive analysis
- Path-sensitive dataflow
- Path simulation
- Theorem proving
- Model checking
-
Other analysis techniques
- Pointer analysis
- Call graph analysis in OO programs
-
Dynamic analysis
- Profiling
-
Examples of analysis projects
- SLAM
- Vault
- ESP
|
|
|