2 * This file is part of libFirm.
3 * Copyright (C) 2012 University of Karlsruhe.
8 * @brief Helper function for integrated debug support
12 #ifndef FIRM_DEBUG_DEBUGGER_H
13 #define FIRM_DEBUG_DEBUGGER_H
15 #include "firm_types.h"
17 /** Break into the debugger. */
18 void firm_debug_break(void);
21 * High level function to use from debugger interface
24 * .create nr break if node nr was created
25 * .help list all commands
27 void firm_break(const char *cmd);
29 /** Creates the debugger tables. */
30 void firm_init_debugger(void);
32 void firm_finish_debugger(void);
35 * @defgroup external_debug helper functions for debuggers
41 * Returns non-zero, if the debug extension is active
43 int firm_debug_active(void);
46 * Return the content of the debug text buffer.
48 * To be called from the debugger.
50 const char *firm_debug_text(void);
53 * A gdb helper function to print tarvals.
55 const char *gdb_tarval_helper(void *tv_object);
58 * A gdb helper to print all (new-style-) out edges of a node
60 const char *gdb_out_edge_helper(const ir_node *node);
63 * High level function to use from debugger interface
65 * See show_commands() for supported commands.
67 void firm_debug(const char *cmd);