From 0bac121d5cf19e840c5590e12a22846996db3359 Mon Sep 17 00:00:00 2001 From: Leon Woestenberg Date: Wed, 21 Nov 2007 18:25:55 +0000 Subject: gcc-4.1.2: Follow upstream fix for pr34130. -C*abs(D) became abs(-C*D), not good. --- packages/gcc/gcc-4.1.2/pr34130.patch | 16 ++++++++++++++++ packages/gcc/gcc_4.1.2.bb | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 packages/gcc/gcc-4.1.2/pr34130.patch (limited to 'packages/gcc') diff --git a/packages/gcc/gcc-4.1.2/pr34130.patch b/packages/gcc/gcc-4.1.2/pr34130.patch new file mode 100644 index 0000000000..415335f4b4 --- /dev/null +++ b/packages/gcc/gcc-4.1.2/pr34130.patch @@ -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)); diff --git a/packages/gcc/gcc_4.1.2.bb b/packages/gcc/gcc_4.1.2.bb index 0f8cfa46b4..876e912f7a 100644 --- a/packages/gcc/gcc_4.1.2.bb +++ b/packages/gcc/gcc_4.1.2.bb @@ -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 " -- cgit v1.2.3