diff options
author | Khem Raj <raj.khem@gmail.com> | 2011-04-30 12:37:47 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-05-05 11:54:44 +0100 |
commit | b0d5b9f12adbce2c4a0df6059f5671188cd32293 (patch) | |
tree | f376fcd2e5dcc46185d73d619ce2eec31320d812 /meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch | |
parent | 81859b136c0153e8d5be71d56e910dcc3e8cdb66 (diff) | |
download | openembedded-core-b0d5b9f12adbce2c4a0df6059f5671188cd32293.tar.gz openembedded-core-b0d5b9f12adbce2c4a0df6059f5671188cd32293.tar.bz2 openembedded-core-b0d5b9f12adbce2c4a0df6059f5671188cd32293.tar.xz openembedded-core-b0d5b9f12adbce2c4a0df6059f5671188cd32293.zip |
gcc-4.6.0: Backport FSF 4.6 branch patches
This is set of bugfixes that has been done on
FSF gcc-4_2-branch since 4.6.0 was released
They will roll into 4.6.1 release once that
happens in coming approx 6 months time then
we can simply remove them thats the reason
so use a separate .inc file to define the
SRC_URI additions
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch new file mode 100644 index 000000000..27e1a8827 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0002-Backport-from-mainline.patch @@ -0,0 +1,70 @@ +From af3385141f9bfe32ab89165bfc98a7ea2ff19278 Mon Sep 17 00:00:00 2001 +From: jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Sat, 26 Mar 2011 09:19:36 +0000 +Subject: [PATCH 002/200] Backport from mainline + 2011-03-17 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/48141 + * dse.c (record_store): If no positions are needed in an insn + that cannot be deleted, at least unchain it from active_local_stores. + + * gcc.dg/pr48141.c: New test. + + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@171545 138bc75d-0d04-0410-961f-82ee72b054a4 + +index 8e9b645..e43ab72 100644 +--- a/gcc/dse.c ++++ b/gcc/dse.c +@@ -1,5 +1,5 @@ + /* RTL dead store elimination. +- Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 ++ Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011 + Free Software Foundation, Inc. + + Contributed by Richard Sandiford <rsandifor@codesourcery.com> +@@ -1530,8 +1530,7 @@ record_store (rtx body, bb_info_t bb_info) + + /* An insn can be deleted if every position of every one of + its s_infos is zero. */ +- if (any_positions_needed_p (s_info) +- || ptr->cannot_delete) ++ if (any_positions_needed_p (s_info)) + del = false; + + if (del) +@@ -1543,7 +1542,8 @@ record_store (rtx body, bb_info_t bb_info) + else + active_local_stores = ptr->next_local_store; + +- delete_dead_store_insn (insn_to_delete); ++ if (!insn_to_delete->cannot_delete) ++ delete_dead_store_insn (insn_to_delete); + } + else + last = ptr; +new file mode 100644 +index 0000000..006f5cb +--- /dev/null ++++ b/gcc/testsuite/gcc.dg/pr48141.c +@@ -0,0 +1,17 @@ ++/* PR rtl-optimization/48141 */ ++/* { dg-do compile } */ ++/* { dg-options "-O" } */ ++ ++#define A i = 0; ++#define B A A A A A A A A A A ++#define C B B B B B B B B B B ++#define D C C C C C C C C C C ++#define E D D D D D D D D D D ++ ++int ++foo (void) ++{ ++ volatile int i = 0; ++ E E E E E E E E E E E ++ return 0; ++} +-- +1.7.0.4 + |