[LLVMdev] Regalloc Refactoring

Anton Vayvod 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...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070417/1f06a106/attachment.html>


More information about the llvm-dev mailing list