diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/final.c | 3 | ||||
-rw-r--r-- | gcc/print-rtl.c | 3 |
3 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 81ffafb..b9a786c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2000-05-18 Jakub Jelinek <jakub@redhat.com> + * print-rtl.c (print_rtx): Only print note line number as string + if between NOTE_INSN_BIAS and NOTE_INSN_MAX. + * final.c (final_scan_insn): Do nothing for note line number 0. + +2000-05-18 Jakub Jelinek <jakub@redhat.com> + * gcc-common.c (ggc_mark_rtx_children): Mark NOTE_EXPECTED_VALUE from NOTE_INSN_EXPECTED_VALUE notes and NOTE_SOURCE_FILE from NOTE_INSN_DELETED_LABEL. diff --git a/gcc/final.c b/gcc/final.c index 02dc418..2145f99 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2261,6 +2261,9 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) } break; + case 0: + break; + default: if (NOTE_LINE_NUMBER (insn) <= 0) abort (); diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c index d800838..5cea980 100644 --- a/gcc/print-rtl.c +++ b/gcc/print-rtl.c @@ -328,7 +328,8 @@ print_rtx (in_rtx) /* Print NOTE_INSN names rather than integer codes. */ case 'n': - if (XINT (in_rtx, i) <= 0) + if (XINT (in_rtx, i) >= NOTE_INSN_BIAS + && XINT (in_rtx, i) < NOTE_INSN_MAX) fprintf (outfile, " %s", GET_NOTE_INSN_NAME (XINT (in_rtx, i))); else fprintf (outfile, " %d", XINT (in_rtx, i)); |