Java程序辅导

C C++ Java Python Processing编程在线培训 程序编写 软件开发 视频讲解

客服在线QQ:2653320439 微信:ittutor Email:itutor@qq.com
wx: cjtutor
QQ: 2653320439
UG3 Compiling Techniques University Homepage School Homepage School Contacts School Search UG3 Compiling Techniques 2019/2020 Previous year course content: 2018-19 webpage Assessment This is a courwork-only course with no exam. The coursework will consists of two assignments. The first one will be developing a compiler from scratch in Java, targeting the MIPS instruction set architecture. The second assignment will be about implementing a compiler pass in an existing compiler infrastructure in C++ (LLVM). Your mark will simply be a function of the number of test programs your compiler is able to compile correctly. Your coursework will be assessed daily via an automated testing framework allowing you to always know how you are progressing. Details about the coursework description will be released soon. The coursework description is available here: 2019-20 Coursework instructions (on gitlab) Deadlines Coursework Part 1: Thursday 10 October 2019, 11am Coursework Part 2: Thursday 24 October 2019, 11am Coursework Part 3: Thursday 14 November 2019, 11am Coursework Part 4: Monday 13 January 2020, 10am (no extension possible!) Please note that for this course there is no possibility of submitting late without requesting an extension to the ITO beforehand. The mark will be determined by the version of your code present in your git repository (master branch) on the day/time of the deadline. Demo There will be a mandatory demonstration of your coursework taking place on Thursday 28 November 2019. Timetable This module runs in Semester 1 and is taught by Christophe Dubach and Hugh Leather with the LLVM lectures taught by Aaron Smith. The first lecture is on Tuesday 17 Sep. 2019. Please note that the Tuesday lecture is 2 hours long. The schedule for the lectures is: Tuesday 09:00 - 10:50, Appleton Tower, LT 2 Thursday 09:00 - 09:50, David Hume Tower, LG.09 (week 1 only) Thursday 09:00 - 09:50, 7 George Square, S.1 (week 11 only) Thursday 09:00 - 09:50, lister-learning-and-teaching-centre, G.01 - Davidson Lecture Theatre (rest of the semester) There is one lab session of 2 hours per week accompanying these lectures starting in week 1. The first lab will be on Thursday 19th Sep. 2019. Thursday 14:10 - 16:00, Appleton Tower 6.06 Getting help Piazza: The primary source of help will be through the Piazza online platform. Please enroll via this link. All questions should be asked on Piazza first before emailing the lecturer or any of the tutors unless it is a private matter. Office hours: Wednesdays, 10am-11am, IF 1.12 If you are not able to attend, email Christophe to arrange for a meeting outside the office hours. Labs: Feel free to raise any questions regarding the lectures or coursework during the lab sessions. Course information Lecture notes Syllabus of this module 17 Sep. 2019 Lecture 1: Introduction 17 Sep. 2019 Lecture 2: The View from 35,000 Feet 19 Sep. 2019 Lecture 3: Lexical Analysis - An Introduction 24 Sep. 2019 Lecture 4: Automatic Lexer Generation 24 Sep. 2019 Lecture 5: Top-down Parsing 26 Sep. 2019 Lecture 6 : Dealing with Ambiguity + Bottom-up Parsing 1 Oct. 2019 Lecture 7 : Abstract Syntax 3 Oct. 2019 Lecture 8 : Semantic Analysis: Name Analysis 8 Oct. 2019 Lecture 9 : Semantic Analysis: Types 15 Oct. 2019 Lecture 10 : Introduction to Assembly 17 Oct. 2019 Lecture 11 : Introduction to Code Generation 21 Oct. 2019 Lecture 12 : Code Shape, Memory management and Function calls 23 Oct. 2019 Lecture 13 : Dataflow Analysis 28 Oct. 2019 Lecture 14 : Liveness, dominators and SSA ? 2019 Lecture 15 : Instruction Selection ? 2019 Lecture 16 : Instruction Scheduling ? 2019 Lecture 17 : Register Allocation 12 Nov. 2019 LLVM - 1: Intro 14 Nov. 2019 LLVM - 2: Writing a pass ? LLVM - 3: Iterating and Casting ? LLVM - 4: Dead code elimination ? LLVM - 5: Liveness Analysis Coursework TBC Course information http://course.inf.ed.ac.uk/ct/ Informatics policies Late coursework policy Academic conduct policy Christophe Dubach, christophe.dubach@ed.ac.uk. Home : Teaching : Courses : Ct  Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail: school-office@inf.ed.ac.uk Please contact our webadmin with any comments or corrections. Logging and Cookies Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh