diff options
author | Vladimir Prus <vladimir@codesourcery.com> | 2010-03-23 21:48:14 +0000 |
---|---|---|
committer | Vladimir Prus <vladimir@codesourcery.com> | 2010-03-23 21:48:14 +0000 |
commit | 9b4c786c6c9f2599873343b935a46a446ba1c029 (patch) | |
tree | add4a2270f4c5c978a8d4914916ce8afefbc1e58 /gdb | |
parent | f224b49dcd9afdff4cc97bbb6d88dec3b4dfc433 (diff) | |
download | gdb-9b4c786c6c9f2599873343b935a46a446ba1c029.zip gdb-9b4c786c6c9f2599873343b935a46a446ba1c029.tar.gz gdb-9b4c786c6c9f2599873343b935a46a446ba1c029.tar.bz2 |
Implement -break-passcount.
* mi/mi-cmd-break.c (mi_cmd_break_passcount): New.
* mi/mi-cmds.c (mi_cmds): Register -break-passcount.
* mi/mi-cmds.h (mi_cmd_break_passcount): Declare.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 8 | ||||
-rw-r--r-- | gdb/mi/mi-cmd-break.c | 25 | ||||
-rw-r--r-- | gdb/mi/mi-cmds.c | 1 | ||||
-rw-r--r-- | gdb/mi/mi-cmds.h | 1 |
4 files changed, 35 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ebd9041..497e4ee4 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,13 @@ 2010-03-24 Vladimir Prus <vladimir@codesourcery.com> + Implement -break-passcount. + + * mi/mi-cmd-break.c (mi_cmd_break_passcount): New. + * mi/mi-cmds.c (mi_cmds): Register -break-passcount. + * mi/mi-cmds.h (mi_cmd_break_passcount): Declare. + +2010-03-24 Vladimir Prus <vladimir@codesourcery.com> + -trace-start/-trace-end/-trace-status. * mi/mi-cmds.c (mi_cmds): Register -trace-start, -trace-status diff --git a/gdb/mi/mi-cmd-break.c b/gdb/mi/mi-cmd-break.c index 3fcd85b..c5a098e 100644 --- a/gdb/mi/mi-cmd-break.c +++ b/gdb/mi/mi-cmd-break.c @@ -170,6 +170,31 @@ enum wp_type ACCESS_WP }; +void +mi_cmd_break_passcount (char *command, char **argv, int argc) +{ + int n; + int p; + struct breakpoint *t; + + if (argc != 2) + error (_("Usage: tracepoint-number passcount")); + + n = atoi (argv[0]); + p = atoi (argv[1]); + t = get_tracepoint (n); + + if (t) + { + t->pass_count = p; + observer_notify_tracepoint_modified (n); + } + else + { + error (_("Cound not find tracepoint %d"), n); + } +} + /* Insert a watchpoint. The type of watchpoint is specified by the first argument: -break-watch <expr> --> insert a regular wp. diff --git a/gdb/mi/mi-cmds.c b/gdb/mi/mi-cmds.c index c2183fb..6b260fc 100644 --- a/gdb/mi/mi-cmds.c +++ b/gdb/mi/mi-cmds.c @@ -43,6 +43,7 @@ struct mi_cmd mi_cmds[] = { "break-info", { "info break", 1 }, NULL }, { "break-insert", { NULL, 0 }, mi_cmd_break_insert}, { "break-list", { "info break", }, NULL }, + { "break-passcount", { NULL, 0 }, mi_cmd_break_passcount}, { "break-watch", { NULL, 0 }, mi_cmd_break_watch}, { "data-disassemble", { NULL, 0 }, mi_cmd_disassemble}, { "data-evaluate-expression", { NULL, 0 }, mi_cmd_data_evaluate_expression}, diff --git a/gdb/mi/mi-cmds.h b/gdb/mi/mi-cmds.h index 702dd9e..b5ff61f 100644 --- a/gdb/mi/mi-cmds.h +++ b/gdb/mi/mi-cmds.h @@ -39,6 +39,7 @@ typedef void (mi_cmd_argv_ftype) (char *command, char **argv, int argc); extern mi_cmd_argv_ftype mi_cmd_add_inferior; extern mi_cmd_argv_ftype mi_cmd_break_insert; extern mi_cmd_argv_ftype mi_cmd_break_commands; +extern mi_cmd_argv_ftype mi_cmd_break_passcount; extern mi_cmd_argv_ftype mi_cmd_break_watch; extern mi_cmd_argv_ftype mi_cmd_disassemble; extern mi_cmd_argv_ftype mi_cmd_data_evaluate_expression; |