110 likes | 285 Views
Advanced Compiler Techniques. Course Project Introduction. LIU Xianhua School of EECS, Peking University. About Programming Assignment. Goal To give you experience building and evaluating systems in order to help you to prepare to build and evaluate novel systems you create. Assignments
E N D
Advanced Compiler Techniques Course Project Introduction LIU Xianhua School of EECS, Peking University
About Programming Assignment • Goal • To give you experience building and evaluating systems in order to help you to prepare to build and evaluate novel systems you create. • Assignments • four programming assignments. • encourage to work in groups of two on all assignments. • Pair Programming is recommended. “Advanced Compiler Techniques”
Assignment • Lab1: Translation • Lab2: Dataflow and optimization • Lab3: SSA and optimization • Lab4: TBD (optional, extra 10% credit) “Advanced Compiler Techniques”
Other Choices • GCC • LLVM • Soot compiler • Joeq • SUIF • JikesRVM • Eclipse • MIT-Flex “Advanced Compiler Techniques”
Using LLVM • Visit http://www.llvm.org/ • Download & Install LLVM (3.3) • Writing an LLVM Pass http://www.llvm.org/docs/WritingAnLLVMPass.html “Advanced Compiler Techniques”
Using GCC • Visit http://gcc.gnu.org/ • Download and Install GCC (4.5.0) • GCC Online Documentation http://gcc.gnu.org/onlinedocs/ “Advanced Compiler Techniques”
Using Soot • Soot main page: http://www.sable.mcgill.ca/soot/ • Soot download page: http://www.sable.mcgill.ca/soot/soot_download.html • Soot tutorials: http://www.sable.mcgill.ca/soot/tutorial/ “Advanced Compiler Techniques”
Schedule “Advanced Compiler Techniques”
Ethics • Your code is like your boyfriend or girlfriend • It's okay to talk about it on an abstract, high level • But you don't want to go into the specific details • and you certainly don't want to share ——Pascal Van Hentenryck Computer Science Professor, Brown University, 1997 “Advanced Compiler Techniques”