[Bug rtl-optimization/59511] New: [4.9 Regression] FAIL: gcc.target/i386/pr36222-1.c scan-assembler-not movdqa with -mtune=corei7

ubizjak at gmail dot com gcc-bugzilla@gcc.gnu.org
Sun Dec 15 12:11:00 GMT 2013


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

            Bug ID: 59511
           Summary: [4.9 Regression] FAIL: gcc.target/i386/pr36222-1.c
                    scan-assembler-not movdqa with -mtune=corei7
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ubizjak at gmail dot com

Hello!

The gcc.target/i386/pr36222-1.c compiles for x86_64-linux-gnu with "-O2
-mno-sse3 -mtune=corei7" to:

_mm_set_epi32:
        movd    %ecx, %xmm1
        movd    %edx, %xmm4
        movd    %esi, %xmm0
        movd    %edi, %xmm3
        punpckldq       %xmm4, %xmm1
        movdqa  %xmm1, %xmm2
        punpckldq       %xmm3, %xmm0
        punpcklqdq      %xmm0, %xmm2
        movdqa  %xmm2, %xmm0
        ret

However, 4.8 branch compiles to:

_mm_set_epi32:
        movd    %esi, %xmm1
        movd    %edi, %xmm2
        movd    %ecx, %xmm0
        movd    %edx, %xmm3
        punpckldq       %xmm2, %xmm1
        punpckldq       %xmm3, %xmm0
        punpcklqdq      %xmm1, %xmm0
        ret



More information about the Gcc-bugs mailing list