diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d9e2c0ae951..1b052fadbc7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2003-11-10 Richard Henderson + + * dwarf2out.c (gen_label_die): Cope with DECL_RTL not set. + 2003-11-10 Matt Austern * config/darwin-protos.h (darwin_assemble_visibility): Declare. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index a99b2f650c4..85e2d321ee7 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -10916,14 +10916,15 @@ gen_label_die (tree decl, dw_die_ref context_die) equate_decl_number_to_die (decl, lbl_die); else { - insn = DECL_RTL (decl); + insn = DECL_RTL_IF_SET (decl); /* Deleted labels are programmer specified labels which have been eliminated because of various optimizations. We still emit them here so that it is possible to put breakpoints on them. */ - if (GET_CODE (insn) == CODE_LABEL - || ((GET_CODE (insn) == NOTE - && NOTE_LINE_NUMBER (insn) == NOTE_INSN_DELETED_LABEL))) + if (insn + && (GET_CODE (insn) == CODE_LABEL + || ((GET_CODE (insn) == NOTE + && NOTE_LINE_NUMBER (insn) == NOTE_INSN_DELETED_LABEL)))) { /* When optimization is enabled (via -O) some parts of the compiler (e.g. jump.c and cse.c) may try to delete CODE_LABEL insns which