.
As some of us here have an interest in writing compilers, I'd like to mention
which takes us through the actions of the many-passes middle-end of LLVM, which is working on and reworking the intermediate representation of a relatively simple function, before the back end gets to work converting to the chosen machine's assembly language.
At the end of the article there's a link to a 10 page PDF:
Generally, the blog ("Embedded in Academia") is well worth following for all sorts of mostly-compiler-related investigations. You'll also find articles on the oddities of floating point.