aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1993-01-23 22:16:52 +0000
committerRichard Stallman <rms@gnu.org>1993-01-23 22:16:52 +0000
commit27212ac6c1c9f029725b1decc75e0443bddf018e (patch)
tree564cd460744bf69c1d0823258cbe528d2e7f370b /gcc
parent93193ab5ee81eed3321d21730d50c6b03e56d68c (diff)
downloadgcc-27212ac6c1c9f029725b1decc75e0443bddf018e.zip
gcc-27212ac6c1c9f029725b1decc75e0443bddf018e.tar.gz
gcc-27212ac6c1c9f029725b1decc75e0443bddf018e.tar.bz2
(find_basic_blocks): Don't mark labels in nonlocal_label_list
that were deleted due to having no references. From-SVN: r3310
Diffstat (limited to 'gcc')
-rw-r--r--gcc/flow.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/flow.c b/gcc/flow.c
index 66f0d65..9d83e41 100644
--- a/gcc/flow.c
+++ b/gcc/flow.c
@@ -538,8 +538,11 @@ find_basic_blocks (f, nonlocal_label_list)
{
rtx x;
for (x = nonlocal_label_list; x; x = XEXP (x, 1))
- mark_label_ref (gen_rtx (LABEL_REF, VOIDmode, XEXP (x, 0)),
- insn, 0);
+ /* Don't try marking labels that
+ were deleted as unreferenced. */
+ if (GET_CODE (XEXP (x, 0)) == CODE_LABEL)
+ mark_label_ref (gen_rtx (LABEL_REF, VOIDmode, XEXP (x, 0)),
+ insn, 0);
/* ??? This could be made smarter:
in some cases it's possible to tell that certain
calls will not do a nonlocal goto.