[LLVMdev] register allocation

Jakob Stoklund Olesen stoklund at 2pi.dk
Thu Feb 2 17:02:20 PST 2012


On 2012 2 2, at 08:40, Jeroen Dobbelaere <Jeroen.Dobbelaere at synopsys.com> wrote:

> I was able to get rid of the 'moves' by setting the copycost to -1.
> For getting rid of the spills, I was forced to introduce custom nodes, that pass the CC register
> through 'glue'.
> 
> Having a property to register classes that identifies a 'glue-like' behavior would make sense to me.

I think setting CopyCost = -1 more or less does what you want, but I don't really understand what that field is for.

It is only ever used by the scheduler. Register allocation completely ignores it. Judging by how it is used, it should probably be a property of registers, not register classes.

/jakob




More information about the llvm-dev mailing list