• Course Number: 16:198:516
  • Course Type: Graduate
  • Semester 1: Spring
  • Credits: 3
  • Description:

    This course covers advanced aspects of compilation of modern programming languages and architectures, especially global optimization transformations and compile-time analyses.

  • M.S. Course Category: Programming Languages
  • Category: A or B (M.S.), B (Ph.D.)
  • Topics:

    This course presents theoretical foundations for advanced compilation techniques for modern programming languages and practical experience with them. Included are classical compiler optimizations, intraprocedural and interprocedural data flow analyses, static single assignment form, register allocation, memory optimizations and instruction scheduling. Tradeoffs and properties of these transformations in concert are investigated empirically in a team compiler project an advanced compilation infrastructure, such as Rice University's ILOC or Stanford's SUIF system.