Displaying 5 results from an estimated 5 matches for "subreg1".
Did you mean:
subregs
2012 May 11
2
[LLVMdev] overlaps generation, RA crasch
Hi,
Recently on trunk, the ovlaps list for a register got a dual entry on my target, which caused the RA to crash.
Reg
Subreg1
Subreg b
Subreg2
Subreg b
I have a register with two subregs that have subreg b in common. This causes the SuperReg to appear twice in the ovelaps list for Subreg b.
As this causes a register allocator to crasch (it evicts a register, and then inremenets the *AliasI, but the data struct...
2013 May 31
2
[LLVMdev] Register coalescer and reg_sequence (virtual super-regs)
...r coalescing decisions
(CoalescerPair::Partial = 0).
For example, I have a super reg that has r20, r21, r22, and r23 physical
registers. This super reg is the dest of a reg_sequence which generates 4
COPY MIs. The first COPY coalesces (merging into r20), but the vregs for
r21-r23 (SUPER_RC:%vreg50:subreg1..subreg3) are never coalesced after that
because doing so generates inteference on %vreg50, the "parent" super reg.
Is there a way to work around this? It causes unnecessary copies.
Thanks,
Joe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://li...
2012 May 11
0
[LLVMdev] overlaps generation, RA crasch
On May 11, 2012, at 6:35 AM, Jonas Paulsson <jonas.paulsson at ericsson.com> wrote:
> Hi,
>
> Recently on trunk, the ovlaps list for a register got a dual entry on my target, which caused the RA to crash.
>
> Reg
> Subreg1
> Subreg b
> Subreg2
> Subreg b
>
> I have a register with two subregs that have subreg b in common. This causes the SuperReg to appear twice in the ovelaps list for Subreg b
This should be fixed in r156629.
/jakob
-------------- next part --------------
An HTML attach...
2013 May 31
0
[LLVMdev] Register coalescer and reg_sequence (virtual super-regs)
...ng decisions (CoalescerPair::Partial = 0).
>
> For example, I have a super reg that has r20, r21, r22, and r23 physical registers. This super reg is the dest of a reg_sequence which generates 4 COPY MIs. The first COPY coalesces (merging into r20), but the vregs for r21-r23 (SUPER_RC:%vreg50:subreg1..subreg3) are never coalesced after that because doing so generates inteference on %vreg50, the "parent" super reg.
>
> Is there a way to work around this? It causes unnecessary copies.
Is this happening on trunk, or are you using an old version of LLVM?
/jakob
2013 May 31
2
[LLVMdev] Register coalescer and reg_sequence (virtual super-regs)
...air::Partial = 0).
> >
> > For example, I have a super reg that has r20, r21, r22, and r23 physical
> registers. This super reg is the dest of a reg_sequence which generates 4
> COPY MIs. The first COPY coalesces (merging into r20), but the vregs for
> r21-r23 (SUPER_RC:%vreg50:subreg1..subreg3) are never coalesced after that
> because doing so generates inteference on %vreg50, the "parent" super reg.
> >
> > Is there a way to work around this? It causes unnecessary copies.
>
> Is this happening on trunk, or are you using an old version of LLVM?
>...