CS2352 PRINCIPLES OF COMPILER DESIGN L T P C
3 0 2 4
UNIT I LEXICAL ANALYSIS 9
Introduction to Compiling- Compilers-Analysis of the source program-The phases-
Cousins-The grouping of phases-Compiler construction tools. The role of the lexical
analyzer- Input buffering-Specification of tokens-Recognition of tokens-A language for
specifying lexical analyzer.
UNIT II SYNTAX ANALYSIS and RUN-TIME ENVIRONMENTS 9
Syntax Analysis- The role of the parser-Context-free grammars-Writing a grammar-Top-
down parsing-Bottom-up Parsing-LR parsers-Constructing an SLR(1) parsing table.
Type Checking- Type Systems-Specification of a simple type checker. Run-Time
Environments-Source language issues-Storage organization-Storage-allocation
strategies.
UNIT III INTERMEDIATE CODE GENERATION 9
Intermediate languages-Declarations-Assignment statements - Boolean expressions-
Case statements- Backpatching-Procedure calls
UNIT IV CODE GENERATION 9
Issues in the design of a code generator- The target machine-Run-time storage
management-Basic blocks and flow graphs- Next-use information-A simple code
generator-Register allocation and assignment-The dag representation of basic blocks -
Generating code from dags.
UNIT V CODE OPTIMIZATION 9
Introduction-The principle sources of optimization-Peephole optimization- Optimization of
basic blocks-Loops in flow graphs- Introduction to global data-flow analysis-Code
improving transformations.
TOTAL: 75 PERIODS
TEXT BOOK:
1. Alfred V. Aho, Ravi Sethi Jeffrey D. Ullman, “Compilers- Principles, Techniques, and
Tools”, Pearson Education Asia, 2007.
REFERENCES:
1. David Galles, “Modern Compiler Design”, Pearson Education Asia, 2007
2. Steven S. Muchnick, “Advanced Compiler Design & Implementation”,Morgan
Kaufmann Pulishers, 2000.
3. C. N. Fisher and R. J. LeBlanc “Crafting a Compiler with C”, Pearson Education,
2000.
No comments:
Post a Comment