[Bug tree-optimization/56151] New: Performance degradation after r194054 on x86 Atom.

ysrumyan at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Jan 30 15:18:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56151

             Bug #: 56151
           Summary: Performance degradation after r194054 on x86 Atom.
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ysrumyan@gmail.com


For simple test-case extracted from one important benchmark we see number
instrctions increasing after fix r194054. If we compile test-case with compiler
built before this revision we have only 6 instructions for store stmt:

    movl    %edx, %ebx
    movl    %edx, %ebp
    sarl    $5, %ebx
    andl    $31, %ebp
    movl    setmask(,%ebp,4), %ebp
    orl    %ebp, (%edi,%ebx,4)

but after this fix we got 9 instrctions for it:

    movl    %edx, %ebx
    movl    56(%esp), %esi
    sarl    $5, %ebx
    movl    %edx, %ebp
    andl    $31, %ebp
    leal    (%esi,%ebx,4), %esi
    movl    (%esi), %ebx
    orl    setmask(,%ebp,4), %ebx
    movl    %ebx, (%esi)

To reproduce it is sufficient to compile with the following options:

-O2 -ffast-math -msse2 -mfpmath=sse -m32 -march=atom -mtune=atom



More information about the Gcc-bugs mailing list