LivenessAnalysis

Home WeChat: cstutorcs QQ: 749389476 #include “DataflowAnalysis.h” namespace dataflow{ struct LivenessAnalysis: public DataflowAnalysis{ static char ID; LivenessAnalysis() : DataflowAnalysis(ID){} protected: * Implement your analysis in this function. Store your results in DataflowAnalysis::inMap and * DataflowAnalysis:outMap. void doAnalysis(Function &F) override{ virtual std::string getAnalysisName() override{ return “Liveness Analysis”; char LivenessAnalysis::ID = 1; static RegisterPass X(“Liveness”, “Liveness Analysis”,

LivenessAnalysis Read More »

CS 6340 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 Lab 2 Dataflow Read More »

SimpleHash

Home WeChat: cstutorcs QQ: 749389476 * Simple Hash Reversal Lab * sfold hash function sourced from https://research.cs.vt.edu/AVresearch/hashing/strings.php * Author: Justin Dunnaway * Modified by: Michael D. Brown * Purpose: This code is a graded portion of a KLEE Lab for academic use. #include #include #include #include #include long long int sfold(char * message, int length)

SimpleHash Read More »

CS6340 Lab 1 Fuzzing

Lab 1: Fuzzing Spring Semester 2020 Due: 27 January, at 8:00 a.m. Eastern Time Corresponding Lesson: Lesson 3 (Random Testing) In Part 1 you will implement a simple tool to automatically check for divide-by-zero errors in C programs at runtime. You will create an LLVM pass that will instrument C code with additional instructions that

CS6340 Lab 1 Fuzzing Read More »

Regexp

Home WeChat: cstutorcs QQ: 749389476 * Simple regular expression matching. * The Practice of Programming * Brian W. Kernighan, Rob Pike * Modified by: Michael D. Brown * Purpose: This library is a modified version of a KLEE tutorial adapted for academic use. #include static int matchhere(char*,char*); static int matchstar(int c, char *re, char *text)

Regexp Read More »

CS 6340 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 weakly typed Javascript language. Typescript compiles to Javascript,

CS 6340 Lab 4 Type Systems Read More »

CS 6340 Lab 3 Datalog

$ cd ~/datalog $ mkdir build && cd build $ cmake .. $ cd ~/datalog/test $ clang -emit-llvm -S -c -o Greatest.bc Greatest.c 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.

CS 6340 Lab 3 Datalog Read More »

Utility

Home WeChat: cstutorcs QQ: 749389476 * Obfuscated Utility Program Backdoor Lab * Author: Joel Cooper * Modified by: Michael Brown * Purpose: This code is a graded portion of a KLEE Lab for academic use. #include #include #include #include #include char* U = “Usage: ubelt -acghotx \n\ a – list files in current folder: if

Utility Read More »