aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Makarov <vmakarov@redhat.com>2012-10-24 15:35:12 +0000
committerVladimir Makarov <vmakarov@redhat.com>2012-10-24 15:35:12 +0000
commit97546ecb7dd19ec6fd0ef25cc32a6940838fb1ff (patch)
tree943a5af4e02ac73b8beb93539c7928a312e4bce5
parent1ff0c6ef44171b6612ff5e323e3b44da8de3ea02 (diff)
2012-10-24 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/55048 * lra-constraints.c (update_ebb_live_info): Skip non-NOTE_INSN_BASIC_BLOCK notes. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@192770 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/lra-constraints.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2ce2c3ef9e3..7211353de84 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-10-24 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR bootstrap/55048
+ * lra-constraints.c (update_ebb_live_info): Skip
+ non-NOTE_INSN_BASIC_BLOCK notes.
+
2012-10-24 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/55010
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index 32ecfee7659..1b56a0b4e54 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -4300,6 +4300,10 @@ update_ebb_live_info (rtx head, rtx tail)
curr_insn = prev_insn)
{
prev_insn = PREV_INSN (curr_insn);
+ /* We need to process empty blocks too. They contain
+ NOTE_INSN_BASIC_BLOCK referring for the basic block. */
+ if (NOTE_P (curr_insn) && NOTE_KIND (curr_insn) != NOTE_INSN_BASIC_BLOCK)
+ continue;
curr_bb = BLOCK_FOR_INSN (curr_insn);
if (curr_bb != prev_bb)
{