CS.1 403

Annoucements

Assignment A2: Register allocation, Booleans and conditionals is out.
Submission: 13th March, 23:59
Check the updated readme in student support code.

Assignment A1: Compiler for R1 is out.
Submission: 28 Feb, 23:59
Link in the Assignment related channel

Past Assignments

Assignment A0: Racket fundamentals is out.
Submission: 16 Jan, 23:59

Course Info

Instructor

Vignesh Sivaraman (vignesh@iiit.ac.in)
Office: A5-301

Lectures

Mon, Thur: 8:30am-10:00am, in Himalaya 103, hybrid. Classes are over. .

Teaching assistants

Office hours

Lecture Plan

Class no. Date Topics Reading Asgn. Asgn. Submission
1 3 Jan Introduction
2 6 Jan Racket basics
3 10 Jan Lexical analysis Lexical analysis
4 13 Jan Parsing Parsing
5 17 Jan ASTs and R0 language Chapter 1 A0
6 20 Jan R1 language & x86 Chapter 2
7 27 Jan R1 passes-I Chapter 2
31 Jan Quiz
3 Feb Compilers-Industry perspective
8 7 Feb R1 passes-II Chapter 2
9 10 Feb R1 passes-III & Register allocation-I Chapter 2
10 14 Feb Register allocation-II Chapter 3
11 17 Feb Conditionals and booleans Chapter 4
12 21 Feb x86 & Explicate control with branching Chapter 4
13 24 Feb Branching and x86 Chapter 4
14 28 Feb Tuples and Garbage collection Chapter 6 A1
3 Mar Mid sem
15 7 Mar Compiler passes for vectors
16 10 Mar Dataflow analysis Chapter 5
17 14 Mar Worklist algorithm Chapter 5
18 21 Mar While loop passes-I Chapter 5

Resources

Textbook

Essentials of Compilation by Jeremy G. Siek.
This is a free book available here.

Other useful references

Continuous feedback

This form is for you to provide anonymous, continuous feedback throughout the course.

Assignments

Grading

Item Weightage
Assignment 35
End Sem 30
Mid Sem 20
Quizzes 10
Class participation 5

Academic Integrity

You are encouraged to discuss the course material and the homework and its solutions with your classmates. After consulting with your friends, however, you are expected to implement the homework solutions on your own. The TAs will be checking your commit history and examine your report for plagiarism or copying.

When answering a quiz, you are expected to not rely on any dishonest means like discussing with classmates or referring to online material.

When collaborating with your classmates in projects, please ensure that you properly credit your fellow contributors.

Penalties

Late submission

Delay (days) Penalty
0-3 10%
4-9 20%
10-19 30%
20-29 50%
30- 80%

Assignments

If you are caught adopting unfair means in doing the homeworks, you will receive a zero for that homework and all previous homeworks.

Tests (quizzes or exams)

If you are caught adopting unfair means in a test, you will receive a zero for that test and all previous tests.

Recent posts