[Bug rtl-optimization/70873] [7 Regressio] 20% performance regression at 482.sphinx3 after r235442 with -O2 -m32 on Haswell.

hjl.tools at gmail dot com gcc-bugzilla@gcc.gnu.org
Fri Apr 29 19:22:00 GMT 2016


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

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-04-29
                 CC|                            |hjl.tools at gmail dot com
     Ever confirmed|0                           |1

--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Bernd Schmidt from comment #2)
> Can you give me more information what exactly is causing the stall - which
> instructions are affected, and what needs to be done to avoid it?

    xorpd    %xmm6, %xmm6, %xmm6  <<< Clear %xmm6
    vcvtss2sd    (%esi,%eax,4), %xmm6, %xmm7
                                       ^^^^^^^ This cause SSE register stall.

It should generate

    xorpd    %xmm6, %xmm6, %xmm6
    vcvtss2sd    (%esi,%eax,4), %xmm6, %xmm6


More information about the Gcc-bugs mailing list