Lexicon Entry
Compiler Engineering
The study and implementation of language translators. This field covers lexical analysis, parsing, semantic analysis, optimization, and code generation.
Related Knowledge & Cross-References
The Anatomy of a Perfect Stack Trace: Making Hand-Written Assembly Production-Ready
"Writing raw assembly is fun, but when it crashes, debuggers like GDB just show ?? () instead of a stack trace. How do C compilers make assembly 'debuggable'?"
Linker Explained: How Object Files Become Executables (Static & LTO)
Learn how the linker transforms object files into executables. Explore symbol resolution, relocation records, static vs dynamic linking, and Link-Time Optimization with real readelf and nm examples.
Write a Compiler from Scratch in C: Build a Working Toy Compiler
Learn how to write a compiler from scratch in C. Build a complete toy compiler with a hand-written lexer, recursive descent parser, and code generator targeting x86-64 and ARM64 assembly.
Register Allocation in Compilers: How Variables Fit into CPU Registers
Discover how compilers solve register allocation — mapping thousands of virtual registers to 16 (x86-64) or 31 (ARM64) physical ones. See graph coloring, spilling, and rematerialization with real Godbolt examples.
Compiler Code Generation: How LLVM Turns IR into x86-64 and ARM64 Assembly
Between the hardware-agnostic world of Intermediate Representation and the raw binary bytes your CPU executes lies the backend pipeline. Learn how the compiler turns abstract logic into platform-specific machine code.
The Ultimate Guide to Compiler Optimization Passes: Boosting Performance with -O2
You have written your code, but how does the compiler make it run three times faster when you enable optimizations? We demystify compiler optimization passes and see exactly what happens under the hood.
LLVM IR Tutorial: The Hidden Language Between Your C Code and Assembly
Master LLVM IR in this hands-on tutorial. Learn SSA form, basic blocks, and PHI nodes with real Clang output and Godbolt examples — from C to IR to x86-64 and ARM64.
Compiler Lexer & Parser Demystified: How Compilers Read Your C Code
Learn how a compiler lexer and parser transform C source into tokens and ASTs. Hands-on with Clang's -dump-tokens and -ast-dump across real examples.
How a C Program Becomes Machine Code: The C Compilation Process Explained
Trace the complete C compilation process from source code to executable binary. See each stage — preprocessing, compilation, assembly, and linking — with real GCC and Clang output across x86-64 and ARM64.