search for: vtrc

Displaying 4 results from an estimated 4 matches for "vtrc".

Did you mean: trc
2015 Aug 25
2
[LLVMdev] TableGen Register Class not matching for MI in 3.6
...egisterClass *RC = TRI->getAllocatableClass(TII->getRegClass(II, i, TRI, *MF)); That returns GPRBaseRegs for RC, but it then decides to constrain it based on type: if (i < NumResults && TLI->isTypeLegal(Node->getSimpleValueType(i))) { const TargetRegisterClass *VTRC = TLI->getRegClassFor(Node->getSimpleValueType(i)); errs()<<"CVR VTRC: "<<VTRC->getID()<<"\n"; if (RC) VTRC = TRI->getCommonSubClass(RC, VTRC); if (VTRC) RC = VTRC; } VTRC = GPRRegs. Then RC=VTRC makes...
2015 Aug 25
2
[LLVMdev] TableGen Register Class not matching for MI in 3.6
...->getAllocatableClass(TII->getRegClass(II, i, TRI, *MF)); > > That returns GPRBaseRegs for RC, but it then decides to constrain it based > on type: > > if (i < NumResults && TLI->isTypeLegal(Node->getSimpleValueType(i))) { > const TargetRegisterClass *VTRC = > TLI->getRegClassFor(Node->getSimpleValueType(i)); > errs()<<"CVR VTRC: "<<VTRC->getID()<<"\n"; > if (RC) > VTRC = TRI->getCommonSubClass(RC, VTRC); > if (VTRC) > RC = VTRC; > } &...
2015 Aug 25
2
[LLVMdev] TableGen Register Class not matching for MI in 3.6
...(TII->getRegClass(II, i, TRI, *MF)); >> >> That returns GPRBaseRegs for RC, but it then decides to constrain it >> based on type: >> >> if (i < NumResults && TLI->isTypeLegal(Node->getSimpleValueType(i))) { >> const TargetRegisterClass *VTRC = >> TLI->getRegClassFor(Node->getSimpleValueType(i)); >> errs()<<"CVR VTRC: "<<VTRC->getID()<<"\n"; >> if (RC) >> VTRC = TRI->getCommonSubClass(RC, VTRC); >> if (VTRC) >>...
2015 Aug 25
2
[LLVMdev] TableGen Register Class not matching for MI in 3.6
1. MOV16Copy_IMM_REG is the instruction matched, sorry. AD is the multiclass. The IMM in my case is a global. So you can see that GPRBaseRegs, GPRBaseRegs sets the registerclass for both the src and dst operands, in this case (MOV16Copy_IMM_REG) it's the dst. 2. Yes I agree, it most likely would. Honestly, this comes across like a bug, or unintended feature. It's adding an extra COPY to