[Bug target/107270] [11/12/13/14 Regression] return for structure is not as good as before

2024-02-22 Thread pinskia at gcc dot gnu.org via Gcc-bugs
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

2024-02-22 Thread pinskia at gcc dot gnu.org via Gcc-bugs
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

2024-02-22 Thread rearnsha at gcc dot gnu.org via Gcc-bugs
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

2023-07-07 Thread rguenth at gcc dot gnu.org via Gcc-bugs
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.