Follow your source code through every stage to the instructions that run, well enough to read a compiler error as a stage report, to explain an optimisation that changed your program's behaviour, and to know what the compiler is and is not allowed to do
Turning Text Into Instructions

A compiler is not a black box, it is six stages with a clear job each. This course builds the path from text to instructions: parsing, meaning, the intermediate form, the optimisations, and what the hardware does afterwards anyway.
8 lessons, written and corrected before you arrived. Reading them here needs no account. The first reads the whole way through; the others open and then stop, because a page nobody owns cannot tell who is reading it. Starting the course gives you your own copy, where every idea has problems standing under it and you can ask about any sentence.