X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbe_dbgout.h;h=143ac1657963886afd0497cffeb71019be63d2aa;hb=d02e1f6b1f966030f9ec9006dedac7476fc75424;hp=609b4bd85293c73d0ca436adecbbaefed031b1b4;hpb=d6768d8d4427959eb045aafb1d15bd189beaa5dd;p=libfirm diff --git a/ir/be/be_dbgout.h b/ir/be/be_dbgout.h index 609b4bd85..143ac1657 100644 --- a/ir/be/be_dbgout.h +++ b/ir/be/be_dbgout.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved. + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. * * This file is part of libFirm. * @@ -27,86 +27,32 @@ #ifndef FIRM_BE_BE_DBGOUT_H #define FIRM_BE_BE_DBGOUT_H -#include "obst.h" -#include "beabi_t.h" +#include "beabi.h" -typedef struct dbg_handle dbg_handle; - -/** - * Debug operations. - */ -typedef struct debug_ops { - /** close the stabs handler. */ - void (*close)(dbg_handle *handle); - - /** start a new source object (compilation unit) */ - void (*so)(dbg_handle *handle, const char *filename); - - /** start an include file */ - void (*include_begin)(dbg_handle *handle, const char *filename); - - /** end an include file */ - void (*include_end)(dbg_handle *handle); - - /** Main Program */ - void (*main_program)(dbg_handle *handle); - - /** dumps the stabs for a method begin */ - void (*method_begin)(dbg_handle *handle, ir_entity *ent, const be_stack_layout_t *layout); - - /** dumps the stabs for a method end */ - void (*method_end)(dbg_handle *handle); - - /** dumps a line number */ - void (*line)(dbg_handle *handle, unsigned lineno, const char *address); - - /** dump types */ - void (*types)(dbg_handle *handle); - - /** dump a variable in the global type */ - void (*variable)(dbg_handle *h, struct obstack *obst, ir_entity *ent); - -} debug_ops; - -/** The base class of all debug implementations. */ -struct dbg_handle { - const debug_ops *ops; -}; +/* initialize and open debug handle */ +void be_dbg_open(void); /** close a debug handler. */ -void be_dbg_close(dbg_handle *handle); +void be_dbg_close(void); /** start a new source object (compilation unit) */ -void be_dbg_so(dbg_handle *handle, const char *filename); - -/** start an include file */ -void be_dbg_include_begin(dbg_handle *handle, const char *filename); - -/** end an include file */ -void be_dbg_include_end(dbg_handle *handle); +void be_dbg_so(const char *filename); /** Main program */ -void be_dbg_main_program(dbg_handle *handle); +void be_dbg_main_program(void); /** debug for a method begin */ -void be_dbg_method_begin(dbg_handle *handle, ir_entity *ent, const be_stack_layout_t *layout); +void be_dbg_method_begin(const ir_entity *ent); /** debug for a method end */ -void be_dbg_method_end(dbg_handle *handle); - -/** debug for line number */ -void be_dbg_line(dbg_handle *handle, unsigned lineno, const char *address); +void be_dbg_method_end(void); /** dump types */ -void be_dbg_types(dbg_handle *handle); +void be_dbg_types(void); /** dump a variable in the global type */ -void be_dbg_variable(dbg_handle *handle, struct obstack *obst, ir_entity *ent); - -/** Opens the NULL handler: no debug support. */ -dbg_handle *be_nulldbg_open(void); +void be_dbg_variable(const ir_entity *ent); -/** Opens a stabs handler. */ -dbg_handle *be_stabs_open(FILE *out); +void be_dbg_set_dbg_info(dbg_info *dbgi); -#endif /* FIRM_BE_BE_DBGOUT_H */ +#endif