[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc-bugs
Subject:    c/6890: xmmintrin.h, _MM_TRANSPOSE4_PS is broken
From:       stephen.kennedy () havok ! com
Date:       2002-05-31 17:47:07
[Download RAW message or body]


> Number:         6890
> Category:       c
> Synopsis:       xmmintrin.h, _MM_TRANSPOSE4_PS is broken
> Confidential:   no
> Severity:       serious
> Priority:       medium
> Responsible:    unassigned
> State:          open
> Class:          sw-bug
> Submitter-Id:   net
> Arrival-Date:   Fri May 31 10:56:01 PDT 2002
> Closed-Date:
> Last-Modified:
> Originator:     Stephen Kennedy
> Release:        3.1 (Debian) (Debian testing/unstable)
> Organization:
> 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
> Description:
	the code in _MM_TRANSPOSE4_PS is incorrect.
> How-To-Repeat:
	n/a
> 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);			\
> Release-Note:
> Audit-Trail:
> Unformatted:


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic