User account creation filtered due to spam.

Bug 6890 - xmmintrin.h, _MM_TRANSPOSE4_PS is broken
Summary: xmmintrin.h, _MM_TRANSPOSE4_PS is broken
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: target (show other bugs)
Version: 3.1
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-05-31 10:56 UTC by stephen.kennedy
Modified: 2003-07-25 17:33 UTC (History)
2 users (show)

See Also:
Host: i386-pc-linux-gnu
Target: i386-pc-linux-gnu
Build: i386-pc-linux-gnu
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description stephen.kennedy 2002-05-31 10:56:01 UTC
	the code in _MM_TRANSPOSE4_PS is incorrect.

Release:
3.1 (Debian) (Debian testing/unstable)

Environment:
System: Linux stag 2.4.17-686sk #1 Fri Feb 15 18:08:06 GMT 2002 i686 unknown
Architecture: i686

	
host: i386-pc-linux-gnu
build: i386-pc-linux-gnu
target: i386-pc-linux-gnu
configured with: /mnt/data/gcc-3.1/gcc-3.1-3.1ds2/src/configure -v --enable-languages=c,c++,java,f77,proto,objc,ada --prefix=/usr --mandir=$\(prefix\)/share/man --infodir=$\(prefix\)/share/info --with-gxx-include-dir=$\(prefix\)/include/g++-v3-3.1 --enable-shared --with-system-zlib --enable-long-long --enable-nls --without-included-gettext --enable-clocale=gnu --enable-threads=posix --enable-java-gc=boehm --enable-objc-gc i386-linux

How-To-Repeat:
	n/a
Comment 1 stephen.kennedy 2002-05-31 10:56:01 UTC
Fix:
Apply the following patch

--- xmmintrin.h.old	Fri May 31 18:43:57 2002
+++ xmmintrin.h	Fri May 31 18:31:55 2002
@@ -1049,8 +1049,8 @@
 do {									\
   __v4sf __r0 = (row0), __r1 = (row1), __r2 = (row2), __r3 = (row3);	\
   __v4sf __t0 = __builtin_ia32_shufps (__r0, __r1, 0x44);		\
-  __v4sf __t1 = __builtin_ia32_shufps (__r0, __r1, 0xEE);		\
-  __v4sf __t2 = __builtin_ia32_shufps (__r2, __r3, 0x44);		\
+  __v4sf __t2 = __builtin_ia32_shufps (__r0, __r1, 0xEE);		\
+  __v4sf __t1 = __builtin_ia32_shufps (__r2, __r3, 0x44);		\
   __v4sf __t3 = __builtin_ia32_shufps (__r2, __r3, 0xEE);		\
   (row0) = __builtin_ia32_shufps (__t0, __t1, 0x88);			\
   (row1) = __builtin_ia32_shufps (__t0, __t1, 0xDD);			\
Comment 2 Jan Hubicka 2002-10-22 23:54:48 UTC
From: hubicka@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: target/6890
Date: 22 Oct 2002 23:54:48 -0000

 CVSROOT:	/cvs/gcc
 Module name:	egcs
 Changes by:	hubicka@gcc.gnu.org	2002-10-22 16:54:48
 
 Modified files:
 	gcc            : ChangeLog 
 	gcc/config/i386: i386.md xmmintrin.h 
 
 Log message:
 	PR other/8289
 	* xmmintrin.h: Add const to the argument of loads.
 	
 	* i386.md (pushv2di): New pattern.
 	PR target/6890
 	* xmmintrin.h (_MM_TRANSPOSE4_PS): New.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&r1=1.15758&r2=1.15759
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/i386.md.diff?cvsroot=gcc&r1=1.397&r2=1.398
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/xmmintrin.h.diff?cvsroot=gcc&r1=1.17&r2=1.18
 

Comment 3 Jan Hubicka 2002-10-27 02:23:13 UTC
State-Changed-From-To: open->closed
State-Changed-Why: I've commited the fix into both mainline nad 3.2 branch
Comment 4 Jan Hubicka 2002-10-27 09:28:12 UTC
From: hubicka@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org
Cc:  
Subject: target/6890
Date: 27 Oct 2002 09:28:12 -0000

 CVSROOT:	/cvs/gcc
 Module name:	egcs
 Branch: 	gcc-3_2-branch
 Changes by:	hubicka@gcc.gnu.org	2002-10-27 01:28:12
 
 Modified files:
 	gcc            : ChangeLog 
 	gcc/config/i386: xmmintrin.h 
 
 Log message:
 	PR target/6890
 	* xmmintrin.h (_MM_TRANSPOSE4_PS): New.
 
 Patches:
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.13152.2.657.2.107&r2=1.13152.2.657.2.108
 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/egcs/gcc/config/i386/xmmintrin.h.diff?cvsroot=gcc&only_with_tag=gcc-3_2-branch&r1=1.2.18.2&r2=1.2.18.3