[cross-gcc] Upgrade to gcc-4.9.0-14

David Howells dhowells at fedoraproject.org
Fri Jul 4 16:08:17 UTC 2014


commit dbd63a6287a6e25438dc40828d41e1586ccf14f4
Author: David Howells <dhowells at redhat.com>
Date:   Fri Jul 4 15:07:39 2014 +0100

    Upgrade to gcc-4.9.0-14

 .gitignore          |    2 +-
 cross-gcc.spec      |   15 ++++++----
 gcc49-pr45078.patch |   16 -----------
 gcc49-pr61673.patch |   72 +++++++++++++++++++++++++++++++++++++++++++++++++++
 sources             |    4 +--
 5 files changed, 83 insertions(+), 26 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index bd93329..a151f4a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,3 @@
 /cloog-0.18.1.tar.gz
-/gcc-4.9.0-20140612.tar.bz2
 /isl-0.12.2.tar.bz2
+/gcc-4.9.0-20140702.tar.bz2
diff --git a/cross-gcc.spec b/cross-gcc.spec
index a92e123..72778e5 100644
--- a/cross-gcc.spec
+++ b/cross-gcc.spec
@@ -63,16 +63,16 @@
 # The gcc versioning information.  In a sed command below, the specfile winds
 # pre-release version numbers in BASE-VER back to the last actually-released
 # number.
-%global DATE 20140612
-%global SVNREV 211598
+%global DATE 20140702
+%global SVNREV 212237
 %global gcc_version 4.9.0
 
 # Note, cross_gcc_release must be integer, if you want to add suffixes
 # to %{release}, append them after %{cross_gcc_release} on Release:
 # line.  gcc_release is the Fedora gcc release that the patches were
 # taken from.
-%global gcc_release 9
-%global cross_gcc_release 1
+%global gcc_release 14
+%global cross_gcc_release 2
 %global cross_binutils_version 2.24-2
 
 Summary: Cross C compiler
@@ -112,7 +112,7 @@ Patch12: gcc49-no-add-needed.patch
 Patch14: gcc49-pr56493.patch
 Patch15: gcc49-color-auto.patch
 Patch16: gcc49-libgo-p224.patch
-Patch17: gcc49-pr45078.patch
+Patch17: gcc49-pr61673.patch
 
 Patch100: cross-intl-filename.patch
 # ia64 - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44553
@@ -278,7 +278,7 @@ cd %{srcdir}
 %endif
 %patch16 -p0 -b .libgo-p224~
 rm -f libgo/go/crypto/elliptic/p224{,_test}.go
-%patch17 -p0 -b .pr45078~
+%patch17 -p0 -b .pr61673~
 
 %patch100 -p0 -b .cross-intl~
 %patch101 -p1 -b .with-libgcc~
@@ -860,6 +860,9 @@ rm -rf %{buildroot}
 %do_files xtensa-linux-gnu	%{build_xtensa}
 
 %changelog
+* Mon Jun 16 2014 David Howells <dhowells at redhat.com> - 4.9.0-2
+- Rebase on gcc-4.9.0-14.
+
 * Mon Jun 16 2014 David Howells <dhowells at redhat.com> - 4.9.0-1
 - Move to gcc-4.9.0.
 
diff --git a/gcc49-pr61673.patch b/gcc49-pr61673.patch
new file mode 100644
index 0000000..0b0c6f8
--- /dev/null
+++ b/gcc49-pr61673.patch
@@ -0,0 +1,72 @@
+2014-07-02  Jakub Jelinek  <jakub at redhat.com>
+
+	PR rtl-optimization/61673
+	* combine.c (simplify_comparison): Test just mode's sign bit
+	in tmode rather than the sign bit and any bits above it.
+
+	* gcc.c-torture/execute/pr61673.c: New test.
+
+--- gcc/combine.c.jj	2014-03-28 20:49:52.892077022 +0100
++++ gcc/combine.c	2014-07-02 16:56:02.260456040 +0200
+@@ -11987,7 +11987,7 @@ simplify_comparison (enum rtx_code code,
+ 		= (unsigned HOST_WIDE_INT) 1 << (GET_MODE_BITSIZE (mode) - 1);
+ 	      op0 = simplify_gen_binary (AND, tmode,
+ 					 gen_lowpart (tmode, op0),
+-					 gen_int_mode (sign, mode));
++					 gen_int_mode (sign, tmode));
+ 	      code = (code == LT) ? NE : EQ;
+ 	      break;
+ 	    }
+--- gcc/testsuite/gcc.c-torture/execute/pr61673.c.jj	2014-07-02 17:17:01.398908630 +0200
++++ gcc/testsuite/gcc.c-torture/execute/pr61673.c	2014-07-02 17:12:36.000000000 +0200
+@@ -0,0 +1,50 @@
++/* PR rtl-optimization/61673 */
++
++char e;
++
++__attribute__((noinline, noclone)) void
++bar (char x)
++{
++  if (x != 0x54 && x != (char) 0x87)
++    __builtin_abort ();
++}
++
++__attribute__((noinline, noclone)) void
++foo (const char *x)
++{
++  char d = x[0];
++  int c = d;
++  if ((c >= 0 && c <= 0x7f) == 0)
++    e = d;
++  bar (d);
++}
++
++__attribute__((noinline, noclone)) void
++baz (const char *x)
++{
++  char d = x[0];
++  int c = d;
++  if ((c >= 0 && c <= 0x7f) == 0)
++    e = d;
++}
++
++int
++main ()
++{
++  const char c[] = { 0x54, 0x87 };
++  e = 0x21;
++  foo (c);
++  if (e != 0x21)
++    __builtin_abort ();
++  foo (c + 1);
++  if (e != 0x87)
++    __builtin_abort ();
++  e = 0x21;
++  baz (c);
++  if (e != 0x21)
++    __builtin_abort ();
++  baz (c + 1);
++  if (e != 0x87)
++    __builtin_abort ();
++  return 0;
++}
diff --git a/sources b/sources
index f32a8b3..7825786 100644
--- a/sources
+++ b/sources
@@ -1,3 +1 @@
-e34fca0540d840e5d0f6427e98c92252  cloog-0.18.1.tar.gz
-fad1b2e70231fb0845ee48190a223354  gcc-4.9.0-20140612.tar.bz2
-e039bfcfb6c2ab039b8ee69bf883e824  isl-0.12.2.tar.bz2
+bc3144479589cca83f7d5f958d52283e  gcc-4.9.0-20140702.tar.bz2


More information about the scm-commits mailing list