https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34072
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #4) > So we still have an issue for the C++ example with memcpy. But the code did improve from GCC 6 to GCC 7 though. From .cfi_startproc subl $12, %esp .cfi_def_cfa_offset 16 movzwl 16(%esp), %eax addl $12, %esp .cfi_def_cfa_offset 4 shrw $8, %ax ret To: movl 4(%esp), %eax movzbl %ah, %eax So it is definitely already much better from when this was reported.