Displaying 5 results from an estimated 5 matches for "gpr_cr".
Did you mean:
gpr_b
2012 Jan 20
3
[LLVMdev] register allocation
...ve to be spilled, at least not on -O3.
> Spill-free register allocation sounds great, why not do it for all register classes?
Well, in this architecture, each GPR has its own CR, and I have made a super-register that includes the GPR and CR when the flag is needed. I need to write code like:
GPR_CR = cmp GPR, 0 // GPR_CR def
<other code, possibly using just GPR's without setting the CR>
br #, GPR_CR // GPR_CR use
Basically, I would like to make sure tha...
2012 Jan 19
0
[LLVMdev] register allocation
On Jan 19, 2012, at 5:31 AM, Jonas Paulsson wrote:
> LLVM would have to be extended with an RegClass/register-attribute 'spillable'
What exactly are you proposing? Why can't you do what the PowerPC and Hexagon targets do?
Spill-free register allocation sounds great, why not do it for all register classes?
> , and a register allocator would have to implement register pairing.
2012 Jan 19
3
[LLVMdev] register allocation
Hi,
My target has special requirements during register allocation - there is both a need to handle register pairing and to never spill a flag result reg-class (which might happen at -O0 for no obvious reason).
Since neither of these issues seems to be supported, I have tried to pre-allocate these registers in the preRA pass. This has resulted in "using undefined physical register"
2012 Jan 20
0
[LLVMdev] register allocation
...ve to be spilled, at least not on -O3.
And the register allocator is trying very hard not to do that, but sometimes it just isn't possible.
You have the choice between aborting compilation or inserting expensive spill code when that happens.
> Basically, I would like to make sure that the GPR_CR reg is not spilled before another GPR-only reg is spilled, as it would be idiotic. As the super-register is wider than the GPR I do not see why this happened, but at -O0
> this happened for some reason or other.
I sounds like you disabled optimizations, and now optimizations are missing. The fa...
2012 Feb 02
2
[LLVMdev] register allocation
Hi Jakob, Jonas et al,
Jakob wrote:
[...]
> Jonas wrote:
> [...]
> > What's more, setting the GPR_CR class to 'not-spillable' would probably do the trick here as we
> > basically do not want to do this, and I would not have to pre-allocate. But there is probably a
> > better way, or?
>
> I am sorry, I simply don't understand what you are asking for. You might as we...