diff options
author | Neil Booth <neil@daikokuya.demon.co.uk> | 2001-07-17 19:47:58 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2001-07-17 19:47:58 +0000 |
commit | 653e276c6536663cda57bda038a9df4e64adb96f (patch) | |
tree | 9abd13faa762d57f769d9f43c78300834738874b /gcc/debug.h | |
parent | 91a18fe0e6d96ec2cdad7d4f12ada3b4f5ed11e6 (diff) | |
download | gcc-653e276c6536663cda57bda038a9df4e64adb96f.zip gcc-653e276c6536663cda57bda038a9df4e64adb96f.tar.gz gcc-653e276c6536663cda57bda038a9df4e64adb96f.tar.bz2 |
dbxout.c (dbxout_really_begin_function): Rename to dbxout_begin_function.
* dbxout.c (dbxout_really_begin_function): Rename to
dbxout_begin_function.
(dbx_debug_hooks, xcoff_debug_hooks): Update.
(dbxout_begin_function): Remove.
(dbxout_function): Update.
(dbxout_source_line): Update prototype.
* dbxout.h (dbxout_begin_function): Remove.
* debug.c (do_nothing_debug_hooks): Update.
(debug_nothing_tree): Update.
(debug_nothing_charstar_rtx): Remove.
* debug.h (union tree_node): Declare.
(struct rtx_def): Remove.
(gcc_debug_hooks): New hooks begin_prologue, end_prologue,
begin_function. Change source_line prototype.
(debug_nothing_tree): New.
(debug_nothing_charstar_rtx): Delete.
(dwarf2out_begin_prologue): Moved from ...
* tree.h: ... here.
* dwarf2out.c (dwarf2_debug_hooks): Update.
(dwarf2out_begin_prologue): Update prototype. If genuine dwarf2
debug info, call dwarf2out_source_line.
(dwarf2out_souce_line): Update prototype.
* dwarfout.c (dwarfout_begin_function): Rename dwarfout_end_prologue.
Change prototype, make static.
(dwarfout_source_line): Update prototype.
(dwarf_debug_hooks): Update.
* dwarfout.h (dwarfout_begin_function): Remove.
* final.c (final_start_function, final_scan_insn): Use appropriate
debug hooks, update to use notice_source_line.
(output_source_line): Rename notice_source_line. Don't call the
source_line debug hook.
* sdbout.c (sdbout_begin_function): Rename sdbout_begin_prologue,
make static, update prototype.
(sdbout_mark_begin_function): Rename sdbout_begin_function, update
prototype.
(sdbout_end_prologue): New.
(sdbout_source_line): Update prototype.
(sdbout_debug_hooks): Update.
(sdbout_symbol): Remove unused var.
* sdbout.h (sdbout_begin_function, sdbout_mark_begin_function):
Delete.
* varasm.c: Include debug.h.
(assemble_start_function): Use begin_function debug_hook.
* xcoffout.c (xcoffout_begin_prologue): Rename xcoffout_begin_function,
update with prototype.
(xcoffout_source_line): Update prototype.
* xcoffout.h (xcoffout_begin_prologue): Rename xcoffout_begin_function,
update prototype.
(xcoffout_source_line): Update prototype.
From-SVN: r44087
Diffstat (limited to 'gcc/debug.h')
-rw-r--r-- | gcc/debug.h | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/gcc/debug.h b/gcc/debug.h index c2e31a8..56b2e03 100644 --- a/gcc/debug.h +++ b/gcc/debug.h @@ -18,7 +18,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef GCC_DEBUG_H #define GCC_DEBUG_H -struct rtx_def; +union tree_node; /* This structure contains hooks for the debug information output functions, accessed through the global instance debug_hooks set in @@ -53,13 +53,24 @@ struct gcc_debug_hooks /* Record the end of a block. Arguments as for begin_block. */ void (* end_block) PARAMS ((unsigned int line, unsigned int n)); - /* Record a line based on NOTE. Obtain the line number with - NOTE_LINE_NUMBER (note). */ - void (* source_line) PARAMS ((const char *filename, struct rtx_def *note)); + /* Record a source file location at (FILE, LINE). */ + void (* source_line) PARAMS ((unsigned int line, const char *file)); + + /* Called at start of prologue code. LINE is the first line in the + function. This has been given the same prototype as source_line, + so that the source_line hook can be substituted if appropriate. */ + void (* begin_prologue) PARAMS ((unsigned int line, const char *file)); + + /* Called at end of prologue code. LINE is the first line in the + function. */ + void (* end_prologue) PARAMS ((unsigned int line)); /* Record end of epilogue code. */ void (* end_epilogue) PARAMS ((void)); + /* Called at start of function DECL, before it is declared. */ + void (* begin_function) PARAMS ((union tree_node *decl)); + /* Record end of function. LINE is highest line number in function. */ void (* end_function) PARAMS ((unsigned int line)); }; @@ -77,8 +88,8 @@ extern void debug_nothing_int PARAMS ((unsigned int)); extern void debug_nothing_int_int PARAMS ((unsigned int, unsigned int)); -extern void debug_nothing_charstar_rtx - PARAMS ((const char *, struct rtx_def *)); +extern void debug_nothing_tree + PARAMS ((union tree_node *)); /* Hooks for various debug formats. */ extern struct gcc_debug_hooks do_nothing_debug_hooks; @@ -90,6 +101,10 @@ extern struct gcc_debug_hooks dwarf2_debug_hooks; /* Dwarf2 frame information. */ +/* FILE is NULL iff being called for frame information for non-dwarf + debug output. */ +extern void dwarf2out_begin_prologue + PARAMS ((unsigned int, const char * file)); extern void dwarf2out_end_epilogue PARAMS ((void)); |