[LLVMdev] Removing the bigblock register allocator.
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.
More information about the llvm-dev