Compilers - Jared Shumway
Offered By: White Hat Cal Poly via YouTube
Course Description
Overview
Explore the inner workings of compilers in this 30-minute talk by Jared Shumway, Vice President of White Hat Cal Poly. Dive into the process of transforming text files into machine code, learn how compilers optimize code performance, and discover techniques for generating obfuscated binaries. Gain insights into the internals of optimizing compilers, including abstract syntax trees, intermediate representations, and various optimization techniques such as constant folding, strength reduction, and dead code elimination. Examine specific tools and projects that can enhance code security and efficiency.
Syllabus
Intro
What are compliers?
Compiler Overview
Sample Program
Abstract Syntax Tree
Sample AST
AST Analysis
Intermediate Representation (R)
IR 3 Address Code
IR Registers
IR Example
Machine Code 3 Steps
LLVM Machine Code Gen
Register Allocation
Data Flow Analysis
Single Static Assignment Form (SSA)
Constant Folding Propagation
Strength Reduction
Scalar Evolution
Dead Code Elimination
Loop Invariant Code Motion
Machine Code Optimizations
Specific Tools
Taught by
White Hat Cal Poly
Related Courses
CompilersStanford University via edX Computer Language Engineering (SMA 5502)
Massachusetts Institute of Technology via MIT OpenCourseWare Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)
Hebrew University of Jerusalem via Coursera Compiler Design
Indian Institute of Technology, Kharagpur via Swayam Formal Language and Automata Theory- An Application in Compiler Design
Chhattisgarh Swami Vivekanand Technical University via Swayam