public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/43124]  New: SSE2 / stack align
@ 2010-02-19 23:47 kai dot germaschewski at gmail dot com
  2010-02-20  0:03 ` [Bug c/43124] " kai dot germaschewski at gmail dot com
  2010-02-20  1:06 ` hjl dot tools at gmail dot com
  0 siblings, 2 replies; 3+ messages in thread
From: kai dot germaschewski at gmail dot com @ 2010-02-19 23:47 UTC (permalink / raw)
  To: gcc-bugs

I'm using the stock Fedora 12 gcc, RPM gcc-4.4.3-4.fc12.x86_64.
Whereas it appears to align __m128 variables correctly (16-bytes), it accesses
them as if they were only 8 byte aligned.

I read various threads etc about aligning variables on the stack, but my belief
is that this never was a problem on x86_64, and in fact using gcc-4.3.2 it
generates the expected code.

#include <xmmintrin.h>

void
test(__m128 *x)
{
  volatile __m128 tmp = *x;
}

generates

gcc-4.4.3-4.fc12
0000000000000000 <test>:
   0:   55                      push   %rbp
   1:   48 89 e5                mov    %rsp,%rbp
   4:   48 89 7d e8             mov    %rdi,-0x18(%rbp)
   8:   48 8b 45 e8             mov    -0x18(%rbp),%rax
   c:   0f 28 00                movaps (%rax),%xmm0
   f:   0f 13 45 f0             movlps %xmm0,-0x10(%rbp)
  13:   0f 17 45 f8             movhps %xmm0,-0x8(%rbp)
  17:   c9                      leaveq 
  18:   c3                      retq   

gcc-4.3.2: (correct)
0000000000000000 <test>:
   0:   55                      push   %rbp
   1:   48 89 e5                mov    %rsp,%rbp
   4:   48 89 7d e8             mov    %rdi,0xffffffffffffffe8(%rbp)
   8:   48 8b 45 e8             mov    0xffffffffffffffe8(%rbp),%rax
   c:   0f 28 00                movaps (%rax),%xmm0
   f:   0f 29 45 f0             movaps %xmm0,0xfffffffffffffff0(%rbp)
  13:   c9                      leaveq 
  14:   c3                      retq


-- 
           Summary: SSE2 / stack align
           Product: gcc
           Version: 4.4.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: kai dot germaschewski at gmail dot com
 GCC build triplet: x86_64-redhat-linux
  GCC host triplet: x86_64-redhat-linux
GCC target triplet: x86_64-redhat-linux


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c/43124] SSE2 / stack align
  2010-02-19 23:47 [Bug c/43124] New: SSE2 / stack align kai dot germaschewski at gmail dot com
@ 2010-02-20  0:03 ` kai dot germaschewski at gmail dot com
  2010-02-20  1:06 ` hjl dot tools at gmail dot com
  1 sibling, 0 replies; 3+ messages in thread
From: kai dot germaschewski at gmail dot com @ 2010-02-20  0:03 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from kai dot germaschewski at gmail dot com  2010-02-20 00:03 -------
I think I should include this:

[kai@fishercat linear_algebra]$ gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla
--enable-bootstrap --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-gnu-unique-object
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk
--disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre
--enable-libgcj-multifile --enable-java-maintainer-mode
--with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib
--with-ppl --with-cloog --with-tune=generic --with-arch_32=i686
--build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) 


-- 


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c/43124] SSE2 / stack align
  2010-02-19 23:47 [Bug c/43124] New: SSE2 / stack align kai dot germaschewski at gmail dot com
  2010-02-20  0:03 ` [Bug c/43124] " kai dot germaschewski at gmail dot com
@ 2010-02-20  1:06 ` hjl dot tools at gmail dot com
  1 sibling, 0 replies; 3+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-02-20  1:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from hjl dot tools at gmail dot com  2010-02-20 01:05 -------


*** This bug has been marked as a duplicate of 39315 ***


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-02-20  1:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-19 23:47 [Bug c/43124] New: SSE2 / stack align kai dot germaschewski at gmail dot com
2010-02-20  0:03 ` [Bug c/43124] " kai dot germaschewski at gmail dot com
2010-02-20  1:06 ` hjl dot tools at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).