CSE 131 Syllabus
Compiler Construction
(More Assembly Required)
Spring 2014


Tuesdays & Thursdays
3:30pm - 4:50pm
Center Hall 119

Discussion Sections:

Fridays: 2:00-2:50pm or 3:00-3:50pm -- Center Hall 212

Home Base Lab:

EBU3B B260 -- basement of Computer Science & Engineering (CSE) building
All files, turnin, linking and execution of generated code on ieng9.ucsd.edu Sun SPARC architecture


Rick Ord — EBU3B 2102
Office Hours: Fri 9:00 - 11:00am in my office, open office policy, or by appt

TAs / Tutors:

TA: Jesse Porter - jdporter@eng.ucsd.edu
Head Tutor: Zach Johnson - zdjohnson@ucsd.edu
See the Lab Hours schedule for all the TAs and Tutors.



Major Course Concepts

Semantic Analysis -- Ch. 1-6 (C:PTT); Ch. 4 (EAC); Ch. 1-4, 7 (PLP)

Emphasis on Type Checking

Runtime Environment -- Ch. 7 (C:PTT); Ch. 5-7 (EAC); Ch. 3, 7-10 (PLP)

Emphasis on C/C++ and Java/C# runtime architectures and memory management

Code Generation -- Ch. 8-9 (C:PTT); Ch. 7, 11-13 (EAC); Ch. 5-6, 14 (PLP)

Code shape issues. Procedure call abstraction. OOP/polymorphism implementation.
Project target code is Sun SPARC assembly. Hence the subtitle: More Assembly Required.

Code Optimization/Improvement -- Ch. 9-10 (C:PTT); Ch. 8-10 (EAC); Ch. 15 (PLP)

Machine independent and machine dependent code improvements.
Local and global code improvements.

Programming Projects

Reduced-C translator (defined subset of the C++ Programming Language)
Project 1 -- Static Semantic Analysis with emphasis on Static Type Checking/Error Reporting
Project 2 -- Code Generation (to SPARC Assembly) with some dynamic runtime checks
Most project details covered in Discussion Sections including starter code
We do run MOSS (Measure Of Software Similarity)

Back to
CSE 131 Home Page