Course Description
Provide insight into current compiler designs dealing with present and future generations of high performance processors and embedded systems. Introduce basic concepts in scanning and parsing. Investigate in depth program representation, dataflow analysis, scalar optimization, memory disambiguation, and interprocedural optimizations. Examine hardware/software tade-offs in the design of high performance processors, in particular VLIW versus dynamically scheduled architectures. Investigate back-end code generation techniques related to instruction selection, instruction scheduling for local, cyclic and global acyclic code, and register allocation and its interactions with scheduling and optimization.
Type
Dual Level Course
Spring 2022
Instructors
Meeting Patterns
Classes Start:
January 10, 2022
Classes End:
April 25, 2022
Location:
01231 Engineering Building 2
Class Days:
F
Class Start Time:
9:35am
Class End Time:
12:20pm
Class Type:
Lecture
Credits:
3.00
Restrictions:
Prerequisites: ECE 209 or competency in any machine language programming and ECE 309 or CSC 316 or proficiency in either C or C++ programming using advanced data structures, like hash tables and linked lists.