| CS 618: Program
Analysis (2017-2018) Lecture Hours: Monday and Thursday 3:30 to 4:55 (Slot 9) Venue: KR Building SIC 305 Lecture Schedule and Tentative Coverage Plan |
||||
| Lecture No | Day | Date | Module | Topic |
| 1 | Monday | 17-Jul | Introduction | Motivation and introduction to data flow analysis: examples of analysis and optimization |
| 2 | Thursday | 20-Jul | Program model, computing static abstractions and states, precision and soundness of static abstractions (OR selection test, if required) | |
| 3 | Monday | 24-Jul | Bit Vector Data Flow Frameworks | Live variables analysis |
| 4 | Thursday | 27-Jul | Available expressions analysis | |
| 5 | Monday | 31-July | Reaching definitions analysis and anticipable expressions analysis | |
| 6 | Thursday | 3-Aug | Make up session on bit vector frameworks | |
| 7 | Monday | 7-Aug | Quiz 1 (Bit vector frameworks) | |
| 8 | Thursday | 10-Aug | Theoretical Abstractions in Data Flow Analysis | Introduction to constant propagation |
| 9 | Monday | 14-Aug | Lattice theoretic modeling of data flow information | |
| 10 | Thursday | 17-Aug | Flow functions, monotonicity and distributivity | |
| 11 | Monday | 21-Aug | MoP and MFP assignments | |
| 12 | Thursday | 24-Aug | Complexity of data flow analysis, worklist based methods | |
| 13 | Monday | 28-Aug | General Data Flow Frameworks | Constant propagation revisited |
| 14 | Thursday | 31-Aug | Strongly live variables analysis | |
| 15 | Monday | 4-Sept | Pointer analysis, Anderson's and Steensgard's approaches | |
| 16 | Thursday | 7-Sept | Make up session | |
| Mid-Semester Examination | ||||
| 17 | Monday | 18-Sep | General Data Flow Frameworks | Liveness based pointer analysis |
| 18 | Thursday | 21-Sep | Liveness based pointer analysis | |
| 19 | Monday | 25-Sep | Liveness analysis of heap data | |
| 20 | Thursday | 28-Sept | Liveness analysis of heap data | |
| 21 | Thursday | 5-Oct | Design of Data Flow Analyses | Design tutorial on data flow analysis |
| 22 | Monday | 9-Oct | Design tutorial on data flow analysis | |
| 23 | Thursday | 12-Oct | Quiz 2 (General data flow frameworks) | |
| 24 | Monday | 16-Oct | Interprocedural Data Flow Analysis | Introduction to interprocedural data flow analysis |
| 25 | Monday | 23-Oct | Functional approach | |
| 26 | Thursday | 26-Oct | Functional approach: Enumeration Approach | |
| 27 | Monday | 30-Oct | Functional approach: Graph Reachability | |
| 28 | Thursday | 2-Nov | Call strings based method | |
| 29 | Monday | 6-Nov | Value context based interprocedural analysis | |
| 30 | Thursday | 9-Nov | ||
| End-Semester Examination | ||||