https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61810
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://gcc.gnu.org/bugzill
| |a/show_bug.cgi?id=110459
--- Comment #14 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #13)
>
> We first do:
> ```
> MEM <char[1]> [(union Data *)&D.2968 + 1B] = {};
> D.2968.a = c_3(D);
> ```
> But when expanding D.2968 is a register. If we had a late "SRA" like pass
> which handles things like this we could instead just set the full register
> to zero and not end up with this partial set which needs to combine with the
> zeroing from init-regs.
This is very much related to PR 110459.