[Bug tree-optimization/84794] memcpy/memmove between a struct and its first member not eliminated
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Mar 12 09:02:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84794
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2018-03-12
Ever confirmed|0 |1
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
_2 = &p_4(D)->D.1965.b;
this should be canonicalized to
_2 = p_4(D);
we don't do such canonicalization because it defeats __builtin_object_size
Eventually the laddress pass could apply such canonicalization more
aggressively
(still needs folding to trigger on the mem{cpy,move}).
More information about the Gcc-bugs
mailing list