This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

dump files tweek


Sometimes I find it annoying to grep for the first occurrence of
an insn in the set of dump files, since the files are not sorted
in any way.

This patch adds a pass number to the dump file name (eg foo.c.02.cse)
so that "grep 'insn[^0-9]* 179 foo.c.*" will do the Right Thing.


r~

        * 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.

Index: toplev.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/toplev.c,v
retrieving revision 1.235
diff -c -p -d -r1.235 toplev.c
*** toplev.c	1999/10/04 18:30:10	1.235
--- toplev.c	1999/10/05 04:01:26
*************** int sched_time;
*** 1306,1315 ****
  int local_alloc_time;
  int global_alloc_time;
  int flow2_time;
  int sched2_time;
- #ifdef DELAY_SLOTS
  int dbr_sched_time;
- #endif
  int shorten_branch_time;
  int stack_reg_time;
  int final_time;
--- 1306,1314 ----
  int local_alloc_time;
  int global_alloc_time;
  int flow2_time;
+ int peephole2_time;
  int sched2_time;
  int dbr_sched_time;
  int shorten_branch_time;
  int stack_reg_time;
  int final_time;
*************** compile_file (name)
*** 2829,2838 ****
    local_alloc_time = 0;
    global_alloc_time = 0;
    flow2_time = 0;
    sched2_time = 0;
- #ifdef DELAY_SLOTS
    dbr_sched_time = 0;
- #endif
    shorten_branch_time = 0;
    stack_reg_time = 0;
    final_time = 0;
--- 2828,2836 ----
    local_alloc_time = 0;
    global_alloc_time = 0;
    flow2_time = 0;
+   peephole2_time = 0;
    sched2_time = 0;
    dbr_sched_time = 0;
    shorten_branch_time = 0;
    stack_reg_time = 0;
    final_time = 0;
*************** compile_file (name)
*** 2881,3011 ****
  
    /* Clear the dump files.  */
    if (rtl_dump)
!     clean_dump_file (".rtl");
    if (jump_opt_dump)
      {
!       clean_dump_file (".jump");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".jump");
      }
    if (addressof_dump)
      {
!       clean_dump_file (".addressof");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".addressof");
      }
!   if (cse_dump)
      {
!       clean_dump_file (".cse");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".cse");
      }
    if (loop_dump)
      {
!       clean_dump_file (".loop");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".loop");
      }
    if (cse2_dump)
      {
!       clean_dump_file (".cse2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".cse2");
      }
    if (branch_prob_dump)
      {
!       clean_dump_file (".bp");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".bp");
      }
    if (flow_dump)
      {
!       clean_dump_file (".flow");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".flow");
      }
    if (combine_dump)
      {
!       clean_dump_file (".combine");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".combine");
      }
    if (regmove_dump)
      {
!       clean_dump_file (".regmove");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".regmove");
      }
    if (sched_dump)
      {
!       clean_dump_file (".sched");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".sched");
      }
    if (local_reg_dump)
      {
!       clean_dump_file (".lreg");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".lreg");
      }
    if (global_reg_dump)
      {
!       clean_dump_file (".greg");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".greg");
      }
    if (flow2_dump)
      {
!       clean_dump_file (".flow2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".flow2");
      }
    if (peephole2_dump)
      {
!       clean_dump_file (".peephole2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".peephole2");
      }
    if (sched2_dump)
      {
!       clean_dump_file (".sched2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".sched2");
      }
    if (jump2_opt_dump)
      {
!       clean_dump_file (".jump2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".jump2");
      }
! #ifdef DELAY_SLOTS
!   if (dbr_sched_dump)
      {
!       clean_dump_file (".dbr");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".dbr");
      }
  #endif
!   if (gcse_dump)
      {
!       clean_dump_file (".gcse");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".gcse");
      }
  #ifdef STACK_REGS
    if (stack_reg_dump)
-     {
-       clean_dump_file (".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");
      }
  #endif
  
--- 2879,3015 ----
  
    /* Clear the dump files.  */
    if (rtl_dump)
!     clean_dump_file (".00.rtl");
    if (jump_opt_dump)
      {
!       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, ".02.cse");
      }
    if (addressof_dump)
      {
!       clean_dump_file (".03.addressof");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".03.addressof");
      }
!   if (gcse_dump)
      {
!       clean_dump_file (".04.gcse");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".04.gcse");
      }
    if (loop_dump)
      {
!       clean_dump_file (".05.loop");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".05.loop");
      }
    if (cse2_dump)
      {
!       clean_dump_file (".06.cse2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".06.cse2");
      }
    if (branch_prob_dump)
      {
!       clean_dump_file (".07.bp");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".07.bp");
      }
    if (flow_dump)
      {
!       clean_dump_file (".08.flow");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".08.flow");
      }
    if (combine_dump)
      {
!       clean_dump_file (".09.combine");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".09.combine");
      }
    if (regmove_dump)
      {
!       clean_dump_file (".10.regmove");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".10.regmove");
      }
+ #ifdef INSN_SCHEDULING
    if (sched_dump)
      {
!       clean_dump_file (".11.sched");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".11.sched");
      }
+ #endif
    if (local_reg_dump)
      {
!       clean_dump_file (".12.lreg");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".12.lreg");
      }
    if (global_reg_dump)
      {
!       clean_dump_file (".13.greg");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".13.greg");
      }
    if (flow2_dump)
      {
!       clean_dump_file (".14.flow2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".14.flow2");
      }
+ #ifdef HAVE_peephole2
    if (peephole2_dump)
      {
!       clean_dump_file (".15.peephole2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".15.peephole2");
      }
+ #endif
+ #ifdef INSN_SCHEDULING
    if (sched2_dump)
      {
!       clean_dump_file (".16.sched2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".16.sched2");
      }
+ #endif
    if (jump2_opt_dump)
      {
!       clean_dump_file (".17.jump2");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".17.jump2");
      }
! #ifdef MACHINE_DEPENDENT_REORG
!   if (mach_dep_reorg_dump)
      {
!       clean_dump_file (".18.mach");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".18.mach");
      }
  #endif
! #ifdef DELAY_SLOTS
!   if (dbr_sched_dump)
      {
!       clean_dump_file (".19.dbr");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".19.dbr");
      }
+ #endif
  #ifdef STACK_REGS
    if (stack_reg_dump)
      {
!       clean_dump_file (".20.stack");
        if (graph_dump_format != no_graph)
! 	clean_graph_dump_file (dump_base_name, ".20.stack");
      }
  #endif
  
*************** compile_file (name)
*** 3272,3278 ****
    end_final (dump_base_name);
     
    if (branch_prob_dump)
!     open_dump_file (".bp", NULL);
     
    TIMEVAR (dump_time, end_branch_prob (rtl_dump_file));
     
--- 3276,3282 ----
    end_final (dump_base_name);
     
    if (branch_prob_dump)
!     open_dump_file (".07.bp", NULL);
     
    TIMEVAR (dump_time, end_branch_prob (rtl_dump_file));
     
*************** compile_file (name)
*** 3299,3305 ****
  
    if (combine_dump)
      {
!       open_dump_file (".combine", NULL);
        TIMEVAR (dump_time, dump_combine_total_stats (rtl_dump_file));
        close_dump_file (NULL, NULL_RTX);
      }
--- 3303,3309 ----
  
    if (combine_dump)
      {
!       open_dump_file (".09.combine", NULL);
        TIMEVAR (dump_time, dump_combine_total_stats (rtl_dump_file));
        close_dump_file (NULL, NULL_RTX);
      }
*************** compile_file (name)
*** 3318,3365 ****
    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");
        if (cse_dump)
! 	finish_graph_dump_file (dump_base_name, ".cse");
        if (loop_dump)
! 	finish_graph_dump_file (dump_base_name, ".loop");
        if (cse2_dump)
! 	finish_graph_dump_file (dump_base_name, ".cse2");
        if (branch_prob_dump)
! 	finish_graph_dump_file (dump_base_name, ".bp");
        if (flow_dump)
! 	finish_graph_dump_file (dump_base_name, ".flow");
        if (combine_dump)
! 	finish_graph_dump_file (dump_base_name, ".combine");
        if (regmove_dump)
! 	finish_graph_dump_file (dump_base_name, ".regmove");
        if (sched_dump)
! 	finish_graph_dump_file (dump_base_name, ".sched");
        if (local_reg_dump)
! 	finish_graph_dump_file (dump_base_name, ".lreg");
        if (global_reg_dump)
! 	finish_graph_dump_file (dump_base_name, ".greg");
        if (flow2_dump)
! 	finish_graph_dump_file (dump_base_name, ".flow2");
        if (sched2_dump)
! 	finish_graph_dump_file (dump_base_name, ".sched2");
        if (jump2_opt_dump)
! 	finish_graph_dump_file (dump_base_name, ".jump2");
  #ifdef DELAY_SLOTS
        if (dbr_sched_dump)
! 	finish_graph_dump_file (dump_base_name, ".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");
  #endif
      }
  
--- 3322,3377 ----
    if (graph_dump_format != no_graph)
      {
        if (jump_opt_dump)
! 	finish_graph_dump_file (dump_base_name, ".01.jump");
        if (cse_dump)
! 	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, ".05.loop");
        if (cse2_dump)
! 	finish_graph_dump_file (dump_base_name, ".06.cse2");
        if (branch_prob_dump)
! 	finish_graph_dump_file (dump_base_name, ".07.bp");
        if (flow_dump)
! 	finish_graph_dump_file (dump_base_name, ".08.flow");
        if (combine_dump)
! 	finish_graph_dump_file (dump_base_name, ".09.combine");
        if (regmove_dump)
! 	finish_graph_dump_file (dump_base_name, ".10.regmove");
! #ifdef INSN_SCHEDULING
        if (sched_dump)
! 	finish_graph_dump_file (dump_base_name, ".11.sched");
! #endif
        if (local_reg_dump)
! 	finish_graph_dump_file (dump_base_name, ".12.lreg");
        if (global_reg_dump)
! 	finish_graph_dump_file (dump_base_name, ".13.greg");
        if (flow2_dump)
! 	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, ".16.sched2");
! #endif
        if (jump2_opt_dump)
! 	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, ".19.dbr");
  #endif
  #ifdef STACK_REGS
        if (stack_reg_dump)
! 	finish_graph_dump_file (dump_base_name, ".20.stack");
  #endif
      }
  
*************** compile_file (name)
*** 3385,3405 ****
        print_time ("flow", flow_time);
        print_time ("combine", combine_time);
        print_time ("regmove", regmove_time);
        print_time ("sched", sched_time);
        print_time ("local-alloc", local_alloc_time);
        print_time ("global-alloc", global_alloc_time);
        print_time ("flow2", flow2_time);
        print_time ("sched2", sched2_time);
  #ifdef DELAY_SLOTS
        print_time ("dbranch", dbr_sched_time);
  #endif
        print_time ("shorten-branch", shorten_branch_time);
        print_time ("stack-reg", stack_reg_time);
        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);
      }
  }
  
--- 3397,3427 ----
        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);
!       if (ggc_p)
! 	print_time ("gc", gc_time);
      }
  }
  
*************** rest_of_compilation (decl)
*** 3565,3571 ****
  
        if (rtl_dump)
  	{
! 	  open_dump_file (".rtl", decl_printable_name (decl, 2));
  	  
  	  if (DECL_SAVED_INSNS (decl))
  	    fprintf (rtl_dump_file, ";; (integrable)\n\n");
--- 3587,3593 ----
  
        if (rtl_dump)
  	{
! 	  open_dump_file (".00.rtl", decl_printable_name (decl, 2));
  	  
  	  if (DECL_SAVED_INSNS (decl))
  	    fprintf (rtl_dump_file, ";; (integrable)\n\n");
*************** rest_of_compilation (decl)
*** 3723,3729 ****
  
    /* Dump rtl code after jump, if we are doing that.  */
    if (jump_opt_dump)
!     dump_rtl (".jump", decl, print_rtl, insns);
  
    if (ggc_p)
      ggc_collect ();
--- 3745,3751 ----
  
    /* Dump rtl code after jump, if we are doing that.  */
    if (jump_opt_dump)
!     dump_rtl (".01.jump", decl, print_rtl, insns);
  
    if (ggc_p)
      ggc_collect ();
*************** rest_of_compilation (decl)
*** 3736,3742 ****
    if (optimize > 0)
      {
        if (cse_dump)
! 	open_dump_file (".cse", decl_printable_name (decl, 2));
  
        TIMEVAR (cse_time, reg_scan (insns, max_reg_num (), 1));
  
--- 3758,3764 ----
    if (optimize > 0)
      {
        if (cse_dump)
! 	open_dump_file (".02.cse", decl_printable_name (decl, 2));
  
        TIMEVAR (cse_time, reg_scan (insns, max_reg_num (), 1));
  
*************** rest_of_compilation (decl)
*** 3768,3774 ****
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".cse", insns);
  	}
      }
  
--- 3790,3796 ----
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".02.cse", insns);
  	}
      }
  
*************** rest_of_compilation (decl)
*** 3777,3785 ****
  
    if (addressof_dump)
      {
!       dump_rtl (".addressof", decl, print_rtl, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".addressof", insns);
      }
  
    if (ggc_p)
--- 3799,3807 ----
  
    if (addressof_dump)
      {
!       dump_rtl (".03.addressof", decl, print_rtl, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".03.addressof", insns);
      }
  
    if (ggc_p)
*************** rest_of_compilation (decl)
*** 3790,3796 ****
    if (optimize > 0 && flag_gcse)
      {
        if (gcse_dump)
! 	open_dump_file (".gcse", decl_printable_name (decl, 2));
  
        TIMEVAR (gcse_time, tem = gcse_main (insns, rtl_dump_file));
  
--- 3812,3818 ----
    if (optimize > 0 && flag_gcse)
      {
        if (gcse_dump)
! 	open_dump_file (".04.gcse", decl_printable_name (decl, 2));
  
        TIMEVAR (gcse_time, tem = gcse_main (insns, rtl_dump_file));
  
*************** rest_of_compilation (decl)
*** 3807,3813 ****
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".gcse", insns);
  	}
  
        if (ggc_p)
--- 3829,3835 ----
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".04.gcse", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 3818,3824 ****
    if (optimize > 0)
      {
        if (loop_dump)
! 	open_dump_file (".loop", decl_printable_name (decl, 2));
  	
        TIMEVAR
  	(loop_time,
--- 3840,3846 ----
    if (optimize > 0)
      {
        if (loop_dump)
! 	open_dump_file (".05.loop", decl_printable_name (decl, 2));
  	
        TIMEVAR
  	(loop_time,
*************** rest_of_compilation (decl)
*** 3849,3855 ****
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".loop", insns);
  	}
  
        if (ggc_p)
--- 3871,3877 ----
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".05.loop", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 3864,3870 ****
    if (optimize > 0)
      {
        if (cse2_dump)
! 	open_dump_file (".cse2", decl_printable_name (decl, 2));
  
        if (flag_rerun_cse_after_loop)
  	{
--- 3886,3892 ----
    if (optimize > 0)
      {
        if (cse2_dump)
! 	open_dump_file (".06.cse2", decl_printable_name (decl, 2));
  
        if (flag_rerun_cse_after_loop)
  	{
*************** rest_of_compilation (decl)
*** 3901,3907 ****
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".cse2", insns);
  	}
  
        if (ggc_p)
--- 3923,3929 ----
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".06.cse2", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 3911,3917 ****
    if (profile_arc_flag || flag_test_coverage || flag_branch_probabilities)
      {
        if (branch_prob_dump)
! 	open_dump_file (".bp", decl_printable_name (decl, 2));
  
        TIMEVAR
  	(branch_prob_time,
--- 3933,3939 ----
    if (profile_arc_flag || flag_test_coverage || flag_branch_probabilities)
      {
        if (branch_prob_dump)
! 	open_dump_file (".07.bp", decl_printable_name (decl, 2));
  
        TIMEVAR
  	(branch_prob_time,
*************** rest_of_compilation (decl)
*** 3923,3929 ****
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".bp", insns);
  	}
  
        if (ggc_p)
--- 3945,3951 ----
  	{
  	  close_dump_file (print_rtl, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".07.bp", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 3943,3949 ****
       because doing the flow analysis makes some of the dump.  */
  
    if (flow_dump)
!     open_dump_file (".flow", decl_printable_name (decl, 2));
    
    if (obey_regdecls)
      {
--- 3965,3971 ----
       because doing the flow analysis makes some of the dump.  */
  
    if (flow_dump)
!     open_dump_file (".08.flow", decl_printable_name (decl, 2));
    
    if (obey_regdecls)
      {
*************** rest_of_compilation (decl)
*** 3979,3985 ****
      {
        close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".flow", insns);
      }
  
    if (ggc_p)
--- 4001,4007 ----
      {
        close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".08.flow", insns);
      }
  
    if (ggc_p)
*************** rest_of_compilation (decl)
*** 3999,4007 ****
  
        if (combine_dump)
  	{
! 	  dump_rtl (".combine", decl, print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".combine", insns);
  	}
  
        if (ggc_p)
--- 4021,4029 ----
  
        if (combine_dump)
  	{
! 	  dump_rtl (".09.combine", decl, print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".09.combine", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 4013,4019 ****
    if (optimize > 0 && (flag_regmove || flag_expensive_optimizations))
      {
        if (regmove_dump)
! 	open_dump_file (".regmove", decl_printable_name (decl, 2));
  
        TIMEVAR (regmove_time, regmove_optimize (insns, max_reg_num (),
  					       rtl_dump_file));
--- 4035,4041 ----
    if (optimize > 0 && (flag_regmove || flag_expensive_optimizations))
      {
        if (regmove_dump)
! 	open_dump_file (".10.regmove", decl_printable_name (decl, 2));
  
        TIMEVAR (regmove_time, regmove_optimize (insns, max_reg_num (),
  					       rtl_dump_file));
*************** rest_of_compilation (decl)
*** 4022,4028 ****
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".regmove", insns);
  	}
  
        if (ggc_p)
--- 4044,4050 ----
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".10.regmove", insns);
  	}
  
        if (ggc_p)
*************** rest_of_compilation (decl)
*** 4032,4041 ****
    /* Print function header into sched dump now
       because doing the sched analysis makes some of the dump.  */
  
    if (optimize > 0 && flag_schedule_insns)
      {
        if (sched_dump)
! 	open_dump_file (".sched", decl_printable_name (decl, 2));
  
        /* Do control and data sched analysis,
  	 and write some of the results to dump file.  */
--- 4054,4064 ----
    /* 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 (".11.sched", decl_printable_name (decl, 2));
  
        /* Do control and data sched analysis,
  	 and write some of the results to dump file.  */
*************** rest_of_compilation (decl)
*** 4048,4059 ****
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".sched", insns);
  	}
  
        if (ggc_p)
  	ggc_collect ();
      }
  
    /* Determine if the current function is a leaf before running reload
       since this can impact optimizations done by the prologue and
--- 4071,4083 ----
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    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
*************** rest_of_compilation (decl)
*** 4080,4100 ****
  
    if (local_reg_dump)
      {
!       open_dump_file (".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);
      }
  
    if (ggc_p)
      ggc_collect ();
  
    if (global_reg_dump)
!     open_dump_file (".greg", decl_printable_name (decl, 2));
  
    /* Unless we did stupid register allocation,
       allocate remaining pseudo-regs, then do the reload pass
--- 4104,4124 ----
  
    if (local_reg_dump)
      {
!       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, ".12.lreg", insns);
      }
  
    if (ggc_p)
      ggc_collect ();
  
    if (global_reg_dump)
!     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
*************** rest_of_compilation (decl)
*** 4158,4169 ****
        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);
      }
  
    /* Re-create the death notes which were deleted during reload.  */
    if (flow2_dump)
!     open_dump_file (".flow2", decl_printable_name (decl, 2));
    
    if (optimize)
      {
--- 4182,4193 ----
        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, ".13.greg", insns);
      }
  
    /* Re-create the death notes which were deleted during reload.  */
    if (flow2_dump)
!     open_dump_file (".14.flow2", decl_printable_name (decl, 2));
    
    if (optimize)
      {
*************** rest_of_compilation (decl)
*** 4191,4220 ****
      {
        close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".flow2", insns);
      }
  
  #ifdef HAVE_peephole2
    if (optimize > 0 && flag_peephole2)
      {
        if (peephole2_dump)
! 	open_dump_file (".peephole2", decl_printable_name (decl, 2));
  
!       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);
  	}
      }
  #endif
  
    if (optimize > 0 && flag_schedule_insns_after_reload)
      {
        if (sched2_dump)
! 	open_dump_file (".sched2", decl_printable_name (decl, 2));
  
        /* Do control and data sched analysis again,
  	 and write some more of the results to dump file.  */
--- 4215,4245 ----
      {
        close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
! 	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 (".15.peephole2", decl_printable_name (decl, 2));
  
!       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, ".15.peephole2", insns);
  	}
      }
  #endif
  
+ #ifdef INSN_SCHEDULING
    if (optimize > 0 && flag_schedule_insns_after_reload)
      {
        if (sched2_dump)
! 	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.  */
*************** rest_of_compilation (decl)
*** 4227,4238 ****
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".sched2", insns);
  	}
  
        if (ggc_p)
  	ggc_collect ();
      }
  
  #ifdef LEAF_REGISTERS
    current_function_uses_only_leaf_regs
--- 4252,4264 ----
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    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
*************** rest_of_compilation (decl)
*** 4254,4269 ****
  
        if (jump2_opt_dump)
  	{
! 	  dump_rtl (".jump2", decl, print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".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));
  
     MACHINE_DEPENDENT_REORG (insns);
  
--- 4280,4295 ----
  
        if (jump2_opt_dump)
  	{
! 	  dump_rtl (".17.jump2", decl, print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    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 (".18.mach", decl_printable_name (decl, 2));
  
     MACHINE_DEPENDENT_REORG (insns);
  
*************** rest_of_compilation (decl)
*** 4271,4277 ****
       {
         close_dump_file (print_rtl_with_bb, insns);
         if (graph_dump_format != no_graph)
! 	 print_rtl_graph_with_bb (dump_base_name, ".mach", insns);
       }
  
     if (ggc_p)
--- 4297,4303 ----
       {
         close_dump_file (print_rtl_with_bb, insns);
         if (graph_dump_format != no_graph)
! 	 print_rtl_graph_with_bb (dump_base_name, ".18.mach", insns);
       }
  
     if (ggc_p)
*************** rest_of_compilation (decl)
*** 4285,4291 ****
    if (optimize > 0 && flag_delayed_branch)
      {
        if (dbr_sched_dump)
! 	open_dump_file (".dbr", decl_printable_name (decl, 2));
  
        TIMEVAR (dbr_sched_time, dbr_schedule (insns, rtl_dump_file));
  
--- 4311,4317 ----
    if (optimize > 0 && flag_delayed_branch)
      {
        if (dbr_sched_dump)
! 	open_dump_file (".19.dbr", decl_printable_name (decl, 2));
  
        TIMEVAR (dbr_sched_time, dbr_schedule (insns, rtl_dump_file));
  
*************** rest_of_compilation (decl)
*** 4293,4299 ****
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".dbr", insns);
  	}
      }
  
--- 4319,4325 ----
  	{
  	  close_dump_file (print_rtl_with_bb, insns);
  	  if (graph_dump_format != no_graph)
! 	    print_rtl_graph_with_bb (dump_base_name, ".19.dbr", insns);
  	}
      }
  
*************** rest_of_compilation (decl)
*** 4309,4323 ****
  
  #ifdef STACK_REGS
    if (stack_reg_dump)
!     open_dump_file (".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);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".stack", insns);
      }
  
     if (ggc_p)
--- 4335,4349 ----
  
  #ifdef STACK_REGS
    if (stack_reg_dump)
!     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)
      {
!       close_dump_file (print_rtl_with_bb, insns);
        if (graph_dump_format != no_graph)
! 	print_rtl_graph_with_bb (dump_base_name, ".20.stack", insns);
      }
  
     if (ggc_p)
Index: invoke.texi
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/invoke.texi,v
retrieving revision 1.145
diff -c -p -d -r1.145 invoke.texi
*** invoke.texi	1999/10/02 18:29:08	1.145
--- invoke.texi	1999/10/05 04:01:26
*************** block and arc execution counts from the 
*** 2066,2124 ****
  @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:
  
  @table @samp
  @item b
! Dump after computing branch probabilities, to @file{@var{file}.bp}.
  @item c
! Dump after instruction combination, to the file @file{@var{file}.combine}.
  @item d
! Dump after delayed branch scheduling, to @file{@var{file}.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}.
  @item f
! Dump after flow analysis, to @file{@var{file}.flow}.
  @item g
! Dump after global register allocation, to @file{@var{file}.greg}.
  @item G      
! Dump after GCSE, to @file{@var{file}.gcse}.
  @item j
! Dump after first jump optimization, to @file{@var{file}.jump}.
  @item J
! Dump after last jump optimization, to @file{@var{file}.jump2}.
  @item k
! Dump after conversion from registers to stack, to @file{@var{file}.stack}.
  @item l
! Dump after local register allocation, to @file{@var{file}.lreg}.
  @item L
! Dump after loop optimization, to @file{@var{file}.loop}.
  @item M
  Dump after performing the machine dependent reorganisation pass, to
! @file{@var{file}.mach}. 
  @item N
! Dump after the register move pass, to @file{@var{file}.regmove}.
  @item r
! Dump after RTL generation, to @file{@var{file}.rtl}.
  @item R
! Dump after the second instruction scheduling pass, to @file{@var{file}.sched2}.
  @item s
  Dump after CSE (including the jump optimization that sometimes follows
! CSE), to @file{@var{file}.cse}. 
  @item S
! Dump after the first instruction scheduling pass, to @file{@var{file}.sched}.
  @item t
  Dump after the second CSE pass (including the jump optimization that
! sometimes follows CSE), to @file{@var{file}.cse2}. 
  @item a
  Produce all the dumps listed above.
  @item m
--- 2066,2124 ----
  @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 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}.07.bp}.
  @item c
! Dump after instruction combination, to the file @file{@var{file}.09.combine}.
  @item d
! 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 F
! Dump after purging ADDRESSOF, to @file{@var{file}.03.addressof}.
  @item f
! Dump after flow analysis, to @file{@var{file}.08.flow}.
  @item g
! Dump after global register allocation, to @file{@var{file}.13.greg}.
  @item G      
! Dump after GCSE, to @file{@var{file}.04.gcse}.
  @item j
! Dump after first jump optimization, to @file{@var{file}.01.jump}.
  @item J
! Dump after last jump optimization, to @file{@var{file}.17.jump2}.
  @item k
! Dump after conversion from registers to stack, to @file{@var{file}.20.stack}.
  @item l
! Dump after local register allocation, to @file{@var{file}.12.lreg}.
  @item L
! Dump after loop optimization, to @file{@var{file}.05.loop}.
  @item M
  Dump after performing the machine dependent reorganisation pass, to
! @file{@var{file}.18.mach}. 
  @item N
! Dump after the register move pass, to @file{@var{file}.10.regmove}.
  @item r
! Dump after RTL generation, to @file{@var{file}.00.rtl}.
  @item R
! 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}.02.cse}. 
  @item S
! 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}.06.cse2}. 
  @item a
  Produce all the dumps listed above.
  @item m
*************** standard error.
*** 2128,2140 ****
  Annotate the assembler output with a comment indicating which
  pattern and alternative was used.  The length of each instruction is
  also printed.
  @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.
  @end table
  
  @item -fdump-unnumbered
--- 2128,2146 ----
  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 z
! Dump after the peephole2 pass to @file{@var{file}.15.peephole2}.
  @end table
  
  @item -fdump-unnumbered


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]