Thank you for LLVM Register Allocator 3.0!

My research involves subtle changes to register and stack slot allocation in the LLVM back-end. Working with the old LinearScan + VirtRegMap system was difficult, to say the least. In fact, after having now ported my stuff to work with the new “greedy” register allocator, I will even go so far to say that it was a nightmare. The new register allocator is smooth, modular, and pluggable, and I can’t tell you how much I appreciate all the effort that went into putting it together. My only regret is that I spent so many countless hours trying to decipher the old splitting and rewriting system. This is MUCH cleaner.

So thank you Jakob and the rest of the crew that supported this effort. Register allocation is something that most LLVM users probably take for granted and working on it would seem to be a fairly thankless job. Well you have my thanks at least!