[LLVMdev] Regalloc Refactoring
avayvod at gmail.com
Mon Apr 16 22:21:56 PDT 2007
On 4/17/07, David Greene <greened at obbligato.org> wrote:
> Is anyone aware of publications addressing the interplay among
> coalescing, live range splitting, register allocation and spilling?
I think in the paper I mentioned above ("Design and Implementation of GCRA
in GCC"; though the implementation failed at last the paper itself contains
a lot of useful information) there are descriptions of different coalescing
techniques: iterated, optimistic and extended coalescing. You can find the
papers on these methods at citeseer, for example. Here are the links:
http://citeseer.ist.psu.edu/park98optimistic.html for optimistic and
http://citeseer.ist.psu.edu/197136.html for iterated coalescing.
The main idea is to try to split live ranges of the coalesced virtual regs
that haven't got a color during the select step and to color them
separately. I think this is exactly what Chris suggests (with
rematerialization, too, of course).
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev