search for: availreg

Displaying 2 results from an estimated 2 matches for "availreg".

Did you mean: availregs
2012 Nov 10
0
[LLVMdev] register scavenger
...more code vreg2 = add SP, 2000 ... = load vreg2 <kill> R1 = load ScavengeSlot // Restore ... = R1 ===> we replace vreg1 with R1 and advance the RS' state by calling RS->forward(It) R1 = ... store R1, ScavengeSlot // Spill R1 = add SP, 1000 ... = load R1 <kill> <-- It AvailRegs {R1} ... // more code vreg2 = add SP, 2000 ... = load vreg2 <kill> R1 = load ScavengeSlot // Restore ... = R1 The client has to keep liveness current by calling RS->forward(MachineBasicBlock::iterator). On Sat, Nov 10, 2012 at 4:17 PM, Reed Kotler <rkotler at mips.com> wrote: &gt...
2012 Nov 10
5
[LLVMdev] register scavenger
I'm confused as to the logic used in the register scavenger when it cannot find a free register. I would think that it would want to free up the emergency spill slot immediately after it's use, because otherwise there is a chance of needing to use the emergency slot again and not be able to. Instead it tries to restore it only right before register it is freeing up. Maybe I'm