week class date topics reading assignments
1 1 1-Sep programming and programs EAC Ch. 8
2 2 6-Sep redandancy removal
3 8-Sep value numbering, local project assigned
3 4 13-Sep value numbering, local
5 15-Sep value numbering, global trivial due
4 6 20-Sep AVAIL EAC Ch. 9
7 22-Sep LIVE code gen due
5 8 27-Sep guest lecture by Danel Stefankovic
9 29-Sep data flow analysis properties
6 10 4-Oct def-use chains, dead-code removal AK Ch. 4.4 value numbering due
11 6-Oct static single assignment EAC Ch. 10
7 12 11-Oct partial redundancy elimination, ILP
13 13-Oct ILP, register allocation EAC Ch. 12 control flow due
8 14 18-Oct high-level parallelism EAC Ch. 13
15 20-Oct mid-term AK Ch. 1
9 16 25-Oct dependence theory AK Ch. 2
17 27-Oct dependence theory data flow due (bonus due)
10 18 1-Nov vectorization
19 3-Nov dependence testing AK Ch. 3 homework 1 assigned
11 20 8-Nov parallelism AK Ch. 5 & 6
21 10-Nov control flow AK Ch. 7
12 22 15-Nov locality AK Ch. 8
23 17-Nov interprocedural analysis AK Ch. 11 final submission due (competition)
13 24 22-Nov functional languages lecture notes homework 1 due, homework 2 assigned
Thanksgiving recess (11/23-27)
14 25 29-Nov call-by-value semantics
26 1-Dec call-by-name semantics
15 27 6-Dec project presentation, class evaluation homework 2 due
28 8-Dec final exam