[LLVMdev] Removing the bigblock register allocator.

Chris Lattner clattner at apple.com
Wed Jul 29 22:55:43 PDT 2009


On Jul 29, 2009, at 10:31 PM, Roman Levenstein wrote:

> As far as I know, we have these ambitious plans since a while (just X
> years), but there is no good replacement for a LLVM linear scan yet :)
> The alternatives are either slower at compile time or generate  
> slower code.

Sure, we've been able to make the current algorithm significantly  
better over the years.  However, we're getting more serious about  
actually doing something about the core algorithms.

> BTW, the research papers that I mentioned are not about improving
> register allocation for large blocks (which was the target in the case
> of BigBlock). They are about register allocation for general purpose
> CFGs. And they report improvements (greatly reduced number of
> load/stores for spills) over linear scan.

Sure, we won't keep the linscan algorithm.  The current LLVM linscan  
implementation is not linear time in any case, and shares little with  
the commonly published algorithms.

-Chris



More information about the llvm-dev mailing list