X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fdebug%2Fdebugger.h;h=b1310a1eb915f61c5049206756ca5d9c74b4d522;hb=52f5575dc678a5f7f1b3a078dcc46b1cdbaf5182;hp=36ad803c5f333baa7341879c869bf2f6d60f65a9;hpb=a2f05a24f4de618af0d77d35a38c8c8192209d9b;p=libfirm diff --git a/ir/debug/debugger.h b/ir/debug/debugger.h index 36ad803c5..b1310a1eb 100644 --- a/ir/debug/debugger.h +++ b/ir/debug/debugger.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,6 +27,8 @@ #ifndef FIRM_DEBUG_DEBUGGER_H #define FIRM_DEBUG_DEBUGGER_H +#include "firm_types.h" + /** Break into the debugger. */ void firm_debug_break(void); @@ -42,4 +44,43 @@ void firm_break(const char *cmd); /** Creates the debugger tables. */ void firm_init_debugger(void); +/** + * @defgroup external_debug helper functions for debuggers + * + * @{ + */ + +/** + * Returns non-zero, if the debug extension is active + */ +int firm_debug_active(void); + +/** + * Return the content of the debug text buffer. + * + * To be called from the debugger. + */ +const char *firm_debug_text(void); + +/** + * A gdb helper function to print tarvals. + */ +const char *gdb_tarval_helper(void *tv_object); + +/** + * A gdb helper to print all (new-style-) out edges of a node + */ +const char *gdb_out_edge_helper(const ir_node *node); + +/** + * High level function to use from debugger interface + * + * See show_commands() for supported commands. + */ +void firm_debug(const char *cmd); + +/** + * @} + */ + #endif