CS 480 Schedule

Date
Topic
Notes
Assignments
Feb 2 Syllabus, Class Overview, Compiler Project Overview, Project ZERO Overview Old SVN Notes 
Current SVN Notes
Intro
Assignment ZERO (DUE Feb 6)
Make Example 1
Make Example 2
Feb 4 Linux, Eclipse, GCC, make, SVN Script simple.c makefile
Feb 6 Symbol Table Projects, Coding Standards

Symbol Table (DUE Feb 18) 
pcc09defines.h PDF
Coding Standards Template
Feb 9
Ch 1 Introduction to Compiling (Tool chain) PDF

Feb 11
Ch 2 One pass compiler / Basic Parsing Dynamic Memory&
Eclipse Debugger &
Hash tables
Feb 13
Ch 2 Symbol Tables


Feb 16
Ch 3 Lexical Analysis PDF
Feb 18 Lexical Analyzer Lexical Analyzer (DUE Mar 2)
Test Script
Lex Test Cases
Feb 20 Virtual Machine
Feb 23 Ch 4 PDF Symbol Table:
Test1 (from handout) Output
Test2 Input
Test3 (big test) Input Output
Feb 25

Feb 27
EXAM ONE

Mar 2 Ch 4 Top Down Parsing
PDF
Top Down Parser (DUE Mar 11)
Mar 4

Error Handling Papers  One  Two
Mar 6 Ch 4 Bottom Up Parsing PDF Extra (Free from on campus!)
Compilers Book (Ch 5 deals with
Operator Precedence Grammars)
Mar 9
Ch 4 Bottom Up Parsing

Mar 11 Operator Precedence Table Creation Bottom Up Parser (DUE Mar 20)
Operator Precedence Table
BU Test Cases
Mar 13

Mar 16
Ch 5 Syntax-Directed Translation PDF
Mar 18
PDF
Mar 20
Semantic Actions 1 PDF Semantic Actions #1 (DUE Apr 8)
Interpreter Description
Interpreter Eclipse Project
SA1 Test Cases
Mar 23 NO CLASS -- SPRING BREAK
Mar 25
Mar 27

Mar 30
More Semantic Actions / Data Handling (Ch 7) PDF
Apr 1 Ch 8 Intermediate Code Generation PDF
Apr 3
Ch 8 Intermediate Code Generation Continued

Apr 6 EXAM TWO
Apr 8
Semantic Actions 2 Semantic Actions #2 (DUE Apr 24)
SA2 Test Cases
SA2 Test Cases Solutions
Apr 10
 Intermediate Code Generation II  
Semantic Actions #2 Example
Semantic Actions #2 Solution
Apr 13
Code Generation - Pointers - Arrays - Relational Operators PDF
Solutions

Apr 15 Code Generation

Apr 17
Data Handling (Ch 7)

Apr 20 Control Flow Code Generation - if - else - for PDF

Apr 22 Senior Projects Day NO CLASS
Apr 24
Semantic Actions 3 - Control Flow Lab Reverse Engineering
Example

Semantic Actions #3
(DUE May 13, 4:45PM)
SA3 Test Harness
SA3 Test1
FI Test Harness
Apr 27
Apr 29


May 1
EXAM THREE
May 4 Control Flow Code Generation /  Data Handling (Ch 7) PDF
May 6 Register Machines / Register Allocation / Peephole optimization (Ch 9)  PDF
May 8
Code Optimization / Data Flow Analysis (Ch 10)

May 11
Compiler Research / Final Exam Review Review
May 13
Semantic Actions #3 DEMO IN CLASS SA3 FI
Test Case Map
SA3 Test1
SA3 Test2
SA3 Test3
SA3 Test4
SA3 Test5
SA3 Test6
SA3 Test7
SA3 Test8
FI Test1
FI Test2
FI Test3
FI Test4
FI Test5
FI Test6
FI Test7
FI Test8
May 16
Final - 3 PM to 5:30 PM