diff options
author | Leon Woestenberg <leon.woestenberg@gmail.com> | 2007-11-21 18:25:55 +0000 |
---|---|---|
committer | Leon Woestenberg <leon.woestenberg@gmail.com> | 2007-11-21 18:25:55 +0000 |
commit | 0bac121d5cf19e840c5590e12a22846996db3359 (patch) | |
tree | 8c86e14501edd3893cc236a511a44cc51fe02030 /packages/gcc/gcc-4.1.2/pr34130.patch | |
parent | 4c05d7e52d6e798231f5febe132dc619aaaf77e7 (diff) |
gcc-4.1.2: Follow upstream fix for pr34130. -C*abs(D) became abs(-C*D), not good.
Diffstat (limited to 'packages/gcc/gcc-4.1.2/pr34130.patch')
-rw-r--r-- | packages/gcc/gcc-4.1.2/pr34130.patch | 16 |
1 files changed, 16 insertions, 0 deletions
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)); |