[Bug target/28960] [4.0/4.1 Regression] optimized bug with ia32 sse

2006-10-16 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2006-10-16 10:16 ---
Differences mainline vs. 4.1.x are

@@ -8,14 +8,19 @@
 test:
pushl   %ebp
movl%esp, %ebp
-   subl$40, %esp
-   movss   12(%ebp), %xmm1
-   movaps  %xmm1, %xmm2
-   unpcklps%xmm1, %xmm2
-   movaps  %xmm2, %xmm0
+   subl$56, %esp
+   movd12(%ebp), %mm1
+   movq%mm1, %mm2
+   punpckldq   %mm2, %mm2
+   movd%mm1, -4(%ebp)
+   movss   -4(%ebp), %xmm1
xorps   %xmm2, %xmm2
unpcklps%xmm2, %xmm1
-   movlhps %xmm1, %xmm0
+   movaps  %xmm1, %xmm0
+   movq%mm2, -16(%ebp)
+   movq2dq %mm2, %xmm1
+   movlhps %xmm0, %xmm1
+   movaps  %xmm1, %xmm0
addps   mm, %xmm0
movaps  %xmm0, mm
movl8(%ebp), %eax

i.e. 4.1.x uses MMX code here.  This is PR28825 actually, I'll do a backport.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

  BugsThisDependsOn||28825
 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-09-06 14:23:10 |2006-10-16 10:16:09
   date||


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



[Bug target/28960] [4.0/4.1 Regression] optimized bug with ia32 sse

2006-10-16 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2006-10-16 11:35 ---
Subject: Bug 28960

Author: rguenth
Date: Mon Oct 16 11:34:44 2006
New Revision: 117784

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=117784
Log:
2006-10-16  Richard Guenther  [EMAIL PROTECTED]

PR target/28960
Backport from mainline:
2006-08-23  Stuart Hastings  [EMAIL PROTECTED]

PR target/28825
* gcc/config/i386/i386.c (ix86_expand_vector_init_duplicate,
ix86_expand_vector_init_one_nonzero): Remove TARGET_SSE test.

* gcc.target/i386/20060821-1.c: New.

Added:
branches/gcc-4_1-branch/gcc/testsuite/gcc.target/i386/20060821-1.c
  - copied unchanged from r116356,
trunk/gcc/testsuite/gcc.target/i386/20060821-1.c
Modified:
branches/gcc-4_1-branch/gcc/ChangeLog
branches/gcc-4_1-branch/gcc/config/i386/i386.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug target/28960] [4.0/4.1 Regression] optimized bug with ia32 sse

2006-09-06 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2006-09-06 14:23 ---
Confirmed.  With -mfpmath=sse I get

Before TEST: 1.00 2.00 3.00
In TEST: nan 2.00 3.00
After  TEST: 1.00 2.00 3.00

with -mfpmath=sse,387

Before TEST: 1.00 2.00 3.00
In TEST: 1.00 2.00 nan
After  TEST: 1.00 2.00 3.00


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
 GCC target triplet||i?86-*-*
   Keywords||wrong-code
  Known to fail||4.0.3 4.1.1 4.1.2
  Known to work||3.4.6 4.2.0
   Last reconfirmed|-00-00 00:00:00 |2006-09-06 14:23:10
   date||
Summary|optimized bug with ia32 sse |[4.0/4.1 Regression]
   ||optimized bug with ia32 sse
   Target Milestone|--- |4.0.4


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