summaryrefslogtreecommitdiff
path: root/gcc/dwarfout.c
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2001-07-15 08:34:46 +0000
committerNeil Booth <neil@gcc.gnu.org>2001-07-15 08:34:46 +0000
commite2a12aca42db7657d00b43ef76606e208159273d (patch)
tree3f39c7aa98569361a789583a5906c27e2596de19 /gcc/dwarfout.c
parentbe7b80f42726389bd25888ede4f13d276bb12ef0 (diff)
downloadgcc-e2a12aca42db7657d00b43ef76606e208159273d.tar.gz
dbxout.c (dbxout_source_line): Make static, update prototype.
* dbxout.c (dbxout_source_line): Make static, update prototype. (dbx_debug_hooks, xcoff_debug_hooks): Add new hooks. (dbxout_init, dbxout_finish, dbxout_source_line, dbxout_begin_block, dbxout_end_block): Update for new prototypes. * dbxout.h (dbxout_source_line): Delete. * debug.c (debug_nothing_file, debug_nothing_file_int, debug_nothing_file_charstar_rtx): New. (do_nothing_debug_hooks): Update. (debug_nothing_void, debug_nothing_charstar_rtx, dwarf2out_end_epilogue): New. (debug_nothing_file_charstar, debug_nothing_file_int_int): Rename. * debug.h (struct rtx_def): Declare. (gcc_debug_hooks): New hooks source_line, end_epilogue and end_function. (debug_nothing_void, debug_nothing_charstar_rtx, dwarf2out_end_epilogue): New. (debug_nothing_file_charstar, debug_nothing_file_int_int): Rename. * dwarf2out.c (dwarf2out_source_line): Make static, update prototype. (dwarf2_debug_hooks): Update. (dwarf2out_init, dwarf2out_finish, dwarf2out_source_line, dwarf2out_begin_block, dwarf2out_end_block): Update for new prototypes. * dwarf2out.h (dwarf2out_source_line): Remove. * dwarfout.c (dwarfout_end_epilogue, dwarfout_end_function): Make static, update prototype. (dwarfout_init, dwarfout_finish, dwarfout_source_line, dwarfout_begin_block, dwarfout_end_block): Update for new prototypes. (dwarf_debug_hooks): Update. * dwarfout.h (dwarfout_end_epilogue, dwarfout_source_line, dwarfout_end_function): Remove. * final.c (profile_function): Use debug hooks for ending functions and epilogues. (output_source_line, final_end_function): Update prototype, use debug hooks. (final_start_function, final_scan_insn): Update. * output.h (sdb_begin_function_line): Remove. (final_end_function): Update prototype. * sdbout.c (sdb_begin_function_line): Make static. (PUT_SDB_EPILOGUE_END): Move to sdbout_end_epilogue. (sdbout_source_line): New. (sdbout_end_epilogue, sdbout_end_function): Make static, update prototypes. (sdb_debug_hooks): Update. (sdbout_init, sdbout_source_line, sdbout_begin_block, sdbout_end_block): Update for new prototypes. * sdbout.h (sdbout_end_epilogue, sdbout_end_function): Remove. * toplev.c (compile_file, rest_of_compilation): Update. * tree.h (dwarf2out_end_epilogue): Move to debug.h. * xcoffout.c (xcoffout_source_line, xcoffout_begin_block, xcoffout_end_block, xcoffout_end_epilogue, xcoffout_end_function): Update for prototype changes. * xcoffout.h (xcoffout_source_line, xcoffout_begin_block, xcoffout_end_block, xcoffout_end_epilogue): Update prototypes. From-SVN: r44017
Diffstat (limited to 'gcc/dwarfout.c')
-rw-r--r--gcc/dwarfout.c45
1 files changed, 25 insertions, 20 deletions
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c
index 3263f107c5f..f6e984e0ee8 100644
--- a/gcc/dwarfout.c
+++ b/gcc/dwarfout.c
@@ -787,16 +787,19 @@ static int in_class;
/* Forward declarations for functions defined in this file. */
-static void dwarfout_init PARAMS ((FILE *, const char *));
-static void dwarfout_finish PARAMS ((FILE *, const char *));
+static void dwarfout_init PARAMS ((const char *));
+static void dwarfout_finish PARAMS ((const char *));
static void dwarfout_define PARAMS ((unsigned int, const char *));
static void dwarfout_undef PARAMS ((unsigned int, const char *));
static void dwarfout_start_source_file PARAMS ((unsigned, const char *));
static void dwarfout_start_source_file_check PARAMS ((unsigned, const char *));
static void dwarfout_end_source_file PARAMS ((unsigned));
static void dwarfout_end_source_file_check PARAMS ((unsigned));
-static void dwarfout_begin_block PARAMS ((FILE *, unsigned, unsigned));
-static void dwarfout_end_block PARAMS ((FILE *, unsigned, unsigned));
+static void dwarfout_begin_block PARAMS ((unsigned, unsigned));
+static void dwarfout_end_block PARAMS ((unsigned, unsigned));
+static void dwarfout_end_epilogue PARAMS ((void));
+static void dwarfout_source_line PARAMS (( const char *, rtx));
+static void dwarfout_end_function PARAMS ((unsigned int));
static const char *dwarf_tag_name PARAMS ((unsigned));
static const char *dwarf_attr_name PARAMS ((unsigned));
static const char *dwarf_stack_op_name PARAMS ((unsigned));
@@ -1379,7 +1382,10 @@ struct gcc_debug_hooks dwarf_debug_hooks =
dwarfout_start_source_file_check,
dwarfout_end_source_file_check,
dwarfout_begin_block,
- dwarfout_end_block
+ dwarfout_end_block,
+ dwarfout_source_line,
+ dwarfout_end_epilogue,
+ dwarfout_end_function
};
/************************ general utility functions **************************/
@@ -5838,8 +5844,7 @@ dwarfout_file_scope_decl (decl, set_finalizing)
for a lexical block. */
static void
-dwarfout_begin_block (file, line, blocknum)
- FILE *file ATTRIBUTE_UNUSED;
+dwarfout_begin_block (line, blocknum)
unsigned int line ATTRIBUTE_UNUSED;
unsigned int blocknum;
{
@@ -5854,8 +5859,7 @@ dwarfout_begin_block (file, line, blocknum)
for a lexical block. */
static void
-dwarfout_end_block (file, line, blocknum)
- FILE *file ATTRIBUTE_UNUSED;
+dwarfout_end_block (line, blocknum)
unsigned int line ATTRIBUTE_UNUSED;
unsigned int blocknum;
{
@@ -5885,8 +5889,9 @@ dwarfout_begin_function ()
/* Output a marker (i.e. a label) for the point in the generated code where
the real body of the function ends (just before the epilogue code). */
-void
-dwarfout_end_function ()
+static void
+dwarfout_end_function (line)
+ unsigned int line ATTRIBUTE_UNUSED;
{
char label[MAX_ARTIFICIAL_LABEL_BYTES];
@@ -5901,7 +5906,7 @@ dwarfout_end_function ()
for a function definition. This gets called *after* the epilogue code
has been generated. */
-void
+static void
dwarfout_end_epilogue ()
{
char label[MAX_ARTIFICIAL_LABEL_BYTES];
@@ -6053,11 +6058,13 @@ generate_srcinfo_entry (line_entry_num, files_entry_num)
ASM_OUTPUT_POP_SECTION (asm_out_file);
}
-void
-dwarfout_line (filename, line)
- register const char *filename;
- register unsigned line;
+static void
+dwarfout_source_line (filename, note)
+ const char *filename;
+ rtx note;
{
+ unsigned int line = NOTE_LINE_NUMBER (note);
+
if (debug_info_level >= DINFO_LEVEL_NORMAL
/* We can't emit line number info for functions in separate sections,
because the assembler can't subtract labels in different sections. */
@@ -6215,8 +6222,7 @@ dwarfout_undef (lineno, buffer)
/* Set up for Dwarf output at the start of compilation. */
static void
-dwarfout_init (asm_out_file, main_input_filename)
- register FILE *asm_out_file;
+dwarfout_init (main_input_filename)
register const char *main_input_filename;
{
/* Remember the name of the primary input file. */
@@ -6405,8 +6411,7 @@ dwarfout_init (asm_out_file, main_input_filename)
/* Output stuff that dwarf requires at the end of every file. */
static void
-dwarfout_finish (asm_out_file, main_input_filename)
- register FILE *asm_out_file;
+dwarfout_finish (main_input_filename)
register const char *main_input_filename ATTRIBUTE_UNUSED;
{
char label[MAX_ARTIFICIAL_LABEL_BYTES];