https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109495
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |missed-optimization Known to fail| |13.0, 7.5.0 Version|unknown |13.0 CC| |hubicka at gcc dot gnu.org, | |rguenth at gcc dot gnu.org Target| |x86_64-*-* Last reconfirmed| |2023-04-13 Status|UNCONFIRMED |NEW Component|c++ |middle-end Ever confirmed|0 |1 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Selected stringop expansion strategy: libcall Selected stringop expansion strategy: libcall Selected stringop expansion strategy: libcall Selected stringop expansion strategy: libcall ;; MEM[(struct Child *)_6].D.35468 = MEM[(const struct Child &)_3].D.35468; and for some reason we expand this to a memcpy to a stack temporary and then a memcpy from that stack temporary!?