rpms/gcc/devel gcc41-build-id.patch, NONE, 1.1 gcc41-rh247256.patch, NONE, 1.1 .cvsignore, 1.209, 1.210 gcc41.spec, 1.163, 1.164 libgcc_post_upgrade.c, 1.4, 1.5 sources, 1.211, 1.212 gcc41-pr32550.patch, 1.1, NONE

Jakub Jelinek (jakub) fedora-extras-commits at redhat.com
Mon Jul 23 12:24:13 UTC 2007


Author: jakub

Update of /cvs/pkgs/rpms/gcc/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv25578

Modified Files:
	.cvsignore gcc41.spec libgcc_post_upgrade.c sources 
Added Files:
	gcc41-build-id.patch gcc41-rh247256.patch 
Removed Files:
	gcc41-pr32550.patch 
Log Message:
4.1.2-16

gcc41-build-id.patch:

--- NEW FILE gcc41-build-id.patch ---
2007-07-22  Roland McGrath  <roland at redhat.com>

	* config/rs6000/sysv4.h (LINK_EH_SPEC): Add --build-id for
	non-relocatable link.
	* config/linux.h (LINK_EH_SPEC): Likewise.
	* config/sparc/linux.h (LINK_EH_SPEC): Likewise.
	* config/sparc/linux64.h (LINK_EH_SPEC): Likewise.
	* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
	* config/ia64/linux.h (LINK_EH_SPEC): Likewise.

--- gcc/config/rs6000/sysv4.h.~1~
+++ gcc/config/rs6000/sysv4.h
@@ -1044,7 +1044,7 @@ extern int fixuplabelno;
   %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
--- gcc/config/linux.h.~1~
+++ gcc/config/linux.h
@@ -85,7 +85,7 @@ Boston, MA 02110-1301, USA.  */
     } while (0)
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 /* Define this so we can compile MS code for use with WINE.  */
--- gcc/config/sparc/linux64.h.~1~
+++ gcc/config/sparc/linux64.h
@@ -316,7 +316,7 @@ do {									\
 #define DITF_CONVERSION_LIBFUNCS 1
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 #ifdef HAVE_AS_TLS
--- gcc/config/sparc/linux.h.~1~
+++ gcc/config/sparc/linux.h
@@ -188,7 +188,7 @@ do {									\
 #define DITF_CONVERSION_LIBFUNCS 1
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 #ifdef HAVE_AS_TLS
--- gcc/config/alpha/elf.h.~1~
+++ gcc/config/alpha/elf.h
@@ -453,5 +453,5 @@ extern int alpha_this_gpdisp_sequence_nu
    I imagine that other systems will catch up.  In the meantime, it
    doesn't harm to make sure that the data exists to be used later.  */
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
--- gcc/config/ia64/linux.h.~1~
+++ gcc/config/ia64/linux.h
@@ -56,7 +56,7 @@ do {						\
    Signalize that because we have fde-glibc, we don't need all C shared libs
    linked against -lgcc_s.  */
 #undef LINK_EH_SPEC
-#define LINK_EH_SPEC ""
+#define LINK_EH_SPEC "%{!r:--build-id}"
 
 #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
 

gcc41-rh247256.patch:

--- NEW FILE gcc41-rh247256.patch ---
2007-07-10  Jakub Jelinek  <jakub at redhat.com>

	* simplify-rtx.c (simplify_plus_minus_op_data_cmp): If both operands
	are REGs and TARGET_INDEX_OPERAND_FIRST, sort lower REGNOs first.

	* gcc.dg/20070710-1.c: New test.

--- gcc/simplify-rtx.c.jj	2006-08-11 17:32:05.000000000 +0200
+++ gcc/simplify-rtx.c	2007-07-09 22:53:26.000000000 +0200
@@ -2608,6 +2608,12 @@ simplify_plus_minus_op_data_cmp (const v
 	    - commutative_operand_precedence (d1->op));
   if (result)
     return result;
+
+  /* Group together equal REGs to do more simplification.  */
+  if (TARGET_INDEX_OPERAND_FIRST && REG_P (d1->op) && REG_P (d2->op)
+      && REGNO (d1->op) != REGNO (d2->op))
+    return REGNO (d1->op) - REGNO (d2->op);
+
   return d1->ix - d2->ix;
 }
 
--- gcc/testsuite/gcc.dg/20070710-1.c.jj	2007-07-10 09:32:43.000000000 +0200
+++ gcc/testsuite/gcc.dg/20070710-1.c	2007-07-10 09:31:39.000000000 +0200
@@ -0,0 +1,17 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -ffast-math" } */
+
+extern float sqrtf (float);
+
+float
+foo (const float *m)
+{
+  float x = m[0] + m[1] + m[2] + 1.0f;
+  float s;
+
+  if (x > 0.001)
+    s = 0.5f / sqrtf (x);
+  else
+    s = 2.0f * sqrtf (1.0f + m[0] - m[1] - m[2]);
+  return s;
+}


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/.cvsignore,v
retrieving revision 1.209
retrieving revision 1.210
diff -u -r1.209 -r1.210
--- .cvsignore	4 Jul 2007 20:06:39 -0000	1.209
+++ .cvsignore	23 Jul 2007 12:23:41 -0000	1.210
@@ -1 +1 @@
-gcc-4.1.2-20070704.tar.bz2
+gcc-4.1.2-20070723.tar.bz2


Index: gcc41.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/gcc41.spec,v
retrieving revision 1.163
retrieving revision 1.164
diff -u -r1.163 -r1.164
--- gcc41.spec	4 Jul 2007 19:53:02 -0000	1.163
+++ gcc41.spec	23 Jul 2007 12:23:41 -0000	1.164
@@ -1,6 +1,6 @@
-%define DATE 20070704
+%define DATE 20070723
 %define gcc_version 4.1.2
-%define gcc_release 15
+%define gcc_release 16
 %define _unpackaged_files_terminate_build 0
 %define multilib_64_archs sparc64 ppc64 s390x x86_64
 %define include_gappletviewer 1
@@ -40,7 +40,8 @@
 # Need binutils which support .weakref >= 2.16.91.0.3-1
 # Need binutils which support --hash-style=gnu >= 2.17.50.0.2-7
 # Need binutils which support mffgpr and mftgpr >= 2.17.50.0.2-8
-BuildRequires: binutils >= 2.17.50.0.2-8
+# Need binutils which support --build-id >= 2.17.50.0.17-3
+BuildRequires: binutils >= binutils-2.17.50.0.17-3
 BuildRequires: zlib-devel, gettext, dejagnu, bison, flex, texinfo, sharutils
 %if %{build_java}
 BuildRequires: gcc-java, libgcj, /usr/share/java/eclipse-ecj.jar, zip, unzip
@@ -75,7 +76,8 @@
 # Need binutils that support .weakref
 # Need binutils that supports --hash-style=gnu
 # Need binutils that support mffgpr/mftgpr
-Requires: binutils >= 2.17.50.0.2-8
+# Need binutils that support --build-id
+Requires: binutils >= binutils-2.17.50.0.17-3
 # Make sure gdb will understand DW_FORM_strp
 Conflicts: gdb < 5.1-2
 Requires: glibc-devel >= 2.2.90-12
@@ -130,10 +132,15 @@
 Patch19: gcc41-pr32139.patch
 Patch20: gcc41-rh236895.patch
 Patch21: gcc41-rh235008.patch
-Patch22: gcc41-pr32550.patch
+Patch22: gcc41-build-id.patch
 Patch23: gcc41-pr28690.patch
+Patch24: gcc41-rh247256.patch
 
+# On ARM EABI systems, we do want -gnueabi to be part of the                                                                    
+# target triple.                                                                                                                
+%ifnarch %{arm}                                                                                                                 
 %define _gnu %{nil}
+%endif
 %ifarch sparc
 %define gcc_target_platform sparc64-%{_vendor}-%{_target_os}
 %endif
@@ -432,8 +439,9 @@
 %patch19 -p0 -b .pr32139~
 %patch20 -p0 -b .rh236895~
 %patch21 -p0 -b .rh235008~
-%patch22 -p0 -b .pr32550~
+%patch22 -p0 -b .build-id~
 %patch23 -p0 -b .pr28690~
+%patch24 -p0 -b .rh247256~
 
 sed -i -e 's/4\.1\.3/4.1.2/' gcc/BASE-VER gcc/version.c
 sed -i -e 's/" (Red Hat[^)]*)"/" (Red Hat %{version}-%{gcc_release})"/' gcc/version.c
@@ -1557,6 +1565,17 @@
 %doc rpm.doc/changelogs/libmudflap/ChangeLog*
 
 %changelog
+* Mon Jul 23 2007 Jakub Jelinek <jakub at redhat.com> 4.1.2-16
+- update from gcc-4_1-branch (-r126302:126830)
+  - PRs rtl-optimization/32450, target/31331, target/32641, target/32660,
+	tree-optimization/32681
+- pass --build-id to ld for all linking but ld -r, update {,Build}Requires
+  to binutils that support it (Roland McGrath)
+- backport ARM fixes from trunk (#246800)
+  - PRs middle-end/24998, target/28516, target/30486
+- fix simplify_plus_minus with ppc{,64} power6 tuning (regression from                                                           
+  4.1.1-52.el5.2, #247256)
+
 * Wed Jul  4 2007 Jakub Jelinek <jakub at redhat.com> 4.1.2-15
 - update from gcc-4_1-branch (-r126008:126302)
   - PRs boehm-gc/21940, boehm-gc/21942, target/28307, target/32506,


Index: libgcc_post_upgrade.c
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/libgcc_post_upgrade.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- libgcc_post_upgrade.c	12 May 2005 13:26:05 -0000	1.4
+++ libgcc_post_upgrade.c	23 Jul 2007 12:23:41 -0000	1.5
@@ -387,6 +387,35 @@
 	   : inline_syscall_clobbers, "$20", "$21");		\
 	_sc_ret = _sc_0, _sc_err = _sc_19;			\
 }
+#elif defined __arm__ && defined __ARM_EABI__
+# define INTERNAL_SYSCALL_DECL(err) do { } while (0)
+# define INTERNAL_SYSCALL(name, err, nr, args...)		\
+  ({								\
+	register int _r0 __asm__("r0");				\
+	register int _nr __asm__("r7");				\
+	LOAD_ARGS_##nr(args)					\
+	_nr = __NR_##name;					\
+	asm volatile ("swi\t0\t@ syscall " #name "\n\t"		\
+	: "=r" (_r0)						\
+	: "r" (_nr) ASM_ARGS_##nr				\
+	: "memory");						\
+	_r0; })
+# define INTERNAL_SYSCALL_ERROR_P(val, err) \
+  ((unsigned int) (val) >= 0xfffff001u)
+# define ASM_ARGS_0
+# define ASM_ARGS_1	, "r" (_r0)
+# define ASM_ARGS_2	, "r" (_r0), "r" (_r1)
+# define ASM_ARGS_3	, "r" (_r0), "r" (_r1), "r" (_r2)
+# define LOAD_ARGS_0()
+# define LOAD_ARGS_1(r0)					\
+	_r0 = (int)r0;
+# define LOAD_ARGS_2(r0, r1)					\
+	_r0 = (int)r0;						\
+	register int _r1 __asm__("r1") = (int)r1;
+# define LOAD_ARGS_3(r0, r1, r2)				\
+	_r0 = (int)r0;						\
+	register int _r1 __asm__("r1") = (int)r1;		\
+	register int _r2 __asm__("r2") = (int)r2;
 #endif
 
 int main (int argc, char **argv)


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/sources,v
retrieving revision 1.211
retrieving revision 1.212
diff -u -r1.211 -r1.212
--- sources	4 Jul 2007 20:06:39 -0000	1.211
+++ sources	23 Jul 2007 12:23:41 -0000	1.212
@@ -1 +1 @@
-96b1b8c5dc4f0b9c354586a58d4e43e2  gcc-4.1.2-20070704.tar.bz2
+1fbcf4ea119fcc5c93a5229b20af30fc  gcc-4.1.2-20070723.tar.bz2


--- gcc41-pr32550.patch DELETED ---




More information about the scm-commits mailing list