summaryrefslogtreecommitdiff
path: root/gcc/jump.c
diff options
context:
space:
mode:
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2002-02-21 22:48:02 +0000
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>2002-02-21 22:48:02 +0000
commit7f8c3466fcab6bf43374b8e43fb8bc7ad9789bc1 (patch)
treeaeb13ff0e51fcf89380c39b865b47b6865c51a9a /gcc/jump.c
parentb06aca5fdae51ad5869b7e8130a2804ae0fdf602 (diff)
downloadgcc-7f8c3466fcab6bf43374b8e43fb8bc7ad9789bc1.tar.gz
* jump.c (redirect_jump): If old label has no UID, don't try to
delete it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49943 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/jump.c')
-rw-r--r--gcc/jump.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/jump.c b/gcc/jump.c
index fc6bef07e48..7d01a55f3ba 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -2091,7 +2091,9 @@ redirect_jump (jump, nlabel, delete_unused)
&& NOTE_LINE_NUMBER (NEXT_INSN (olabel)) == NOTE_INSN_FUNCTION_END)
emit_note_after (NOTE_INSN_FUNCTION_END, nlabel);
- if (olabel && --LABEL_NUSES (olabel) == 0 && delete_unused)
+ if (olabel && --LABEL_NUSES (olabel) == 0 && delete_unused
+ /* Undefined labels will remain outside the insn stream. */
+ && INSN_UID (olabel))
delete_related_insns (olabel);
return 1;