[Bug middle-end/28831] [6/7/8 Regression] Aggregate copy not elided when using a return value as a pass-by-value parameter

aldyh at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Feb 1 19:46:00 GMT 2018


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

Aldy Hernandez <aldyh at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2010-01-17 13:10:45         |2018-2-1
                 CC|                            |aldyh at gcc dot gnu.org

--- Comment #31 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
Still a problem, though we now generate slightly worse code by using rep;movsl
instead of a memcpy:

        movl    %esp, %esi
        subl    $12, %esp
        pushl   %esi
        call    f
        subl    $3988, %esp
        movl    $1000, %ecx
        movl    %esp, %edi
        rep; movsl
        call    g


More information about the Gcc-bugs mailing list