Compiler 编译器代写

编译器课程的内容包括:

  • 理解编译原理和技术
  • 了解编译器的数据结构和算法
  • 熟悉编译器实现语言(如C)和汇编
  • 了解编译器优化技术
  • 学习实现编译器的工具,如Lex和Yacc
  • 学习如何编写有效的编译器
  • 了解如何使用可移植汇编和汇编器,以及他们如何与编译器一起使用
  • 了解如何使用虚拟机,以及它们如何与编译器一起使用

CS 6340 Software Analysis Lab 2 Dataflow

Lab 2: Dataflow Fall Semester 2020 Due: 28 September, 8:00 a.m. Eastern Time Corresponding Lecture: Lesson 5 (Dataflow Analysis) This lab will familiarize you with writing static program analyses using the LLVM compiler infrastructure. LLVM is a collection of compiler and analysis toolchain utilities widely used in the software analysis community. You will use LLVM […]

CS 6340 Software Analysis Lab 2 Dataflow Read More »

CS 6340 Lab 0 Introduction to LLVM

CS 6340 Software Analysis Lab 0 Lab 0: Introduction to LLVM Spring Semester 2020 Due: 20 January, at 8:00 a.m. Eastern Time This lab involves running and extending LLVM, a popular compiler framework for a large class of programming languages, that will be used to implement all the labs in this course. You will setup

CS 6340 Lab 0 Introduction to LLVM Read More »

CS 6340 Lab 7 KLEE

CS 6340 Software Analysis Lab 7 KLEE Lab 7: KLEE Symbolic Execution Engine Fall Semester 2022 Due: 12 December, 8:00 a.m. Eastern Time Corresponding Lecture: Lesson 11 (Dynamic Symbolic Execution) The goal of this lab is to gain familiarity with a research based symbolic execution engine called KLEE. KLEE is a hybrid analysis engine built

CS 6340 Lab 7 KLEE Read More »

CS 6340 Lab 4 Type Systems

CS 6340 Software Analysis Lab 4 Type Systems Lab 4: Type Systems Fall Semester 2022 Due: 24 October, 8:00 a.m. Eastern Time Corresponding Lecture: Lesson 8 (Type Systems) The goal of this lab is to experience the difference between untyped and strongly typed languages. Typescript is a strongly typed language built on top of the

CS 6340 Lab 4 Type Systems Read More »

CS 6340 Lab 3 Datalog

CS 6340 Software Analysis Lab 3 Datalog Lab 3: Datalog Fall Semester 2022 Due: 17 October, 8:00 a.m. Eastern Time Corresponding Lecture: Lesson 7 (Constraint Based Analysis) Writing a constraint-based static analysis for C programs with LLVM and Z3. Approaching the same goals of “Lab 2: Dataflow” from a different direction. In this lab, you

CS 6340 Lab 3 Datalog Read More »

CS 6340 Lab 5 CBI

CS 6340 Software Analysis Lab 5 CBI Lab 5: Cooperative Bug Isolation (CBI) Fall 2022 Semester Due: 7 November, 8:00 am Eastern Time Corresponding Lecture: Lesson 9 (Statistical Debugging) ¡ñ Enumerating basic blocks and instructions in a function: o http://releases.llvm.org/8.0.0/docs/ProgrammersManual.html#basic-inspection-and- traversal-routines ¡ñ Instrumenting LLVM IR o http://releases.llvm.org/8.0.0/docs/ProgrammersManual.html#creating-and-inserting- new-instructions ¡ñ Important classes o http://releases.llvm.org/8.0.0/docs/ProgrammersManual.html#the-function-class o https://cs6340.cc.gatech.edu/LLVM8Doxygen/classllvm_1_1CallInst.html

CS 6340 Lab 5 CBI Read More »

CSS422 Final Project

CSS422 Final Project: Thump-2 Implementation Work of C Standard Library Functions CSS422 Final Project Computer Architecture Thumb-2 Implementation Work of Memory/Time-Related C Standard Library Functions. 1. Objective You’ll understand the following concepts at the ARM assembly language level through this final project that implements memory/time-related C standard library functions in Thumb-2. • CPU operating modes:

CSS422 Final Project Read More »