OSDN Git Service

* toplev.c (dbr_sched_time): Unconditional.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Oct 1999 04:04:48 +0000 (04:04 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Oct 1999 04:04:48 +0000 (04:04 +0000)
        (peephole2_time): New.
        (compile_file): Add pass numbers to all of the dump file suffixes.
        Dump peephole2_time.  Don't dump times for non-applicable passes.
        (rest_of_compilation): Add pass numbers to dump file suffixes.
        Conditionalize calls to the scheduler.
        * invoke.texi: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29819 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/invoke.texi
gcc/toplev.c

index e893952..581a6ff 100644 (file)
@@ -1,3 +1,13 @@
+Mon Oct  4 21:01:39 1999  Richard Henderson  <rth@cygnus.com>
+
+       * toplev.c (dbr_sched_time): Unconditional.
+       (peephole2_time): New.
+       (compile_file): Add pass numbers to all of the dump file suffixes.
+       Dump peephole2_time.  Don't dump times for non-applicable passes.
+       (rest_of_compilation): Add pass numbers to dump file suffixes.
+       Conditionalize calls to the scheduler.
+       * invoke.texi: Update.
+
 Mon Oct  4 20:25:13 1999  Anthony Green  <green@cygnus.com>
 
        * flow.c (make_edges): Fix insn iteration.
index 34ba1b6..b128ec2 100644 (file)
@@ -2066,59 +2066,59 @@ block and arc execution counts from the information in the
 @item -d@var{letters}
 Says to make debugging dumps during compilation at times specified by
 @var{letters}.  This is used for debugging the compiler.  The file names
-for most of the dumps are made by appending a word to the source file
-name (e.g.  @file{foo.c.rtl} or @file{foo.c.jump}).  Here are the
-possible letters for use in @var{letters}, and their meanings:
+for most of the dumps are made by appending a pass number and a word to
+the source file name (e.g.  @file{foo.c.00.rtl} or @file{foo.c.01.jump}). 
+Here are the possible letters for use in @var{letters}, and their meanings:
 
 @table @samp
+@item A
+Annotate the assembler output with miscellaneous debugging information.
 @item b
-Dump after computing branch probabilities, to @file{@var{file}.bp}.
+Dump after computing branch probabilities, to @file{@var{file}.07.bp}.
 @item c
-Dump after instruction combination, to the file @file{@var{file}.combine}.
+Dump after instruction combination, to the file @file{@var{file}.09.combine}.
 @item d
-Dump after delayed branch scheduling, to @file{@var{file}.dbr}.
+Dump after delayed branch scheduling, to @file{@var{file}.19.dbr}.
 @item D
 Dump all macro definitions, at the end of preprocessing, in addition to
 normal output.
-@item r
-Dump after RTL generation, to @file{@var{file}.rtl}.
-@item j
-Dump after first jump optimization, to @file{@var{file}.jump}.
 @item F
-Dump after purging ADDRESSOF, to @file{@var{file}.addressof}.
+Dump after purging ADDRESSOF, to @file{@var{file}.03.addressof}.
 @item f
-Dump after flow analysis, to @file{@var{file}.flow}.
+Dump after flow analysis, to @file{@var{file}.08.flow}.
 @item g
-Dump after global register allocation, to @file{@var{file}.greg}.
+Dump after global register allocation, to @file{@var{file}.13.greg}.
 @item G      
-Dump after GCSE, to @file{@var{file}.gcse}.
+Dump after GCSE, to @file{@var{file}.04.gcse}.
 @item j
-Dump after first jump optimization, to @file{@var{file}.jump}.
+Dump after first jump optimization, to @file{@var{file}.01.jump}.
 @item J
-Dump after last jump optimization, to @file{@var{file}.jump2}.
+Dump after last jump optimization, to @file{@var{file}.17.jump2}.
 @item k
-Dump after conversion from registers to stack, to @file{@var{file}.stack}.
+Dump after conversion from registers to stack, to @file{@var{file}.20.stack}.
 @item l
-Dump after local register allocation, to @file{@var{file}.lreg}.
+Dump after local register allocation, to @file{@var{file}.12.lreg}.
 @item L
-Dump after loop optimization, to @file{@var{file}.loop}.
+Dump after loop optimization, to @file{@var{file}.05.loop}.
 @item M
 Dump after performing the machine dependent reorganisation pass, to
-@file{@var{file}.mach}. 
+@file{@var{file}.18.mach}. 
 @item N
-Dump after the register move pass, to @file{@var{file}.regmove}.
+Dump after the register move pass, to @file{@var{file}.10.regmove}.
 @item r
-Dump after RTL generation, to @file{@var{file}.rtl}.
+Dump after RTL generation, to @file{@var{file}.00.rtl}.
 @item R
-Dump after the second instruction scheduling pass, to @file{@var{file}.sched2}.
+Dump after the second instruction scheduling pass, to
+@file{@var{file}.16.sched2}.
 @item s
 Dump after CSE (including the jump optimization that sometimes follows
-CSE), to @file{@var{file}.cse}. 
+CSE), to @file{@var{file}.02.cse}. 
 @item S
-Dump after the first instruction scheduling pass, to @file{@var{file}.sched}.
+Dump after the first instruction scheduling pass, to
+@file{@var{file}.11.sched}.
 @item t
 Dump after the second CSE pass (including the jump optimization that
-sometimes follows CSE), to @file{@var{file}.cse2}. 
+sometimes follows CSE), to @file{@var{file}.06.cse2}. 
 @item a
 Produce all the dumps listed above.
 @item m
@@ -2128,13 +2128,19 @@ standard error.
 Annotate the assembler output with a comment indicating which
 pattern and alternative was used.  The length of each instruction is
 also printed.
+@item v
+For each of the other indicated dump files (except for
+@file{@var{file}.00.rtl}), dump a representation of the control flow graph
+suitible for viewing with VCG to @file{@var{file}.@var{pass}.vcg}.
+@item w
+Dump after the second flow pass to @file{@var{file}.14.flow2}. 
 @item x
 Just generate RTL for a function instead of compiling it.  Usually used
 with @samp{r}.
 @item y
 Dump debugging information during parsing, to standard error.
-@item A
-Annotate the assembler output with miscellaneous debugging information.
+@item z
+Dump after the peephole2 pass to @file{@var{file}.15.peephole2}.
 @end table
 
 @item -fdump-unnumbered
index b940e3f..815a7ec 100644 (file)
@@ -1306,10 +1306,9 @@ int sched_time;
 int local_alloc_time;
 int global_alloc_time;
 int flow2_time;
+int peephole2_time;
 int sched2_time;
-#ifdef DELAY_SLOTS
 int dbr_sched_time;
-#endif
 int shorten_branch_time;
 int stack_reg_time;
 int final_time;
@@ -2829,10 +2828,9 @@ compile_file (name)
   local_alloc_time = 0;
   global_alloc_time = 0;
   flow2_time = 0;
+  peephole2_time = 0;
   sched2_time = 0;
-#ifdef DELAY_SLOTS
   dbr_sched_time = 0;
-#endif
   shorten_branch_time = 0;
   stack_reg_time = 0;
   final_time = 0;
@@ -2881,131 +2879,137 @@ compile_file (name)
 
   /* Clear the dump files.  */
   if (rtl_dump)
-    clean_dump_file (".rtl");
+    clean_dump_file (".00.rtl");
   if (jump_opt_dump)
     {
-      clean_dump_file (".jump");
+      clean_dump_file (".01.jump");
+      if (graph_dump_format != no_graph)
+       clean_graph_dump_file (dump_base_name, ".01.jump");
+    }
+  if (cse_dump)
+    {
+      clean_dump_file (".02.cse");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".jump");
+       clean_graph_dump_file (dump_base_name, ".02.cse");
     }
   if (addressof_dump)
     {
-      clean_dump_file (".addressof");
+      clean_dump_file (".03.addressof");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".addressof");
+       clean_graph_dump_file (dump_base_name, ".03.addressof");
     }
-  if (cse_dump)
+  if (gcse_dump)
     {
-      clean_dump_file (".cse");
+      clean_dump_file (".04.gcse");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".cse");
+       clean_graph_dump_file (dump_base_name, ".04.gcse");
     }
   if (loop_dump)
     {
-      clean_dump_file (".loop");
+      clean_dump_file (".05.loop");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".loop");
+       clean_graph_dump_file (dump_base_name, ".05.loop");
     }
   if (cse2_dump)
     {
-      clean_dump_file (".cse2");
+      clean_dump_file (".06.cse2");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".cse2");
+       clean_graph_dump_file (dump_base_name, ".06.cse2");
     }
   if (branch_prob_dump)
     {
-      clean_dump_file (".bp");
+      clean_dump_file (".07.bp");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".bp");
+       clean_graph_dump_file (dump_base_name, ".07.bp");
     }
   if (flow_dump)
     {
-      clean_dump_file (".flow");
+      clean_dump_file (".08.flow");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".flow");
+       clean_graph_dump_file (dump_base_name, ".08.flow");
     }
   if (combine_dump)
     {
-      clean_dump_file (".combine");
+      clean_dump_file (".09.combine");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".combine");
+       clean_graph_dump_file (dump_base_name, ".09.combine");
     }
   if (regmove_dump)
     {
-      clean_dump_file (".regmove");
+      clean_dump_file (".10.regmove");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".regmove");
+       clean_graph_dump_file (dump_base_name, ".10.regmove");
     }
+#ifdef INSN_SCHEDULING
   if (sched_dump)
     {
-      clean_dump_file (".sched");
+      clean_dump_file (".11.sched");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".sched");
+       clean_graph_dump_file (dump_base_name, ".11.sched");
     }
+#endif
   if (local_reg_dump)
     {
-      clean_dump_file (".lreg");
+      clean_dump_file (".12.lreg");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".lreg");
+       clean_graph_dump_file (dump_base_name, ".12.lreg");
     }
   if (global_reg_dump)
     {
-      clean_dump_file (".greg");
+      clean_dump_file (".13.greg");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".greg");
+       clean_graph_dump_file (dump_base_name, ".13.greg");
     }
   if (flow2_dump)
     {
-      clean_dump_file (".flow2");
+      clean_dump_file (".14.flow2");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".flow2");
+       clean_graph_dump_file (dump_base_name, ".14.flow2");
     }
+#ifdef HAVE_peephole2
   if (peephole2_dump)
     {
-      clean_dump_file (".peephole2");
+      clean_dump_file (".15.peephole2");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".peephole2");
+       clean_graph_dump_file (dump_base_name, ".15.peephole2");
     }
+#endif
+#ifdef INSN_SCHEDULING
   if (sched2_dump)
     {
-      clean_dump_file (".sched2");
+      clean_dump_file (".16.sched2");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".sched2");
+       clean_graph_dump_file (dump_base_name, ".16.sched2");
     }
+#endif
   if (jump2_opt_dump)
     {
-      clean_dump_file (".jump2");
+      clean_dump_file (".17.jump2");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".jump2");
+       clean_graph_dump_file (dump_base_name, ".17.jump2");
     }
-#ifdef DELAY_SLOTS
-  if (dbr_sched_dump)
+#ifdef MACHINE_DEPENDENT_REORG
+  if (mach_dep_reorg_dump)
     {
-      clean_dump_file (".dbr");
+      clean_dump_file (".18.mach");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".dbr");
+       clean_graph_dump_file (dump_base_name, ".18.mach");
     }
 #endif
-  if (gcse_dump)
+#ifdef DELAY_SLOTS
+  if (dbr_sched_dump)
     {
-      clean_dump_file (".gcse");
+      clean_dump_file (".19.dbr");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".gcse");
+       clean_graph_dump_file (dump_base_name, ".19.dbr");
     }
+#endif
 #ifdef STACK_REGS
   if (stack_reg_dump)
     {
-      clean_dump_file (".stack");
+      clean_dump_file (".20.stack");
       if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".stack");
-    }
-#endif
-#ifdef MACHINE_DEPENDENT_REORG
-  if (mach_dep_reorg_dump)
-    {
-      clean_dump_file (".mach");
-      if (graph_dump_format != no_graph)
-       clean_graph_dump_file (dump_base_name, ".mach");
+       clean_graph_dump_file (dump_base_name, ".20.stack");
     }
 #endif
 
@@ -3272,7 +3276,7 @@ compile_file (name)
   end_final (dump_base_name);
    
   if (branch_prob_dump)
-    open_dump_file (".bp", NULL);
+    open_dump_file (".07.bp", NULL);
    
   TIMEVAR (dump_time, end_branch_prob (rtl_dump_file));
    
@@ -3299,7 +3303,7 @@ compile_file (name)
 
   if (combine_dump)
     {
-      open_dump_file (".combine", NULL);
+      open_dump_file (".09.combine", NULL);
       TIMEVAR (dump_time, dump_combine_total_stats (rtl_dump_file));
       close_dump_file (NULL, NULL_RTX);
     }
@@ -3318,48 +3322,56 @@ compile_file (name)
   if (graph_dump_format != no_graph)
     {
       if (jump_opt_dump)
-       finish_graph_dump_file (dump_base_name, ".jump");
-      if (addressof_dump)
-       finish_graph_dump_file (dump_base_name, ".addressof");
+       finish_graph_dump_file (dump_base_name, ".01.jump");
       if (cse_dump)
-       finish_graph_dump_file (dump_base_name, ".cse");
+       finish_graph_dump_file (dump_base_name, ".02.cse");
+      if (addressof_dump)
+       finish_graph_dump_file (dump_base_name, ".03.addressof");
+      if (gcse_dump)
+       finish_graph_dump_file (dump_base_name, ".04.gcse");
       if (loop_dump)
-       finish_graph_dump_file (dump_base_name, ".loop");
+       finish_graph_dump_file (dump_base_name, ".05.loop");
       if (cse2_dump)
-       finish_graph_dump_file (dump_base_name, ".cse2");
+       finish_graph_dump_file (dump_base_name, ".06.cse2");
       if (branch_prob_dump)
-       finish_graph_dump_file (dump_base_name, ".bp");
+       finish_graph_dump_file (dump_base_name, ".07.bp");
       if (flow_dump)
-       finish_graph_dump_file (dump_base_name, ".flow");
+       finish_graph_dump_file (dump_base_name, ".08.flow");
       if (combine_dump)
-       finish_graph_dump_file (dump_base_name, ".combine");
+       finish_graph_dump_file (dump_base_name, ".09.combine");
       if (regmove_dump)
-       finish_graph_dump_file (dump_base_name, ".regmove");
+       finish_graph_dump_file (dump_base_name, ".10.regmove");
+#ifdef INSN_SCHEDULING
       if (sched_dump)
-       finish_graph_dump_file (dump_base_name, ".sched");
+       finish_graph_dump_file (dump_base_name, ".11.sched");
+#endif
       if (local_reg_dump)
-       finish_graph_dump_file (dump_base_name, ".lreg");
+       finish_graph_dump_file (dump_base_name, ".12.lreg");
       if (global_reg_dump)
-       finish_graph_dump_file (dump_base_name, ".greg");
+       finish_graph_dump_file (dump_base_name, ".13.greg");
       if (flow2_dump)
-       finish_graph_dump_file (dump_base_name, ".flow2");
+       finish_graph_dump_file (dump_base_name, ".14.flow2");
+#ifdef HAVE_peephole2
+      if (flow2_dump)
+       finish_graph_dump_file (dump_base_name, ".15.peephole2");
+#endif
+#ifdef INSN_SCHEDULING
       if (sched2_dump)
-       finish_graph_dump_file (dump_base_name, ".sched2");
+       finish_graph_dump_file (dump_base_name, ".16.sched2");
+#endif
       if (jump2_opt_dump)
-       finish_graph_dump_file (dump_base_name, ".jump2");
+       finish_graph_dump_file (dump_base_name, ".17.jump2");
+#ifdef MACHINE_DEPENDENT_REORG
+      if (mach_dep_reorg_dump)
+       finish_graph_dump_file (dump_base_name, ".18.mach");
+#endif
 #ifdef DELAY_SLOTS
       if (dbr_sched_dump)
-       finish_graph_dump_file (dump_base_name, ".dbr");
+       finish_graph_dump_file (dump_base_name, ".19.dbr");
 #endif
-      if (gcse_dump)
-       finish_graph_dump_file (dump_base_name, ".gcse");
 #ifdef STACK_REGS
       if (stack_reg_dump)
-       finish_graph_dump_file (dump_base_name, ".stack");
-#endif
-#ifdef MACHINE_DEPENDENT_REORG
-      if (mach_dep_reorg_dump)
-       finish_graph_dump_file (dump_base_name, ".mach");
+       finish_graph_dump_file (dump_base_name, ".20.stack");
 #endif
     }
 
@@ -3385,21 +3397,31 @@ compile_file (name)
       print_time ("flow", flow_time);
       print_time ("combine", combine_time);
       print_time ("regmove", regmove_time);
+#ifdef INSN_SCHEDULING
       print_time ("sched", sched_time);
+#endif
       print_time ("local-alloc", local_alloc_time);
       print_time ("global-alloc", global_alloc_time);
       print_time ("flow2", flow2_time);
+#ifdef HAVE_peephole2
+      print_time ("peephole2", peephole2_time);
+#endif
+#ifdef INSN_SCHEDULING
       print_time ("sched2", sched2_time);
+#endif
 #ifdef DELAY_SLOTS
       print_time ("dbranch", dbr_sched_time);
 #endif
       print_time ("shorten-branch", shorten_branch_time);
+#ifdef STACK_REGS
       print_time ("stack-reg", stack_reg_time);
+#endif
       print_time ("final", final_time);
       print_time ("varconst", varconst_time);
       print_time ("symout", symout_time);
       print_time ("dump", dump_time);
-      print_time ("gc", gc_time);
+      if (ggc_p)
+       print_time ("gc", gc_time);
     }
 }
 \f
@@ -3565,7 +3587,7 @@ rest_of_compilation (decl)
 
       if (rtl_dump)
        {
-         open_dump_file (".rtl", decl_printable_name (decl, 2));
+         open_dump_file (".00.rtl", decl_printable_name (decl, 2));
          
          if (DECL_SAVED_INSNS (decl))
            fprintf (rtl_dump_file, ";; (integrable)\n\n");
@@ -3723,7 +3745,7 @@ rest_of_compilation (decl)
 
   /* Dump rtl code after jump, if we are doing that.  */
   if (jump_opt_dump)
-    dump_rtl (".jump", decl, print_rtl, insns);
+    dump_rtl (".01.jump", decl, print_rtl, insns);
 
   if (ggc_p)
     ggc_collect ();
@@ -3736,7 +3758,7 @@ rest_of_compilation (decl)
   if (optimize > 0)
     {
       if (cse_dump)
-       open_dump_file (".cse", decl_printable_name (decl, 2));
+       open_dump_file (".02.cse", decl_printable_name (decl, 2));
 
       TIMEVAR (cse_time, reg_scan (insns, max_reg_num (), 1));
 
@@ -3768,7 +3790,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".cse", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".02.cse", insns);
        }
     }
 
@@ -3777,9 +3799,9 @@ rest_of_compilation (decl)
 
   if (addressof_dump)
     {
-      dump_rtl (".addressof", decl, print_rtl, insns);
+      dump_rtl (".03.addressof", decl, print_rtl, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".addressof", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".03.addressof", insns);
     }
 
   if (ggc_p)
@@ -3790,7 +3812,7 @@ rest_of_compilation (decl)
   if (optimize > 0 && flag_gcse)
     {
       if (gcse_dump)
-       open_dump_file (".gcse", decl_printable_name (decl, 2));
+       open_dump_file (".04.gcse", decl_printable_name (decl, 2));
 
       TIMEVAR (gcse_time, tem = gcse_main (insns, rtl_dump_file));
 
@@ -3807,7 +3829,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".gcse", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".04.gcse", insns);
        }
 
       if (ggc_p)
@@ -3818,7 +3840,7 @@ rest_of_compilation (decl)
   if (optimize > 0)
     {
       if (loop_dump)
-       open_dump_file (".loop", decl_printable_name (decl, 2));
+       open_dump_file (".05.loop", decl_printable_name (decl, 2));
        
       TIMEVAR
        (loop_time,
@@ -3849,7 +3871,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".loop", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".05.loop", insns);
        }
 
       if (ggc_p)
@@ -3864,7 +3886,7 @@ rest_of_compilation (decl)
   if (optimize > 0)
     {
       if (cse2_dump)
-       open_dump_file (".cse2", decl_printable_name (decl, 2));
+       open_dump_file (".06.cse2", decl_printable_name (decl, 2));
 
       if (flag_rerun_cse_after_loop)
        {
@@ -3901,7 +3923,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".cse2", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".06.cse2", insns);
        }
 
       if (ggc_p)
@@ -3911,7 +3933,7 @@ rest_of_compilation (decl)
   if (profile_arc_flag || flag_test_coverage || flag_branch_probabilities)
     {
       if (branch_prob_dump)
-       open_dump_file (".bp", decl_printable_name (decl, 2));
+       open_dump_file (".07.bp", decl_printable_name (decl, 2));
 
       TIMEVAR
        (branch_prob_time,
@@ -3923,7 +3945,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".bp", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".07.bp", insns);
        }
 
       if (ggc_p)
@@ -3943,7 +3965,7 @@ rest_of_compilation (decl)
      because doing the flow analysis makes some of the dump.  */
 
   if (flow_dump)
-    open_dump_file (".flow", decl_printable_name (decl, 2));
+    open_dump_file (".08.flow", decl_printable_name (decl, 2));
   
   if (obey_regdecls)
     {
@@ -3979,7 +4001,7 @@ rest_of_compilation (decl)
     {
       close_dump_file (print_rtl_with_bb, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".flow", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".08.flow", insns);
     }
 
   if (ggc_p)
@@ -3999,9 +4021,9 @@ rest_of_compilation (decl)
 
       if (combine_dump)
        {
-         dump_rtl (".combine", decl, print_rtl_with_bb, insns);
+         dump_rtl (".09.combine", decl, print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".combine", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".09.combine", insns);
        }
 
       if (ggc_p)
@@ -4013,7 +4035,7 @@ rest_of_compilation (decl)
   if (optimize > 0 && (flag_regmove || flag_expensive_optimizations))
     {
       if (regmove_dump)
-       open_dump_file (".regmove", decl_printable_name (decl, 2));
+       open_dump_file (".10.regmove", decl_printable_name (decl, 2));
 
       TIMEVAR (regmove_time, regmove_optimize (insns, max_reg_num (),
                                               rtl_dump_file));
@@ -4022,7 +4044,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".regmove", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".10.regmove", insns);
        }
 
       if (ggc_p)
@@ -4032,10 +4054,11 @@ rest_of_compilation (decl)
   /* Print function header into sched dump now
      because doing the sched analysis makes some of the dump.  */
 
+#ifdef INSN_SCHEDULING
   if (optimize > 0 && flag_schedule_insns)
     {
       if (sched_dump)
-       open_dump_file (".sched", decl_printable_name (decl, 2));
+       open_dump_file (".11.sched", decl_printable_name (decl, 2));
 
       /* Do control and data sched analysis,
         and write some of the results to dump file.  */
@@ -4048,12 +4071,13 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".sched", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".11.sched", insns);
        }
 
       if (ggc_p)
        ggc_collect ();
     }
+#endif
 
   /* Determine if the current function is a leaf before running reload
      since this can impact optimizations done by the prologue and
@@ -4080,21 +4104,21 @@ rest_of_compilation (decl)
 
   if (local_reg_dump)
     {
-      open_dump_file (".lreg", decl_printable_name (decl, 2));
+      open_dump_file (".12.lreg", decl_printable_name (decl, 2));
 
       TIMEVAR (dump_time, dump_flow_info (rtl_dump_file));
       TIMEVAR (dump_time, dump_local_alloc (rtl_dump_file));
 
       close_dump_file (print_rtl_with_bb, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".lreg", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".12.lreg", insns);
     }
 
   if (ggc_p)
     ggc_collect ();
 
   if (global_reg_dump)
-    open_dump_file (".greg", decl_printable_name (decl, 2));
+    open_dump_file (".13.greg", decl_printable_name (decl, 2));
 
   /* Unless we did stupid register allocation,
      allocate remaining pseudo-regs, then do the reload pass
@@ -4158,12 +4182,12 @@ rest_of_compilation (decl)
       TIMEVAR (dump_time, dump_global_regs (rtl_dump_file));
       close_dump_file (print_rtl_with_bb, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".greg", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".13.greg", insns);
     }
 
   /* Re-create the death notes which were deleted during reload.  */
   if (flow2_dump)
-    open_dump_file (".flow2", decl_printable_name (decl, 2));
+    open_dump_file (".14.flow2", decl_printable_name (decl, 2));
   
   if (optimize)
     {
@@ -4191,30 +4215,31 @@ rest_of_compilation (decl)
     {
       close_dump_file (print_rtl_with_bb, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".flow2", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".14.flow2", insns);
     }
 
 #ifdef HAVE_peephole2
   if (optimize > 0 && flag_peephole2)
     {
       if (peephole2_dump)
-       open_dump_file (".peephole2", decl_printable_name (decl, 2));
+       open_dump_file (".15.peephole2", decl_printable_name (decl, 2));
 
-      peephole2_optimize (rtl_dump_file);
+      TIMEVAR (peephole2_time, peephole2_optimize (rtl_dump_file));
 
       if (peephole2_dump)
        {
          close_dump_file (print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".peephole2", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".15.peephole2", insns);
        }
     }
 #endif
 
+#ifdef INSN_SCHEDULING
   if (optimize > 0 && flag_schedule_insns_after_reload)
     {
       if (sched2_dump)
-       open_dump_file (".sched2", decl_printable_name (decl, 2));
+       open_dump_file (".16.sched2", decl_printable_name (decl, 2));
 
       /* Do control and data sched analysis again,
         and write some more of the results to dump file.  */
@@ -4227,12 +4252,13 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".sched2", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".16.sched2", insns);
        }
 
       if (ggc_p)
        ggc_collect ();
     }
+#endif
 
 #ifdef LEAF_REGISTERS
   current_function_uses_only_leaf_regs
@@ -4254,16 +4280,16 @@ rest_of_compilation (decl)
 
       if (jump2_opt_dump)
        {
-         dump_rtl (".jump2", decl, print_rtl_with_bb, insns);
+         dump_rtl (".17.jump2", decl, print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".jump2", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".17.jump2", insns);
        }
     }
 
   /* If a machine dependent reorganization is needed, call it.  */
 #ifdef MACHINE_DEPENDENT_REORG
   if (mach_dep_reorg_dump)
-    open_dump_file (".mach", decl_printable_name (decl, 2));
+    open_dump_file (".18.mach", decl_printable_name (decl, 2));
 
    MACHINE_DEPENDENT_REORG (insns);
 
@@ -4271,7 +4297,7 @@ rest_of_compilation (decl)
      {
        close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
-        print_rtl_graph_with_bb (dump_base_name, ".mach", insns);
+        print_rtl_graph_with_bb (dump_base_name, ".18.mach", insns);
      }
 
    if (ggc_p)
@@ -4285,7 +4311,7 @@ rest_of_compilation (decl)
   if (optimize > 0 && flag_delayed_branch)
     {
       if (dbr_sched_dump)
-       open_dump_file (".dbr", decl_printable_name (decl, 2));
+       open_dump_file (".19.dbr", decl_printable_name (decl, 2));
 
       TIMEVAR (dbr_sched_time, dbr_schedule (insns, rtl_dump_file));
 
@@ -4293,7 +4319,7 @@ rest_of_compilation (decl)
        {
          close_dump_file (print_rtl_with_bb, insns);
          if (graph_dump_format != no_graph)
-           print_rtl_graph_with_bb (dump_base_name, ".dbr", insns);
+           print_rtl_graph_with_bb (dump_base_name, ".19.dbr", insns);
        }
     }
 
@@ -4309,15 +4335,15 @@ rest_of_compilation (decl)
 
 #ifdef STACK_REGS
   if (stack_reg_dump)
-    open_dump_file (".stack", decl_printable_name (decl, 2));
+    open_dump_file (".20.stack", decl_printable_name (decl, 2));
 
   TIMEVAR (stack_reg_time, reg_to_stack (insns, rtl_dump_file));
 
   if (stack_reg_dump)
     {
-      dump_rtl (".stack", decl, print_rtl_with_bb, insns);
+      close_dump_file (print_rtl_with_bb, insns);
       if (graph_dump_format != no_graph)
-       print_rtl_graph_with_bb (dump_base_name, ".stack", insns);
+       print_rtl_graph_with_bb (dump_base_name, ".20.stack", insns);
     }
 
    if (ggc_p)