CS 701, Course Description
CS 701 studies advanced aspects of compilation, particularly
program analysis, optimization and code generation.
It assumes a familiarity with the general design and
implementation of simple compilers (as presented, e.g., in
CS 536).
Topics to be studied include:
-
Register allocation and graph coloring.
-
Code scheduling.
-
Automatic instruction selection and retargetable compilers.
-
Peephole optimization.
-
Program transformations that improve instruction and data cache performance.
-
Local and global optimizations, including redundancy analysis,
live/dead analysis, constant and copy propagation,
code motion and loop reorganization.
-
Program representations, including control flow graphs,
dependency graphs and single assignment form.
-
Data flow frameworks and algorithms, dominance,
dependency and alias analysis.
Mon Aug 25 15:46:44 CDT 2003