diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-28 04:26:57 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-28 04:26:57 +0000 |
commit | 66b6f98b7647287ef928a84f4788bd37e0e255b7 (patch) | |
tree | f730ac1da63a8a570ebeac7da22e486791f8b3cf /gcc/print-rtl.c | |
parent | 5cb1ca544f7a0e3d6d90e43f4409dad353ba8d86 (diff) | |
download | gcc-66b6f98b7647287ef928a84f4788bd37e0e255b7.tar.gz |
* print-rtl.c (print_rtx) [i]: Don't print field five on
NOTEs other than NOTE_INSN_DELETED_LABEL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40110 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/print-rtl.c')
-rw-r--r-- | gcc/print-rtl.c | 81 |
1 files changed, 45 insertions, 36 deletions
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c index 23d889a873b..b421282d5d9 100644 --- a/gcc/print-rtl.c +++ b/gcc/print-rtl.c @@ -322,43 +322,52 @@ print_rtx (in_rtx) break; case 'i': - { - register int value = XINT (in_rtx, i); - const char *name; + if (i == 5 && GET_CODE (in_rtx) == NOTE) + { + /* This field is only used for NOTE_INSN_DELETED_LABEL, and + other times often contains garbage from INSN->NOTE death. */ + if (NOTE_LINE_NUMBER (in_rtx) == NOTE_INSN_DELETED_LABEL) + fprintf (outfile, " %d", XINT (in_rtx, i)); + } + else + { + register int value = XINT (in_rtx, i); + const char *name; - if (GET_CODE (in_rtx) == REG && value < FIRST_PSEUDO_REGISTER) - { - fputc (' ', outfile); - DEBUG_PRINT_REG (in_rtx, 0, outfile); - } - else if (GET_CODE (in_rtx) == REG && value <= LAST_VIRTUAL_REGISTER) - { - if (value == VIRTUAL_INCOMING_ARGS_REGNUM) - fprintf (outfile, " %d virtual-incoming-args", value); - else if (value == VIRTUAL_STACK_VARS_REGNUM) - fprintf (outfile, " %d virtual-stack-vars", value); - else if (value == VIRTUAL_STACK_DYNAMIC_REGNUM) - fprintf (outfile, " %d virtual-stack-dynamic", value); - else if (value == VIRTUAL_OUTGOING_ARGS_REGNUM) - fprintf (outfile, " %d virtual-outgoing-args", value); - else if (value == VIRTUAL_CFA_REGNUM) - fprintf (outfile, " %d virtual-cfa", value); - else - fprintf (outfile, " %d virtual-reg-%d", value, - value-FIRST_VIRTUAL_REGISTER); - } - else if (flag_dump_unnumbered - && (is_insn || GET_CODE (in_rtx) == NOTE)) - fputc ('#', outfile); - else - fprintf (outfile, " %d", value); - - if (is_insn && &INSN_CODE (in_rtx) == &XINT (in_rtx, i) - && XINT (in_rtx, i) >= 0 - && (name = get_insn_name (XINT (in_rtx, i))) != NULL) - fprintf (outfile, " {%s}", name); - sawclose = 0; - } + if (GET_CODE (in_rtx) == REG && value < FIRST_PSEUDO_REGISTER) + { + fputc (' ', outfile); + DEBUG_PRINT_REG (in_rtx, 0, outfile); + } + else if (GET_CODE (in_rtx) == REG + && value <= LAST_VIRTUAL_REGISTER) + { + if (value == VIRTUAL_INCOMING_ARGS_REGNUM) + fprintf (outfile, " %d virtual-incoming-args", value); + else if (value == VIRTUAL_STACK_VARS_REGNUM) + fprintf (outfile, " %d virtual-stack-vars", value); + else if (value == VIRTUAL_STACK_DYNAMIC_REGNUM) + fprintf (outfile, " %d virtual-stack-dynamic", value); + else if (value == VIRTUAL_OUTGOING_ARGS_REGNUM) + fprintf (outfile, " %d virtual-outgoing-args", value); + else if (value == VIRTUAL_CFA_REGNUM) + fprintf (outfile, " %d virtual-cfa", value); + else + fprintf (outfile, " %d virtual-reg-%d", value, + value-FIRST_VIRTUAL_REGISTER); + } + else if (flag_dump_unnumbered + && (is_insn || GET_CODE (in_rtx) == NOTE)) + fputc ('#', outfile); + else + fprintf (outfile, " %d", value); + + if (is_insn && &INSN_CODE (in_rtx) == &XINT (in_rtx, i) + && XINT (in_rtx, i) >= 0 + && (name = get_insn_name (XINT (in_rtx, i))) != NULL) + fprintf (outfile, " {%s}", name); + sawclose = 0; + } break; /* Print NOTE_INSN names rather than integer codes. */ |