diff options
author | Jakub Jelinek <jakub@redhat.com> | 2014-01-25 00:18:26 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-01-25 00:18:26 +0100 |
commit | 4def6060f5da7678599d370dc6f4c90d250a9296 (patch) | |
tree | 5f9d30b980eb62e8a08caeca545083c6a0d6d9a1 /gcc/print-rtl.c | |
parent | 2105be5a857e9008fc5db6e07966d90348b38e6f (diff) | |
download | gcc-4def6060f5da7678599d370dc6f4c90d250a9296.zip gcc-4def6060f5da7678599d370dc6f4c90d250a9296.tar.gz gcc-4def6060f5da7678599d370dc6f4c90d250a9296.tar.bz2 |
print-rtl.c (in_call_function_usage): New var.
* print-rtl.c (in_call_function_usage): New var.
(print_rtx): When in CALL_INSN_FUNCTION_USAGE, always print
EXPR_LIST mode as mode and not as reg note name.
From-SVN: r207066
Diffstat (limited to 'gcc/print-rtl.c')
-rw-r--r-- | gcc/print-rtl.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c index 6cf339f..5f2a4454 100644 --- a/gcc/print-rtl.c +++ b/gcc/print-rtl.c @@ -51,6 +51,8 @@ static int sawclose = 0; static int indent; +static bool in_call_function_usage; + static void print_rtx (const_rtx); /* String printed at beginning of each RTL when it is dumped. @@ -153,7 +155,8 @@ print_rtx (const_rtx in_rtx) if ((GET_CODE (in_rtx) == EXPR_LIST || GET_CODE (in_rtx) == INSN_LIST || GET_CODE (in_rtx) == INT_LIST) - && (int)GET_MODE (in_rtx) < REG_NOTE_MAX) + && (int)GET_MODE (in_rtx) < REG_NOTE_MAX + && !in_call_function_usage) fprintf (outfile, ":%s", GET_REG_NOTE_NAME (GET_MODE (in_rtx))); @@ -350,7 +353,14 @@ print_rtx (const_rtx in_rtx) print_rtx_head, indent * 2, ""); if (!sawclose) fprintf (outfile, " "); - print_rtx (XEXP (in_rtx, i)); + if (i == 8 && CALL_P (in_rtx)) + { + in_call_function_usage = true; + print_rtx (XEXP (in_rtx, i)); + in_call_function_usage = false; + } + else + print_rtx (XEXP (in_rtx, i)); indent -= 2; break; |