summaryrefslogtreecommitdiff
path: root/gcc/cfgrtl.c
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-30 07:22:04 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2006-11-30 07:22:04 +0000
commit3471582ef848a30f2d0e8b54a6da60778f304654 (patch)
tree04dc45214d4649859b92961c61d2bbdae2f5499d /gcc/cfgrtl.c
parent8d13d95a24bd2c37232d2dc114dff3bf31e76b52 (diff)
downloadgcc-3471582ef848a30f2d0e8b54a6da60778f304654.tar.gz
* cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline
at the end of a diagnostics message. * alloc-pool.c (pool_free): Postpone clearing the pool entry until after asserting that it was allocated in the right pool. * cfgrtl.c (print_rtl_with_bb): Print predecessor and successor edge information as well. Make output of live regs on exit consistent with live regs on entry. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119357 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r--gcc/cfgrtl.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 6f474c0441d..4ff3058e102 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -1646,6 +1646,8 @@ print_rtl_with_bb (FILE *outf, rtx rtx_first)
for (tmp_rtx = rtx_first; NULL != tmp_rtx; tmp_rtx = NEXT_INSN (tmp_rtx))
{
int did_output;
+ edge_iterator ei;
+ edge e;
if ((bb = start[INSN_UID (tmp_rtx)]) != NULL)
{
@@ -1653,6 +1655,12 @@ print_rtl_with_bb (FILE *outf, rtx rtx_first)
bb->index);
dump_regset (bb->il.rtl->global_live_at_start, outf);
putc ('\n', outf);
+ FOR_EACH_EDGE (e, ei, bb->preds)
+ {
+ fputs (";; Pred edge ", outf);
+ dump_edge_info (outf, e, 0);
+ fputc ('\n', outf);
+ }
}
if (in_bb_p[INSN_UID (tmp_rtx)] == NOT_IN_BB
@@ -1666,10 +1674,16 @@ print_rtl_with_bb (FILE *outf, rtx rtx_first)
if ((bb = end[INSN_UID (tmp_rtx)]) != NULL)
{
- fprintf (outf, ";; End of basic block %d, registers live:\n",
+ fprintf (outf, ";; End of basic block %d, registers live:",
bb->index);
dump_regset (bb->il.rtl->global_live_at_end, outf);
putc ('\n', outf);
+ FOR_EACH_EDGE (e, ei, bb->succs)
+ {
+ fputs (";; Succ edge ", outf);
+ dump_edge_info (outf, e, 1);
+ fputc ('\n', outf);
+ }
}
if (did_output)