Welcome to ECE 46800, Fall 2018!

last update:

Latest News

  • If you have finished the course evaluation, submit the evidence to Blackboard. You will receive 1 bonus point for your overall grade.
  • Please! Complete the course evaluation (due 11:59pm, Dec 9)!
  • Instructor Qiu will keep his office hour on Tue, Dec 11; TA Wright will NOT hold his office hour Mon, Dec 10.
  • A review session for the course project is scheduled on Fri, Nov 30
  • Class cancellation: no meeting on Nov 16 (Fri), Nov 19 (Mon) and Dec 3 (Mon)
  • Problem Set 5 released; due on Fri, Nov 30
  • Project step 8 released; due on Wed, Dec 12
  • Project step 7 released; due on Fri, Dec 7
  • Tue, Oct 30 office hour (1:30-3) moved to Thu, Nov 1, 10-12
  • Web portal has been updated to step 6.
  • Problem Set 4 released; due on Wed, Oct 24
  • Web portal has been updated to step 5.
  • TA Office hours changed for October 11-12. Look on Piazza for details
  • Project step 6 released; due on Fri, Nov 16
  • Project step 5 released; due on Fri, Oct 26
  • Problem Set 3 released; due on Wed, Oct 10
  • Project step 3 due extended to Tue, Oct 2.
  • Web portal has been updated to step 4.
  • Project step 4 released; due on Fri, Oct 12
  • Project step 3 released; due on Mon, Oct 1
  • Problem Set 2 released; due on Wed, Sep 19
  • Check out the Exams info!
  • Update to the project page about Java and ANTLR
  • A web portal for our reference implementation of the compiler project is online! Check it out for comparing with your own project!
  • You may NOT have any folders or files that start with “test” or “grade”. These will be deleted by our grading script and you may not get feed back or your code may not run.
  • Project step 2 released; due on Fri, Sep 14
  • Problem Set 1 released; due on Wed, Sep 5
  • Project step 1 released; due on Wed, Sep 5
  • If you are searching for a teammate for the project, post to Piazza!
  • Project step 0 released; due on Mon, Aug 27
  • Fill out the project questionnaire by Fri, Aug 24
  • Course website is now live!! – Thu, Aug 16

Course Description

This course focuses on the tools and techniques needed to build an optimizing compiler. Topics include:

  • Scanning and parsing: determining the syntactic structure of a program
  • Semantic routines: determining the semantics of a program and building an intermediate representation
  • Code generation: emitting assembly code that is equivalent to the program
  • Program optimizations: improving the performance of a program
  • Program analysis: determining interesting information about a program’s behavior

Course Details

  • Instructor: Xiaokang Qiu
    • Office hours (EE 334C): Tu 13:30-15:00, F 9:30-11:00
  • TA: Chris Wright
    • Office hours (EE 207) : MWF 8:30-9:30, Th 15:00-17:00
  • TA: Kangjing Huang

    • Office hours (EE 207) : F 14:00-15:30
  • Lectures: MWF 7:30 - 8:20 (ME 1061)

The course syllabus covers most of the details of the course, including a tentative schedule, exam dates, etc. We will be using Piazza for online discussion of the lectures and assignments. If you have a question about a concept covered in lecture or about a detail of an assignment, check Piazza first!