gcc-4.1.2: Follow upstream fix for pr34130. -C*abs(D) became abs(-C*D), not good.
authorLeon Woestenberg <leon.woestenberg@gmail.com>
Wed, 21 Nov 2007 18:25:55 +0000 (18:25 +0000)
committerLeon Woestenberg <leon.woestenberg@gmail.com>
Wed, 21 Nov 2007 18:25:55 +0000 (18:25 +0000)
packages/gcc/gcc-4.1.2/pr34130.patch [new file with mode: 0644]
packages/gcc/gcc_4.1.2.bb

diff --git a/packages/gcc/gcc-4.1.2/pr34130.patch b/packages/gcc/gcc-4.1.2/pr34130.patch
new file mode 100644 (file)
index 0000000..415335f
--- /dev/null
@@ -0,0 +1,16 @@
+Index: gcc-4.1.2/gcc/fold-const.c
+===================================================================
+--- gcc-4.1.2.orig/gcc/fold-const.c    2007-11-21 18:53:42.000000000 +0100
++++ gcc-4.1.2/gcc/fold-const.c 2007-11-21 18:56:26.000000000 +0100
+@@ -5339,7 +5339,10 @@
+             }
+           break;
+         }
+-      /* FALLTHROUGH */
++   /* If the constant is negative, we cannot simplify this.  */
++   if (tree_int_cst_sgn (c) == -1)
++     break;
++   /* FALLTHROUGH */
+     case NEGATE_EXPR:
+       if ((t1 = extract_muldiv (op0, c, code, wide_type)) != 0)
+       return fold_build1 (tcode, ctype, fold_convert (ctype, t1));
index 0f8cfa4..876e912 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r7"
+PR = "r8"
 DESCRIPTION = "The GNU cc and gcc C compilers."
 HOMEPAGE = "http://www.gnu.org/software/gcc/"
 SECTION = "devel"
@@ -32,6 +32,7 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2 \
        file://cache-amnesia.patch;patch=1 \
        file://gfortran.patch;patch=1 \
         file://gcc-4.0.2-e300c2c3.patch;patch=1 \
+        file://pr34130.patch;patch=1 \
        "
 
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "