Bytecode

The Compiler That Could

Two years inside the LLVM project. On modular IR, exhaustion, and the small acts of patience that keep open source compilers alive.

S. Lindqvist·18 min read·April 19, 2026
Hero illustration for “The Compiler That Could”.

Llvm.org is a quiet site. There is no banner, no marketing copy, no “Get started in two minutes.” You arrive on a page that looks like it was written in 2007 and has been gently maintained ever since. It is the website of one of the most important software projects in the world, and it has approximately the same energy as a community garden bulletin.

Two years ago, I set out to understand how that happened. How does a compiler infrastructure project — one that quietly underpins Apple, Sony, Tesla, half the Linux toolchain, a sizable chunk of the JavaScript ecosystem, and most of the AI training stack — survive without a logo, a CEO, or a Series B?

On modular IR

The simplest version of LLVM’s premise is that compilers should not be one giant black box. They should be a series of small, sharp tools, each operating on a stable intermediate representation. You can stop the compilation pipeline at any point, look at the IR, transform it, and resume. This sounds banal. It is in fact what makes the rest of the project possible.

define i32 @add(i32 %a, i32 %b) {
entry:
  %sum = add nsw i32 %a, %b
  ret i32 %sum
}

Exhaustion is the project

Maintaining a compiler is mostly being patient with people who think compilers are easy.
An LLVM committer, off the record

I spent a week at a small LLVM developers’ meeting in Munich. The thing nobody tells you about open-source compiler work is that it is mostly tired people in good chairs, reading other tired people’s patches, with cheerful patience. There is no glamour. The reward, if there is one, is that fifteen years from now your work will still be running on a phone in someone’s pocket.

The reward is that the work outlasts you. That is, as far as I can tell, the only reason any of them do it.

Written by
S. Lindqvist
4.2K followers

Compiler engineer, occasional reporter. Writes about the human side of large open source projects.

More from Compiler Notes

See all →