Compiler optimization techniques will study the construction of optimising compilers with a focus on uniprocessor architectures. The course will cover control flow and data-flow analysis, program optimization, and code generation across basic blocks, procedures, and complete programs. Classical topics such as interprocedural and intraprocedural analysis, intermediate representations, register allocation, and scheduling will be presented in the context of modern uniprocessors. The course will also cover dependence analysis and loop transformations: the building blocks for optimising for memory hierarchies and parallel machines.
Course Type | Major |
---|---|
Credit Hour | 3 |
Lecture Hour | 45 |