From: Vladimir Prus Date: Tue, 23 Mar 2010 21:41:55 +0000 (+0000) Subject: Implement creating tracepoints with -break-insert. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6534d786b1826ee9e9742b9ab13b4a614fa648d0;p=binutils-gdb.git Implement creating tracepoints with -break-insert. * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a to mean that tracepoint should be created. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index cbc8eb62295..dbab38897cd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2010-03-24 Vladimir Prus + + Implement creating tracepoints with -break-insert. + + * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a + to mean that tracepoint should be created. + 2010-03-24 Vladimir Prus * breakpoint.c (check_no_tracepoint_commands): Use diff --git a/gdb/mi/mi-cmd-break.c b/gdb/mi/mi-cmd-break.c index 204565c97a3..3fcd85b3344 100644 --- a/gdb/mi/mi-cmd-break.c +++ b/gdb/mi/mi-cmd-break.c @@ -74,6 +74,7 @@ mi_cmd_break_insert (char *command, char **argv, int argc) char *condition = NULL; int pending = 0; int enabled = 1; + int tracepoint = 0; struct cleanup *back_to; struct gdb_exception e; @@ -81,7 +82,8 @@ mi_cmd_break_insert (char *command, char **argv, int argc) enum opt { HARDWARE_OPT, TEMP_OPT, CONDITION_OPT, - IGNORE_COUNT_OPT, THREAD_OPT, PENDING_OPT, DISABLE_OPT + IGNORE_COUNT_OPT, THREAD_OPT, PENDING_OPT, DISABLE_OPT, + TRACEPOINT_OPT, }; static struct mi_opt opts[] = { @@ -92,6 +94,7 @@ mi_cmd_break_insert (char *command, char **argv, int argc) {"p", THREAD_OPT, 1}, {"f", PENDING_OPT, 0}, {"d", DISABLE_OPT, 0}, + {"a", TRACEPOINT_OPT, 0}, { 0, 0, 0 } }; @@ -126,6 +129,10 @@ mi_cmd_break_insert (char *command, char **argv, int argc) break; case DISABLE_OPT: enabled = 0; + break; + case TRACEPOINT_OPT: + tracepoint = 1; + break; } } @@ -148,7 +155,7 @@ mi_cmd_break_insert (char *command, char **argv, int argc) mi_can_breakpoint_notify = 1; create_breakpoint (get_current_arch (), address, condition, thread, 0 /* condition and thread are valid. */, - temp_p, hardware, 0 /* traceflag */, + temp_p, hardware, tracepoint, ignore_count, pending ? AUTO_BOOLEAN_TRUE : AUTO_BOOLEAN_FALSE, NULL, 0, enabled);