Introduction to Compiler
Phases of compilation and overview. Compiling techniques including parsing, Semantic processing, and Optimization, Complier- Compliers and translator writing systems.
Lexical Analysis
The ROLE of the lexical analyzer, Specification And recognition of tokens, Lexical analyzer generator.
Syntax Analysis (Parser)
Top-Down Parsing, Bottom-Up Parsing, Operator- precedence parsing, Ambiguity, LL and LR parsers.
Semantic Analysis
Attribute grammar, Syntax directed definition, Evaluation and flow of attribute in a syntax tree.
Type Checking
Syntax directed translation, Error management, Error detection and recovery.
Symbol Tables
Data structures for symbol tables.
Run-Time Storage Management and Run Time Support
Parameter passing mechanisms, Stack storage organization and templates, Heap storage management, memory allocation and scope.
Intermediate Code Generation
Translation of different language features. Different types of intermediate forms, languages, declarations and assignment statements.
Code Improvement
Analysis: control-flow, data-flow dependence etc., Code improvement local optimization, global optimization, Garbage Collection, loop optimization, Peep-hole optimization etc.
Architecture dependent code improvement
Instruction scheduling, Loop optimization etc.
Code Generation
Register allocation and target code generation.
Compiler Design