This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/53759] [4.7/4.8 Regression] gcc -mavx emits vshufps for __builtin_ia32_loadlps


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-06-24
                 CC|                            |areg.melikadamyan at gmail
                   |                            |dot com, hjl.tools at gmail
                   |                            |dot com, ubizjak at gmail
                   |                            |dot com
   Target Milestone|---                         |4.7.2
            Summary|gcc -mavx emits vshufps for |[4.7/4.8 Regression] gcc
                   |__builtin_ia32_loadlps      |-mavx emits vshufps for
                   |                            |__builtin_ia32_loadlps
     Ever Confirmed|0                           |1

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> 2012-06-24 14:54:44 UTC ---
GCC 4.6 doesn't have this problem:

[hjl@gnu-6 pr53759]$ cat x.i
typedef float v4sf __attribute__ ((vector_size (4*4)));
typedef float v2sf __attribute__ ((vector_size (4*2)));

v2sf mem[1];

int main()
{
  v4sf reg = (v4sf){0,0,0,0};
  reg = __builtin_ia32_loadlps(reg, mem);
  return reg[0];
}
[hjl@gnu-6 pr53759]$ gcc -S -mavx -O x.i
[hjl@gnu-6 pr53759]$ cat x.s
    .file    "x.i"
    .text
    .globl    main
    .type    main, @function
main:
.LFB0:
    .cfi_startproc
    vxorps    %xmm0, %xmm0, %xmm0
    vmovlps    mem(%rip), %xmm0, %xmm0
    vcvttss2si    %xmm0, %eax
    ret
    .cfi_endproc
.LFE0:
    .size    main, .-main
    .comm    mem,8,8
    .ident    "GCC: (GNU) 4.6.3 20120306 (Red Hat 4.6.3-2)"
    .section    .note.GNU-stack,"",@progbits
[hjl@gnu-6 pr53759]$


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]