IT2050 PRINCIPLES OF COMPILER DESIGN L T P C
3 0 0 3
UNIT I BASICS OF COMPILATION 9 Compilers – Analysis of source program – Phases of a compiler – Grouping of phases – Compiler Construction tools – Lexical Analyzer: Token specification -Token Recognition- A language for Specifying lexical analyzer– Top down parser : Table implementation of Predictive Parser - Bottom-up Parser : SLR(1) Parser - Parser generators.
UNIT II TYPE CHECKING AND RUNTIME ENVIRONMENTS 9
Syntax directed definitions – Construction of syntax trees – Type systems – Specification of a simple type checker - Equivalence of type expressions – Type conversions – Attribute grammar for a simple type checking system – Runtime Environments: Source language issues – Storage organization – Storage allocation strategies – Parameter passing.
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 – Runtime 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 DAG – Dynamic programming code generation algorithm – Code-generator generators.
UNIT V CODE OPTIMIZATION 9
Principal sources of optimization – Peephole optimization – Optimization of basic blocks – Loops in flow graphs – Introduction to global data flow analysis – Iterative solution of data flow equations – Code improving transformations – Dealing with aliases.
TOTAL: 45 PERIODS
TEXT BOOK:
1. Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman. “Compilers Principles, Techniques and Tools”. Pearson Education, 2008.
EFERENCES:
1. Steven S. Muchnick, “Advanced Compiler Design Implementation”, Morgan Koffman, 1997.
2. Charles N. Fischer, Richard J. Leblanc, “Crafting a Compiler with C”, Benjamin Cummings, 1991.
3. Allen Holub, “Compiler Design in C”, Prentice Hall of India, 1990.
3 0 0 3
UNIT I BASICS OF COMPILATION 9 Compilers – Analysis of source program – Phases of a compiler – Grouping of phases – Compiler Construction tools – Lexical Analyzer: Token specification -Token Recognition- A language for Specifying lexical analyzer– Top down parser : Table implementation of Predictive Parser - Bottom-up Parser : SLR(1) Parser - Parser generators.
UNIT II TYPE CHECKING AND RUNTIME ENVIRONMENTS 9
Syntax directed definitions – Construction of syntax trees – Type systems – Specification of a simple type checker - Equivalence of type expressions – Type conversions – Attribute grammar for a simple type checking system – Runtime Environments: Source language issues – Storage organization – Storage allocation strategies – Parameter passing.
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 – Runtime 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 DAG – Dynamic programming code generation algorithm – Code-generator generators.
UNIT V CODE OPTIMIZATION 9
Principal sources of optimization – Peephole optimization – Optimization of basic blocks – Loops in flow graphs – Introduction to global data flow analysis – Iterative solution of data flow equations – Code improving transformations – Dealing with aliases.
TOTAL: 45 PERIODS
TEXT BOOK:
1. Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman. “Compilers Principles, Techniques and Tools”. Pearson Education, 2008.
EFERENCES:
1. Steven S. Muchnick, “Advanced Compiler Design Implementation”, Morgan Koffman, 1997.
2. Charles N. Fischer, Richard J. Leblanc, “Crafting a Compiler with C”, Benjamin Cummings, 1991.
3. Allen Holub, “Compiler Design in C”, Prentice Hall of India, 1990.
No comments:
Post a Comment