https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122757

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2025-11-19
             Status|UNCONFIRMED                 |ASSIGNED
     Ever confirmed|0                           |1

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Int has the same issue too:
```
typedef struct IF { int a; int b; int c;} IF;
void if_packing (IF i, IF j);

void
call_if_packing (void)
{
 IF A = {1, 2, 3};
 if_packing ( A, A);
}
```


        adrp    x0, .LANCHOR0
        add     x1, x0, :lo12:.LANCHOR0
        ldr     x2, [x0, #:lo12:.LANCHOR0]
        ldr     w3, [x1, 8]
        mov     x0, x2
        mov     x1, x3
        b       if_packing(IF, IF)

vs:
        sub     sp, sp, #16
        mov     x2, 1
        movk    x2, 0x2, lsl 32
        mov     x3, 3
        mov     x0, x2
        mov     x1, x3
        add     sp, sp, 16
        b       if_packing(IF, IF)

Reply via email to