Home / announcements | Course syllabus | Reading list | |
Schedule | Lecture Notes | Homeworks | Links |
Assigned Sep 5, 2018
; Due Sep 12, 2018: Assigned Sep 12, 2018
A. Download and install LLVM on your favorite Linux system. We'll use version 6.0.1, which is the latest version for regular download. You should download and build the LLVM sources, but can use prebuilt binaries for the rest. See http://www.llvm.org. Browse this website to familiarize yourself with what resources are available.
B. Skim over the following LLVM documentation,
C. Go through writing a pass tutorial: Writing a Pass
Homework 1
; Due Sep 24, 2018(11:59:59pm):
pdf
Assigned Sep 26, 2018; Due Oct 12, 2018 (11:59pm): pdf
Additional materials: 2 sets of benchmarks are provided: correctness and performance. Correctness benchmarks are designed to help you test and debug your implementation, but are too small to notice any performance change with optimization. Performance benchmarks have high trip count loops to assess performance of your optimization. Some performance improvement should be observed particularly with the Bonus Implementation. See the 2 README files for more info about each group of benchmarks.
The second tgz file contains an implementation template to get you started including all the necessary files to build the template optimization pass. In addition, the file run.sh is provided that provides a list of the LLVM commands used in HW2.
Last, some slides that go over the implementation template and steps in more detail are provided. Ze will present these Monday Oct 1 in class.Benchmarks - 583-HW2bench.tgz
Implementation template - 583-HW2template.tgz
Slides to help with template - fplicm_hw2.pptx
Home / announcements | Course syllabus | Reading list | Schedule | Lecture Notes | Homeworks | Links