rpms/gcc/devel gcc4-rh169765.patch,NONE,1.1 gcc4.spec,1.83,1.84

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Fri Oct 7 18:37:50 UTC 2005


Author: jakub

Update of /cvs/dist/rpms/gcc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv372

Modified Files:
	gcc4.spec 
Added Files:
	gcc4-rh169765.patch 
Log Message:
4.0.2-3


gcc4-rh169765.patch:
 config/i386/i386.md         |    4 ++--
 testsuite/g++.dg/opt/mmx2.C |   23 +++++++++++++++++++++++
 2 files changed, 25 insertions(+), 2 deletions(-)

--- NEW FILE gcc4-rh169765.patch ---
2005-10-07  Jakub Jelinek  <jakub at redhat.com>

	* config/i386/i386.md (movsi_1, movdi_1_rex64): Use mmxadd type
	for setting MMX register to 0 rather than mmx.

	* g++.dg/opt/mmx2.C: New test.

--- gcc/config/i386/i386.md.jj	2005-09-28 21:12:50.000000000 +0200
+++ gcc/config/i386/i386.md	2005-10-04 00:12:50.000000000 +0200
@@ -1174,7 +1174,7 @@
 }
   [(set (attr "type")
      (cond [(eq_attr "alternative" "2")
-	      (const_string "mmx")
+	      (const_string "mmxadd")
 	    (eq_attr "alternative" "3,4,5")
 	      (const_string "mmxmov")
 	    (eq_attr "alternative" "6")
@@ -1980,7 +1980,7 @@
 }
   [(set (attr "type")
      (cond [(eq_attr "alternative" "5")
-	      (const_string "mmx")
+	      (const_string "mmxadd")
 	    (eq_attr "alternative" "6,7,8")
 	      (const_string "mmxmov")
 	    (eq_attr "alternative" "9")
--- gcc/testsuite/g++.dg/opt/mmx2.C.jj	2005-10-04 00:19:27.000000000 +0200
+++ gcc/testsuite/g++.dg/opt/mmx2.C	2005-10-04 00:56:16.000000000 +0200
@@ -0,0 +1,23 @@
+// { dg-do link { target i?86-*-* x86_64-*-* } }
+// { dg-options "-O2 -mmmx" }
+
+#include <mmintrin.h>
+
+static union u { __m64 m; long long l; } u;
+extern "C" void abort (void);
+
+__attribute__((noinline))
+void bar (__m64 x)
+{
+  u.m = x;
+}
+
+int
+main ()
+{
+  bar (_mm_set_pi32 (0x000000FF,0xFFFF00FF));
+  _mm_empty ();
+  if (u.l != 0xffffff00ffLL)
+    abort ();
+  return 0;
+}


Index: gcc4.spec
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/gcc4.spec,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -r1.83 -r1.84
--- gcc4.spec	7 Oct 2005 14:27:12 -0000	1.83
+++ gcc4.spec	7 Oct 2005 18:37:46 -0000	1.84
@@ -107,6 +107,7 @@
 Patch25: gcc4-dwarf2-inline-details.patch
 Patch26: gcc4-dv.patch
 Patch27: gcc4-dwarf2-frame_base.patch
+Patch28: gcc4-rh169765.patch
 
 %define _gnu %{nil}
 %ifarch sparc
@@ -443,6 +444,7 @@
 %patch25 -p0 -b .dwarf2-inline-details~
 %patch26 -p0 -b .dv~
 %patch27 -p0 -b .dwarf2-frame_base~
+%patch28 -p0 -b .rh169765~
 
 perl -pi -e 's/4\.0\.3/4.0.2/' gcc/version.c
 perl -pi -e 's/"%{gcc_version}"/"%{gcc_version} \(release\)"/' gcc/version.c
@@ -1476,6 +1478,7 @@
   - PRs fortran/18568, debug/24070, middle-end/15855, target/22585,
 	target/23570
 - fix libjava configury, broken by recent gkt+-2.0 pkg-config changes
+- fix clearing of MMX registers (#169765)
 
 * Wed Oct  5 2005 Jakub Jelinek  <jakub at redhat.com> 4.0.2-2
 - update from CVS




More information about the fedora-cvs-commits mailing list