X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbe_dbgout.h;h=143ac1657963886afd0497cffeb71019be63d2aa;hb=3a71d573f670efc501c50b6f82c4e7e971ac249a;hp=17781fb025c3f4f24b1df586b9f6f2b97828e87b;hpb=a02845e8e712b9597b9b322df8b0019b4634f9a1;p=libfirm diff --git a/ir/be/be_dbgout.h b/ir/be/be_dbgout.h index 17781fb02..143ac1657 100644 --- a/ir/be/be_dbgout.h +++ b/ir/be/be_dbgout.h @@ -1,49 +1,58 @@ -#ifndef __BE_DBGOUT_H__ -#define __BE_DBGOUT_H__ -/** - * Debug output support. +/* + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * + * This file is part of libFirm. + * + * This file may be distributed and/or modified under the terms of the + * GNU General Public License version 2 as published by the Free Software + * Foundation and appearing in the file LICENSE.GPL included in the + * packaging of this file. + * + * Licensees holding valid libFirm Professional Edition licenses may use + * this file in accordance with the libFirm Commercial License. + * Agreement provided with the Software. * - * @author Michael Beck - * @date 11.9.2006 - * @cvsid $Id$ + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. */ -typedef struct dbg_handle dbg_handle; /** - * Debug operations. + * @file + * @brief Debug output support. + * @author Michael Beck + * @date 11.9.2006 + * @version $Id$ */ -typedef struct debug_ops { - /** close the stabs handler. */ - void (*close)(dbg_handle *h); +#ifndef FIRM_BE_BE_DBGOUT_H +#define FIRM_BE_BE_DBGOUT_H - /** begin a new file */ - void (*begin)(dbg_handle *handle, const char *filename); +#include "beabi.h" - /** prints the stabs for a function */ - void (*method)(dbg_handle *h, entity *ent); +/* initialize and open debug handle */ +void be_dbg_open(void); - /** prints a line number */ - void (*line)(dbg_handle *h, unsigned lineno, const char *address); -} debug_ops; +/** close a debug handler. */ +void be_dbg_close(void); -/** The base class of all debug implementations. */ -struct dbg_handle { - const debug_ops *ops; -}; +/** start a new source object (compilation unit) */ +void be_dbg_so(const char *filename); -/** close a debug handler. */ -void be_dbg_close(dbg_handle *h); +/** Main program */ +void be_dbg_main_program(void); + +/** debug for a method begin */ +void be_dbg_method_begin(const ir_entity *ent); -/** begin a new file */ -void be_dbg_begin(dbg_handle *handle, const char *filename); +/** debug for a method end */ +void be_dbg_method_end(void); -/** debug for a function */ -void be_dbg_method(dbg_handle *h, entity *ent); +/** dump types */ +void be_dbg_types(void); -/** debug for line number */ -void be_dbg_line(dbg_handle *h, unsigned lineno, const char *address); +/** dump a variable in the global type */ +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 /* __BE_DBGOUT_H__ */ +#endif