fix a few -pedantic warnings
[libfirm] / ir / debug / debugger.h
1 /*
2  * This file is part of libFirm.
3  * Copyright (C) 2012 University of Karlsruhe.
4  */
5
6 /**
7  * @file
8  * @brief     Helper function for integrated debug support
9  * @author    Michael Beck
10  * @date      2005
11  */
12 #ifndef FIRM_DEBUG_DEBUGGER_H
13 #define FIRM_DEBUG_DEBUGGER_H
14
15 #include "firm_types.h"
16
17 /** Break into the debugger. */
18 void firm_debug_break(void);
19
20 /**
21  * High level function to use from debugger interface
22  *
23  * Supported commands:
24  *  .create nr    break if node nr was created
25  *  .help         list all commands
26  */
27 void firm_break(const char *cmd);
28
29 /** Creates the debugger tables. */
30 void firm_init_debugger(void);
31
32 void firm_finish_debugger(void);
33
34 /**
35  * @defgroup external_debug    helper functions for debuggers
36  *
37  * @{
38  */
39
40 /**
41  * Returns non-zero, if the debug extension is active
42  */
43 int firm_debug_active(void);
44
45 /**
46  * Return the content of the debug text buffer.
47  *
48  * To be called from the debugger.
49  */
50 const char *firm_debug_text(void);
51
52 /**
53  * A gdb helper function to print tarvals.
54  */
55 const char *gdb_tarval_helper(void *tv_object);
56
57 /**
58  * A gdb helper to print all (new-style-) out edges of a node
59  */
60 const char *gdb_out_edge_helper(const ir_node *node);
61
62 /**
63  * High level function to use from debugger interface
64  *
65  * See show_commands() for supported commands.
66  */
67 void firm_debug(const char *cmd);
68
69 /**
70  * @}
71  */
72
73 #endif