aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2009-07-15 21:32:46 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2009-07-15 21:32:46 +0000
commit57d94c719a68011922122a0006cb82d831ee8e12 (patch)
tree615c8cb293dd97ec80c72f0daee67957a04e27f1
parentb15cc9767d2cb3d9480385618b547d7cf6466aa7 (diff)
PR rtl-optimization/40710
* resource.c (mark_target_live_regs): Reset DF problem to LR. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@149696 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/resource.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c600bcb6c20..cc42a5476d8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-15 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/40710
+ * resource.c (mark_target_live_regs): Reset DF problem to LR.
+
2009-07-15 Adam Nemet <anemet@caviumnetworks.com>
* config/mips/mips.md (*extenddi_truncate<mode>,
diff --git a/gcc/resource.c b/gcc/resource.c
index 846f8ef2b41..08a805519cd 100644
--- a/gcc/resource.c
+++ b/gcc/resource.c
@@ -945,10 +945,11 @@ mark_target_live_regs (rtx insns, rtx target, struct resources *res)
/* If we found a basic block, get the live registers from it and update
them with anything set or killed between its start and the insn before
- TARGET. Otherwise, we must assume everything is live. */
+ TARGET; this custom life analysis is really about registers so we need
+ to use the LR problem. Otherwise, we must assume everything is live. */
if (b != -1)
{
- regset regs_live = df_get_live_in (BASIC_BLOCK (b));
+ regset regs_live = DF_LR_IN (BASIC_BLOCK (b));
rtx start_insn, stop_insn;
/* Compute hard regs live at start of block. */
@@ -1052,7 +1053,7 @@ mark_target_live_regs (rtx insns, rtx target, struct resources *res)
{
HARD_REG_SET extra_live;
- REG_SET_TO_HARD_REG_SET (extra_live, df_get_live_in (bb));
+ REG_SET_TO_HARD_REG_SET (extra_live, DF_LR_IN (bb));
IOR_HARD_REG_SET (current_live_regs, extra_live);
}
}