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

Richard Sandiford <rsandifo at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
           Keywords|needs-bisection             |
           Assignee|unassigned at gcc dot gnu.org      |rsandifo at gcc dot 
gnu.org
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2026-03-11

--- Comment #1 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
Confirmed.  This also affects the 32-bit ABI, so (fortunately!) isn't another
TRULY_NOOP_TRUNCATION thing.

Bisects to the expr.cc part of r16-7265-ga9e48eca3a6eef.  In:

static bool
store_field_updates_msb_p (poly_int64 bitpos, poly_int64 bitsize, rtx to_rtx)
{
  poly_int64 to_size = GET_MODE_SIZE (GET_MODE (to_rtx));
  poly_int64 bitnum = BYTES_BIG_ENDIAN ? to_size - bitsize - bitpos : bitpos;
  return maybe_eq (bitnum + bitsize, to_size);
}

the GET_MODE_SIZE should be GET_MODE_BITSIZE.

Reply via email to