YoVDO

Compilers - Jared Shumway

Offered By: White Hat Cal Poly via YouTube

Tags

Compilers Courses Compiler Design Courses Code Optimization Courses LLVM Courses Abstract Syntax Tree Courses

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

Compilers
Stanford 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