Commit b707b450 by J"orn Rennecke Committed by Joern Rennecke

Cleanup for -fdump-unnumbered:

	* flags.h (flag_dump_unnumbered): Declare.
	* toplev.c (flag_dump_unnumbered): Don't declare.
	* print-rtl.c (flags.h): Include.
	(print_rtl_single): Add return value.
	* rtl.h (print_rtl_single): Update declaration.
	* flow.c (flag_dump_unnumbered): Don't declare.
	(print_rtl_with_bb): Use return value of print_rtl_single.

From-SVN: r22865
parent 87603ed0
Tue Oct 6 17:00:42 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
* flags.h (flag_dump_unnumbered): Declare.
* toplev.c (flag_dump_unnumbered): Don't declare.
* print-rtl.c (flags.h): Include.
(print_rtl_single): Add return value.
* rtl.h (print_rtl_single): Update declaration.
* flow.c (flag_dump_unnumbered): Don't declare.
(print_rtl_with_bb): Use return value of print_rtl_single.
Tue Oct 6 01:36:00 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> Tue Oct 6 01:36:00 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
* Makefile.in (stupid.o): Update dependencies. * Makefile.in (stupid.o): Update dependencies.
......
...@@ -356,6 +356,11 @@ extern int flag_branch_on_count_reg; ...@@ -356,6 +356,11 @@ extern int flag_branch_on_count_reg;
extern int flag_delayed_branch; extern int flag_delayed_branch;
/* Nonzero means suppress output of instruction numbers and line number
notes in debugging dumps. */
extern int flag_dump_unnumbered;
/* Nonzero means pretend it is OK to examine bits of target floats, /* Nonzero means pretend it is OK to examine bits of target floats,
even if that isn't true. The resulting code will have incorrect constants, even if that isn't true. The resulting code will have incorrect constants,
but the same series of instructions that the native compiler would make. */ but the same series of instructions that the native compiler would make. */
......
...@@ -3171,7 +3171,6 @@ print_rtl_with_bb (outf, rtx_first) ...@@ -3171,7 +3171,6 @@ print_rtl_with_bb (outf, rtx_first)
FILE *outf; FILE *outf;
rtx rtx_first; rtx rtx_first;
{ {
extern int flag_dump_unnumbered;
register rtx tmp_rtx; register rtx tmp_rtx;
if (rtx_first == 0) if (rtx_first == 0)
...@@ -3209,6 +3208,8 @@ print_rtl_with_bb (outf, rtx_first) ...@@ -3209,6 +3208,8 @@ print_rtl_with_bb (outf, rtx_first)
for (tmp_rtx = rtx_first; NULL != tmp_rtx; tmp_rtx = NEXT_INSN (tmp_rtx)) for (tmp_rtx = rtx_first; NULL != tmp_rtx; tmp_rtx = NEXT_INSN (tmp_rtx))
{ {
int did_output;
if ((bb = start[INSN_UID (tmp_rtx)]) >= 0) if ((bb = start[INSN_UID (tmp_rtx)]) >= 0)
{ {
fprintf (outf, ";; Start of basic block %d, registers live:", fprintf (outf, ";; Start of basic block %d, registers live:",
...@@ -3231,13 +3232,12 @@ print_rtl_with_bb (outf, rtx_first) ...@@ -3231,13 +3232,12 @@ print_rtl_with_bb (outf, rtx_first)
else if (in_bb_p[ INSN_UID(tmp_rtx)] == IN_MULTIPLE_BB) else if (in_bb_p[ INSN_UID(tmp_rtx)] == IN_MULTIPLE_BB)
fprintf (outf, ";; Insn is in multiple basic blocks\n"); fprintf (outf, ";; Insn is in multiple basic blocks\n");
print_rtl_single (outf, tmp_rtx); did_output = print_rtl_single (outf, tmp_rtx);
if ((bb = end[INSN_UID (tmp_rtx)]) >= 0) if ((bb = end[INSN_UID (tmp_rtx)]) >= 0)
fprintf (outf, ";; End of basic block %d\n", bb); fprintf (outf, ";; End of basic block %d\n", bb);
if (! flag_dump_unnumbered if (did_output)
|| GET_CODE (tmp_rtx) != NOTE || NOTE_LINE_NUMBER (tmp_rtx) < 0)
putc ('\n', outf); putc ('\n', outf);
} }
} }
......
...@@ -136,7 +136,7 @@ in the following sections. ...@@ -136,7 +136,7 @@ in the following sections.
@item Debugging Options @item Debugging Options
@xref{Debugging Options,,Options for Debugging Your Program or GCC}. @xref{Debugging Options,,Options for Debugging Your Program or GCC}.
@smallexample @smallexample
-a -ax -d@var{letters} -fpretend-float -a -ax -d@var{letters} -fdump-unnumbered -fpretend-float
-fprofile-arcs -ftest-coverage -fprofile-arcs -ftest-coverage
-g -g@var{level} -gcoff -gdwarf -gdwarf-1 -gdwarf-1+ -gdwarf-2 -g -g@var{level} -gcoff -gdwarf -gdwarf-1 -gdwarf-1+ -gdwarf-2
-ggdb -gstabs -gstabs+ -gxcoff -gxcoff+ -ggdb -gstabs -gstabs+ -gxcoff -gxcoff+
...@@ -2033,6 +2033,12 @@ Dump debugging information during parsing, to standard error. ...@@ -2033,6 +2033,12 @@ Dump debugging information during parsing, to standard error.
Annotate the assembler output with miscellaneous debugging information. Annotate the assembler output with miscellaneous debugging information.
@end table @end table
@item -fdump-unnumbered
When doing debugging dumps (see -d option above), suppress instruction
numbers and line number note output. This makes it more feasible to
use diff on debugging dumps for compiler invokations with different
options, in particular with and without -g.
@item -fpretend-float @item -fpretend-float
When running a cross-compiler, pretend that the target machine uses the When running a cross-compiler, pretend that the target machine uses the
same floating point format as the host machine. This causes incorrect same floating point format as the host machine. This causes incorrect
......
...@@ -24,6 +24,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -24,6 +24,7 @@ Boston, MA 02111-1307, USA. */
#include "rtl.h" #include "rtl.h"
#include "bitmap.h" #include "bitmap.h"
#include "real.h" #include "real.h"
#include "flags.h"
/* How to print out a register name. /* How to print out a register name.
...@@ -54,7 +55,11 @@ static int indent; ...@@ -54,7 +55,11 @@ static int indent;
extern char **insn_name_ptr; extern char **insn_name_ptr;
/* Nonzero means suppress output of instruction numbers and line number
notes in debugging dumps.
This must be defined here so that programs like gencodes can be linked. */
int flag_dump_unnumbered = 0; int flag_dump_unnumbered = 0;
/* Print IN_RTX onto OUTFILE. This is the recursive part of printing. */ /* Print IN_RTX onto OUTFILE. This is the recursive part of printing. */
static void static void
...@@ -409,8 +414,9 @@ print_rtl (outf, rtx_first) ...@@ -409,8 +414,9 @@ print_rtl (outf, rtx_first)
} }
/* Like print_rtx, except specify a file. */ /* Like print_rtx, except specify a file. */
/* Return nonzero if we actually printed anything. */
void int
print_rtl_single (outf, x) print_rtl_single (outf, x)
FILE *outf; FILE *outf;
rtx x; rtx x;
...@@ -422,5 +428,7 @@ print_rtl_single (outf, x) ...@@ -422,5 +428,7 @@ print_rtl_single (outf, x)
{ {
print_rtx (x); print_rtx (x);
putc ('\n', outf); putc ('\n', outf);
return 1;
} }
return 0;
} }
...@@ -1344,7 +1344,7 @@ extern void debug_rtx_list PROTO ((rtx, int)); ...@@ -1344,7 +1344,7 @@ extern void debug_rtx_list PROTO ((rtx, int));
extern rtx debug_rtx_find PROTO ((rtx, int)); extern rtx debug_rtx_find PROTO ((rtx, int));
#ifdef BUFSIZ #ifdef BUFSIZ
extern void print_rtl PROTO ((FILE *, rtx)); extern void print_rtl PROTO ((FILE *, rtx));
extern void print_rtl_single PROTO ((FILE *, rtx)); extern int print_rtl_single PROTO ((FILE *, rtx));
extern void print_inline_rtx PROTO ((FILE *, rtx, int)); extern void print_inline_rtx PROTO ((FILE *, rtx, int));
#endif #endif
......
...@@ -725,8 +725,6 @@ int flag_argument_noalias = 0; ...@@ -725,8 +725,6 @@ int flag_argument_noalias = 0;
if alias analysis (in general) is enabled. */ if alias analysis (in general) is enabled. */
int flag_strict_aliasing = 0; int flag_strict_aliasing = 0;
extern int flag_dump_unnumbered;
/* Instrument functions with calls at entry and exit, for profiling. */ /* Instrument functions with calls at entry and exit, for profiling. */
int flag_instrument_function_entry_exit = 0; int flag_instrument_function_entry_exit = 0;
......
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