| SIUC Home | Campus Index A-Z | Apply Now | People Finder | Jobs | Webmail |

Department
Home, Overview, Contact, Facilities...

People
Faculty, Staff

Programs
Undergraduate, Graduate, Courses, Course Schedules, Course Materials...

Research
Activities, Grants

Scholarships

Opportunities

Utilities
Webmail, Downloads

CS 516-3
Advanced Compilers

Catalog Description

A continuation of 416 including advanced topics in lexical and syntax analysis, error recovery, semantic analysis, code optimization, and compiler compilers.

Prerequisite:

CS 416


Course Outline
 
1. Lexical Analysis
Some sophisticated pattern matching algorithms and their optimization. Use of LEX.
 
2. Error Recovery
Detection, reporting, recovery and repair of errors in the compilation process.
 
3. Syntax Analysis
Cannonical LR parsers, handling of ambiguous grammars, error reporting in LL(1), operator precedence and LR parsing, efficient generation of LALR(1) sets, optimization of LR parsers, optimization of transformations.
 
4. Run Time Storage
Activation records, handling recursive calls, management of variable length blocks, garbage collection and compaction
 
5. Type Checking
Overloading of functions and operators, polymorphic functions, unification algorithm.
 
6. Code Generation and Semantic Analysis
Semantic stacks, attributed translation, analysis of syntax directed translation.
 
7. Code Optimization
Basic blocks and folding, optimization within iterative loops, global optimization through flowgraph analysis, code improving transformations, Machine dependent optimization.
 
8. Compiler-Compilers
Parser generators, YACC, attributed LL(1) parser generator, machine independent code generation.
 
9. Other Topics
COMPILERS for parallel machines, compilers for functional languages.
 

Webmaster - EOE Link - Privacy Policy     Last Update: August 2007