aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-06-02 21:28:08 +0000
committerRichard Stallman <rms@gnu.org>1992-06-02 21:28:08 +0000
commit6a5293dc3b4d474983e8f57429fc9035bc3bf381 (patch)
treeaad4a950bc6280fa3ce46e29a5f21d73870fccb7
parent71c4681d83fa439d3c618a460361936029a79887 (diff)
downloadgcc-6a5293dc3b4d474983e8f57429fc9035bc3bf381.zip
gcc-6a5293dc3b4d474983e8f57429fc9035bc3bf381.tar.gz
gcc-6a5293dc3b4d474983e8f57429fc9035bc3bf381.tar.bz2
*** empty log message ***
From-SVN: r1141
-rw-r--r--gcc/cse.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cse.c b/gcc/cse.c
index 4a51d42..c863d3c 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -7432,6 +7432,14 @@ cse_basic_block (from, to, next_branch, around_loop)
if (JUMP_LABEL (insn) == to)
to_usage = 1;
+ /* Maybe TO was deleted because the jump is unconditional.
+ If so, there is nothing left in this basic block. */
+ /* ??? Perhaps it would be smarter to set TO
+ to whatever follows this insn,
+ and pretend the basic block had always ended here. */
+ if (INSN_DELETED_P (to))
+ break;
+
insn = PREV_INSN (to);
}