aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJeff Law <law@gcc.gnu.org>2011-03-18 11:05:27 -0600
committerJeff Law <law@gcc.gnu.org>2011-03-18 11:05:27 -0600
commit2a3d7659c5a172e3c7435c4018e8ee927330b3d3 (patch)
tree61a20d44630cbe323bdbc2912239f7d1d11835e4 /gcc
parent34c3ef054efc440eb684250ac8ee14b0b4121aeb (diff)
downloadgcc-2a3d7659c5a172e3c7435c4018e8ee927330b3d3.zip
gcc-2a3d7659c5a172e3c7435c4018e8ee927330b3d3.tar.gz
gcc-2a3d7659c5a172e3c7435c4018e8ee927330b3d3.tar.bz2
ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost computation for prologue/epilogue.
* ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost computation for prologue/epilogue. From-SVN: r171154
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/ira-color.c3
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 16fdd22..200cce8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-03-18 Georg-Johann Lay <avr@gjlay.de>
+
+ * ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost
+ computation for prologue/epilogue.
+
2011-03-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* Makefile.in (check-consistency): Remove.
@@ -35,7 +40,7 @@
(--with-plugin-ld): Document.
* doc/invoke.texi (-fuse-linker-plugin): Clarify.
-2011-03-16 Andrew Pinski <pinskia@gmail.com>
+2011-03-18 Andrew Pinski <pinskia@gmail.com>
PR middle-end/47790
* expr.c (optimize_bitfield_assignment_op): Revamp to work
diff --git a/gcc/ira-color.c b/gcc/ira-color.c
index 5c98ef9..6024f7d 100644
--- a/gcc/ira-color.c
+++ b/gcc/ira-color.c
@@ -591,7 +591,8 @@ assign_hard_reg (ira_allocno_t a, bool retry_p)
full_cost = full_costs[i];
#ifndef HONOR_REG_ALLOC_ORDER
if (! allocated_hardreg_p[hard_regno]
- && ira_hard_reg_not_in_set_p (hard_regno, mode, call_used_reg_set))
+ && ira_hard_reg_not_in_set_p (hard_regno, mode, call_used_reg_set)
+ && !LOCAL_REGNO (hard_regno))
/* We need to save/restore the hard register in
epilogue/prologue. Therefore we increase the cost. */
{