[Bug target/107270] [11/12/13/14 Regression] return for structure is not as good as before
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107270 Andrew Pinski changed: What|Removed |Added Assignee|pinskia at gcc dot gnu.org |unassigned at gcc dot gnu.org Status|ASSIGNED|NEW --- Comment #4 from Andrew Pinski --- (In reply to Richard Earnshaw from comment #2) > But this is just BFI, so it's a costing issue. Fixing that still leaves us with: Trying 8 -> 15: 8: zero_extract(r100:DI,0x20,0)=r107:SI#0 REG_DEAD r107:SI 15: x0:DI=r100:DI&0x|r108:SI#0<<0x20 REG_DEAD r108:SI REG_DEAD r100:DI Failed to match this instruction: (set (reg/i:DI 0 x0) (ior:DI (ashift:DI (subreg:DI (reg:SI 108) 0) (const_int 32 [0x20])) (zero_extend:DI (reg:SI 107 Which is a BFI but there is no pattern to match that. I will submit my rtx_cost patch still but for now I am not going to add another pattern
[Bug target/107270] [11/12/13/14 Regression] return for structure is not as good as before
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107270 Andrew Pinski changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |pinskia at gcc dot gnu.org Keywords|needs-bisection | --- Comment #3 from Andrew Pinski --- Working on a patch which adds aarch64_bfi_rtx_p to catch all of these manual BFI patterns.
[Bug target/107270] [11/12/13/14 Regression] return for structure is not as good as before
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107270 Richard Earnshaw changed: What|Removed |Added Last reconfirmed||2024-02-22 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #2 from Richard Earnshaw --- Successfully matched this instruction: (set (reg/i:DI 0 x0) (ior:DI (and:DI (reg/v:DI 92 [ b ]) (const_int 4294967295 [0x])) (ashift:DI (subreg:DI (reg:SI 100) 0) (const_int 32 [0x20] rejecting combination of insns 10 and 15 original costs 4 + 4 = 8 replacement cost 12 But this is just BFI, so it's a costing issue.
[Bug target/107270] [11/12/13/14 Regression] return for structure is not as good as before
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107270 Richard Biener changed: What|Removed |Added Target Milestone|10.5|11.5 --- Comment #1 from Richard Biener --- GCC 10 branch is being closed.