[llvm] r293537 - GlobalISel: permit unused vregs without a register-class after ISel.

Quentin Colombet via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 30 11:49:51 PST 2017


> On Jan 30, 2017, at 11:48 AM, Quentin Colombet <qcolombet at apple.com> wrote:
> 
> 
>> On Jan 30, 2017, at 11:43 AM, Tim Northover <tnorthover at apple.com> wrote:
>> 
>> On 30 Jan 2017, at 11:32, Quentin Colombet <qcolombet at apple.com> wrote:
>>> I would have expected InstructionSelect to get rid of the unused vregs.
>> 
>> Why?
>> It seems like a pretty arbitrary place to do that. The sensible choices seem to be "leave them be, they're harmless" or "every time a transformation might leave a register unused”.
> 
> My problem is not with unused register, it is with unused register without register class.
> After ISel everything should have a register class otherwise that means that the instruction hasn’t been selected.

Put differently, I found that concerning that we can end up in this situation and it weakens the invariant on the post ISel IR.

> 
>> 
>> Cheers.
>> 
>> Tim.
> 



More information about the llvm-commits mailing list