CS243: Advanced Compiling Techniques

Winter 2010

Staff | Logistics | Schedule | Joeq


Midterm will be on Feb 10(Wed).
Local SCPD students must take exam on campus (Gates B03).


Staff


Instructor

 

Monica Lam

Office

Gates 307

Phone

(650) 725-3714

Office hours

Mon, Wed 12:30 - 1:30 pm


TA

 

Te-Yuan Huang

Office

Gates B26B

Office hours

Mon 1:00 - 2:00 pm, Tue 10:00 - 11:00 am


TA

 

Mike Hamburg

Office

Gates 494/463

Office hours

Tue 1:00 - 2:00 pm, Thu 2:00 - 3:00 pm


TA

 

David Ramos

Office

Gates 326

Office hours

Wed 1:30 - 2:30pm, Fri 2:00 - 3:00pm


Administrator

 

Darlene Hadding

Office

Gates 408

Phone

(650) 723-1430


Logistics

Lectures

Mon, Wed 11:00 to 12:15 in Gates B03. (NOTE THE ROOM CHANGE).

Section

Fri. 4:15 - 5:05 Skilling Aud.

Prerequisites

CS 103 or CS 103B, and CS 107; Java programming language experience

Textbook

Compilers: Principles, Techniques, & Tools (Second Edition), Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Addison-Wesley, 2007.

Class newsgroup

su.class.cs243 for questions and comments that may be of interest to the whole class

Staff mailing list

cs243-win0910-staff@lists.stanford.edu

Midterm

Feb 10, 11:00 am - 12:15 pm. All local SCPD students must come to campus for the exam.

Final exam

March 15, 8:30 am - 11:30 am. All local SCPD students must come to campus for the exam.

Grade distribution

Homework: 50%, Midterm: 15%, Final: 35%


Tentative Schedule

Date Topic Reading Lecture notes Assignment out Assignment due
Jan 4 (Mon) Introduction 1.1-5, 8.4, 8.5, 9.1 Lecture 1 (1-up version), Example
Jan 6 (Wed) Dataflow Analysis Introduction 9.2 Lecture 2 (1-up version)
Jan 11 (Mon) Dataflow Analysis Foundations 9.3 Lecture 3 (1-up version)
Jan 13 (Wed) Constant Propagation, Loops 9.4, 9.6 Lecture 4 (1-up version) HW1 (solutions)
Jan 18 (Mon) (Martin Luther King, Jr., Day)
Jan 20 (Wed) Joeq Framework Joeq Tutorial Joeq Analysis Framework (1-up version) HW2 HW1
Jan 25 (Mon) Partial Redundancy Elimination 9.5 Lecture 5 (1-up version)
Jan 27 (Wed) Register Allocation 8.8 Lecture 6 (1-up version) HW3 (solutions) HW2 (Jan 29)
Feb 1 (Mon) Scheduling 10 Lecture 7 (1-up version)
Feb 3 (Wed) Scheduling 10 Lecture 8 (1-up version) HW4 HW3
Feb 8 (Mon) Dynamic Compilation Lecture 9 (1-up version)
Sample midterm (solutions)
Feb 10 (Wed) Midterm (11:00 am - 12:15 pm)
Feb 15 (Mon) (Presidents' Day)
Feb 17 (Wed) Pointer Analysis 12
Feb 22 (Mon) BDDs in Pointer Analysis 12 HW4 (Feb 23)
Feb 24 (Wed) Introduction to Parallelism and Locality 11
Mar 1 (Mon) Affine Partitioning 11
Mar 3 (Wed) Garbage Collection 7.5, 7.6
Mar 8 (Mon) Advanced Garbage Collection 7.7, 7.8
Mar 10 (Wed) Research Topics
Mar 15 (Mon) Final (8:30 am - 11:30 am)

Physical Handouts

Hardcopies of the course material and graded assignments will be distributed during class. Extras and assignments that are not picked up will be placed in the handout bin on the 3rd floor of Gates. Turn left as you come off the elevator and head across the hall to the nook between the two wings. There is a file cabinet with a drawer for CS243.

SCPD students: Please download the lecture notes before the lecture; the material will be available by the morning of the lecture. Your assignments will be returned via the SCPD courier. Since all the material for the assignments will be available on the web, you have to give your assignemnts to the SPCD courier (or hand it in electronically) on the same day as everybody else.


Assignment Policy

Group Work: Homework will consist of both written and programming assignments. You are encouraged to work on the programming assignments in groups of two, but you must do the written assignments by yourself.

Late Policy: In general, no late assignments are accepted. However, you have two grace days for the entire quarter. That means you can be late by one day for two assignments, or use the two days up for one assignment.

Submission: Homework should be submitted in class only. If you do not come to class it should be handed to Darlene Hadding in Gates 408 who will write the date and time of the submission. Late homeworks should also be directed to Darlene. We do not check the file cabinet for homework! SCPD students may submit their homework by e-mail via scpd-distribution@lists.stanford.edu.


Honor Code

You are free to discuss the assignment and solutions with others. However, you must write your own assignment, and must not represent any portion of others' work as your own. Anybody violating the honor code will be referred to the Judical-Affairs Office. If convicted, the normal penalty is a quarter suspension or worse.