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
Assignment A0: Racket fundamentals is out.
Submission: 16 Jan, 23:59
Vignesh Sivaraman (vignesh@iiit.ac.in)
Office: A5-301
Mon, Thur: 8:30am-10:00am, in Himalaya 103, hybrid. Classes are over. .
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 |
Essentials of Compilation by Jeremy G. Siek.
This is a free book available here.
This form is for you to provide anonymous, continuous feedback throughout the course.
Item | Weightage |
---|---|
Assignment | 35 |
End Sem | 30 |
Mid Sem | 20 |
Quizzes | 10 |
Class participation | 5 |
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.
Delay (days) | Penalty |
---|---|
0-3 | 10% |
4-9 | 20% |
10-19 | 30% |
20-29 | 50% |
30- | 80% |
If you are caught adopting unfair means in doing the homeworks, you will receive a zero for that homework and all previous homeworks.
If you are caught adopting unfair means in a test, you will receive a zero for that test and all previous tests.