Commit 48d9ade5 by Richard Kenner Committed by Richard Kenner

toplev.c (enum dump_file_index, dump_file): Add DFI_sibling.

	* toplev.c (enum dump_file_index, dump_file): Add DFI_sibling.
	(rest_of_compilation): Write sibling dump file and account
	for time as jump time.
	* invoke.texi: Update documentation on dump flags.

From-SVN: r33279
parent 5d14e356
Thu Apr 20 08:01:07 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* toplev.c (enum dump_file_index, dump_file): Add DFI_sibling.
(rest_of_compilation): Write sibling dump file and account
for time as jump time.
* invoke.texi: Update documentation on dump flags.
2000-04-19 Marek Michalkiewicz <marekm@linux.org.pl> 2000-04-19 Marek Michalkiewicz <marekm@linux.org.pl>
* avr.c: #include "system.h" instead of <stdio.h> and <stdlib.h>. * avr.c: #include "system.h" instead of <stdio.h> and <stdlib.h>.
......
...@@ -2201,51 +2201,64 @@ Here are the possible letters for use in @var{letters}, and their meanings: ...@@ -2201,51 +2201,64 @@ Here are the possible letters for use in @var{letters}, and their meanings:
@item A @item A
Annotate the assembler output with miscellaneous debugging information. Annotate the assembler output with miscellaneous debugging information.
@item b @item b
Dump after computing branch probabilities, to @file{@var{file}.07.bp}. Dump after computing branch probabilities, to @file{@var{file}.10.bp}.
@item B
Dump after block reordering, to @file{@var{file}.20.bbro}.
@item c @item c
Dump after instruction combination, to the file @file{@var{file}.09.combine}. Dump after instruction combination, to the file @file{@var{file}.12.combine}.
@item d @item d
Dump after delayed branch scheduling, to @file{@var{file}.19.dbr}. Dump after delayed branch scheduling, to @file{@var{file}.24.dbr}.
@item D @item D
Dump all macro definitions, at the end of preprocessing, in addition to Dump all macro definitions, at the end of preprocessing, in addition to
normal output. normal output.
@item F @item e
Dump after purging ADDRESSOF, to @file{@var{file}.03.addressof}. Dump after SSA optimizations, to @file{@var{file}.05.ssa} and
@file{@var{file}.06.ussa}.
@item f @item f
Dump after flow analysis, to @file{@var{file}.08.flow}. Dump after flow analysis, to @file{@var{file}.11.flow}.
@item F
Dump after purging @code{ADDRESSOF} codes, to @file{@var{file}.04.addressof}.
@item g @item g
Dump after global register allocation, to @file{@var{file}.13.greg}. Dump after global register allocation, to @file{@var{file}.16.greg}.
@item G @item G
Dump after GCSE, to @file{@var{file}.04.gcse}. Dump after GCSE, to @file{@var{file}.07.gcse}.
@item i
Dump after sibling call optimizations, to @file{@var{file}.01.sibling}.
@item j @item j
Dump after first jump optimization, to @file{@var{file}.01.jump}. Dump after first jump optimization, to @file{@var{file}.02.jump}.
@item J @item J
Dump after last jump optimization, to @file{@var{file}.17.jump2}. Dump after last jump optimization, to @file{@var{file}.22.jump2}.
@item k @item k
Dump after conversion from registers to stack, to @file{@var{file}.20.stack}. Dump after conversion from registers to stack, to @file{@var{file}.25.stack}.
@item l @item l
Dump after local register allocation, to @file{@var{file}.12.lreg}. Dump after local register allocation, to @file{@var{file}.15.lreg}.
@item L @item L
Dump after loop optimization, to @file{@var{file}.05.loop}. Dump after loop optimization, to @file{@var{file}.08.loop}.
@item M @item M
Dump after performing the machine dependent reorganisation pass, to Dump after performing the machine dependent reorganisation pass, to
@file{@var{file}.18.mach}. @file{@var{file}.23.mach}.
@item n
Dump after register renumbering, to @file{@var{file}.21.rnreg}.
@item N @item N
Dump after the register move pass, to @file{@var{file}.10.regmove}. Dump after the register move pass, to @file{@var{file}.13.regmove}.
@item r @item r
Dump after RTL generation, to @file{@var{file}.00.rtl}. Dump after RTL generation, to @file{@var{file}.00.rtl}.
@item R @item R
Dump after the second instruction scheduling pass, to Dump after the second instruction scheduling pass, to
@file{@var{file}.16.sched2}. @file{@var{file}.19.sched2}.
@item s @item s
Dump after CSE (including the jump optimization that sometimes follows Dump after CSE (including the jump optimization that sometimes follows
CSE), to @file{@var{file}.02.cse}. CSE), to @file{@var{file}.03.cse}.
@item S @item S
Dump after the first instruction scheduling pass, to Dump after the first instruction scheduling pass, to
@file{@var{file}.11.sched}. @file{@var{file}.14.sched}.
@item t @item t
Dump after the second CSE pass (including the jump optimization that Dump after the second CSE pass (including the jump optimization that
sometimes follows CSE), to @file{@var{file}.06.cse2}. sometimes follows CSE), to @file{@var{file}.09.cse2}.
@item w
Dump after the second flow pass, to @file{@var{file}.17.flow2}.
@item z
Dump after the peephold pass, to @file{@var{file}.18.peephole2}.
@item a @item a
Produce all the dumps listed above. Produce all the dumps listed above.
@item m @item m
......
...@@ -251,6 +251,7 @@ struct dump_file_info ...@@ -251,6 +251,7 @@ struct dump_file_info
enum dump_file_index enum dump_file_index
{ {
DFI_rtl, DFI_rtl,
DFI_sibling,
DFI_jump, DFI_jump,
DFI_cse, DFI_cse,
DFI_addressof, DFI_addressof,
...@@ -284,6 +285,7 @@ enum dump_file_index ...@@ -284,6 +285,7 @@ enum dump_file_index
struct dump_file_info dump_file[DFI_MAX] = struct dump_file_info dump_file[DFI_MAX] =
{ {
{ "rtl", 'r', 0, 0, 0 }, { "rtl", 'r', 0, 0, 0 },
{ "sibling", 'i', 0, 0, 0 },
{ "jump", 'j', 0, 0, 0 }, { "jump", 'j', 0, 0, 0 },
{ "cse", 's', 0, 0, 0 }, { "cse", 's', 0, 0, 0 },
{ "addressof", 'F', 0, 0, 0 }, { "addressof", 'F', 0, 0, 0 },
...@@ -2897,8 +2899,13 @@ rest_of_compilation (decl) ...@@ -2897,8 +2899,13 @@ rest_of_compilation (decl)
/* We may have potential sibling or tail recursion sites. Select one /* We may have potential sibling or tail recursion sites. Select one
(of possibly multiple) methods of performing the call. */ (of possibly multiple) methods of performing the call. */
open_dump_file (DFI_sibling, decl);
TIMEVAR (jump_time,
{
if (flag_optimize_sibling_calls) if (flag_optimize_sibling_calls)
optimize_sibling_and_tail_recursive_calls (); optimize_sibling_and_tail_recursive_calls ();
});
close_dump_file (DFI_sibling, print_rtl, get_insns ());
if (ggc_p) if (ggc_p)
ggc_collect (); ggc_collect ();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment