Vous êtes sur la page 1sur 1

CS2352 PRINCIPLES OF COMPILER DESIGN UNIT I LEXICAL ANALYSIS Introduction to Compiling- Compilers-Analysis of the source program-The phasesCousins-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 Syntax Analysis- The role of the parser-Context-free grammars-Writing a grammarTop down parsing-Bottom-up Parsing-LR parsers-Constructing an SLR(1) parsing table. Type Checking- Type Systems-Specification of a simple type checker. RunTime Environments-Source language issues-Storage organization-Storage-allocation strategies. UNIT III INTERMEDIATE CODE GENERATION Intermediate languages-Declarations-Assignment statements - Boolean expressionsCase statements- Back patching-Procedure calls UNIT IV CODE GENERATION 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 Introduction-The principle sources of optimization-Peephole optimizationOptimization of basic blocks-Loops in flow graphs- Introduction to global data-flow analysis-Code improving transformations. TEXT BOOK: 1. Alfred V. Aho, Ravi Sethi Jeffrey D. Ullman, Compilers- Principles, Techniques, and Tools, Pearson Education Asia, 2007.

Vous aimerez peut-être aussi