A wonderful article explaining how compiler drivers work, clarifying the relationship between the preprocessor, the compiler proper, and the linker:
miniblog.
Related Posts
Wonderful post from the lead LLVM maintainer reflecting on how the project is run, the design issues in LLVM today, and opportunities to make it better:
I travelled recently with six electronic devices, and every single one used USB-C for charging. It was wonderful, and not an experience I've had before.
Go has a wonderful, accessible discussion of how it does inlining today, the downsides, and the plans for 1.22: