People Innovation Excellence

Compilation Techniques (4 Credits)

Learning Outcomes:

Understanding of the challenges involved in compilation (semantic gap between input and output languages, compiler efficiency and code quality); Understanding of the phases involved in compilation, and knowledge of the techniques applied; Ability to understand design decisions in modern compilers and to justify these; Ability to develop and apply modifications to standard compilation techniques wherever this is necessary; Ability to analyze compilation tasks and to apply standard compilation techniques; Ability to implement standard compilation algorithms and understanding of the challenges involved in compilation for modern architectures and the approaches taken in modern compilers

Topics:

  1. Introduction: structure of a compiler
  2. Lexical analysis: tokens, regular expressions, Lex
  3. Parsing: context-free grammars, predictive and LR parsing, Yacc
  4. Abstract syntax: semantic actions, abstract parse trees
  5. Semantic analysis: symbol tables, bindings, type-checking
  6. Stack frames: representation and abstraction
  7. Intermediate code: representation trees, translation
  8. Basic blocks and traces: canonical trees and conditional branches
  9. Instruction selection: algorithms for selection, RISC and CISC
  10. Liveness analysis: solution of dataflow equations
  11. Register allocation: colouring by simplification, coalescing
  12. Advanced Topics: automatic parallelization, popular open-source compilers: GCC, LLVM

Published at :

Periksa Browser Anda

Check Your Browser

Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

We're Moving Forward.

This Site Is No Longer Supporting Out-of Date Browser.

If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

Best viewed with one of these browser instead. It is totally free.

  1. Google Chrome
  2. Mozilla Firefox
  3. Opera
  4. Internet Explorer 9
Close