* [PATCH 0/3] dprintf tweaks
@ 2012-12-12 4:13 Yao Qi
2012-12-12 4:13 ` [PATCH 1/3] Test of breakpoint output for dprintf Yao Qi
` (3 more replies)
0 siblings, 4 replies; 12+ messages in thread
From: Yao Qi @ 2012-12-12 4:13 UTC (permalink / raw)
To: gdb-patches
Hi,
I happen to see that a block of code about dprintf in
print_one_breakpoint_location is dead, and patch 2/3 is
to remove the dead block. Patch 1/3 is to test the output
of 'info breakpoints' for dprintf in different dprint-style.
The whole series are tested on x86_linux with native and
gdbserver board file.
Test of breakpoint output for dprintf
Remove dead code for dprintf.
Assert 'printf_line' is non-null.
gdb/breakpoint.c | 49 ++++++++++--------------
gdb/testsuite/gdb.base/dprintf.exp | 13 ++++++
gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp | 2 +-
3 files changed, 34 insertions(+), 30 deletions(-)
--
1.7.7.6
^ permalink raw reply [flat|nested] 12+ messages in thread* [PATCH 1/3] Test of breakpoint output for dprintf 2012-12-12 4:13 [PATCH 0/3] dprintf tweaks Yao Qi @ 2012-12-12 4:13 ` Yao Qi 2013-01-09 20:35 ` Tom Tromey 2012-12-12 4:13 ` [PATCH 3/3] Assert 'printf_line' is non-null Yao Qi ` (2 subsequent siblings) 3 siblings, 1 reply; 12+ messages in thread From: Yao Qi @ 2012-12-12 4:13 UTC (permalink / raw) To: gdb-patches Hi, We don't have a test to check the output of 'info breakpoints' and fields in "=breakpoint-created" notificiation, which are all related to 'print_one_breakpoint_location'. This patch adds tests for dprintf. Is it OK? gdb/testsuite: 2012-12-12 Yao Qi <yao@codesourcery.com> * gdb.base/dprintf.exp: Check the output of 'info breakpoints' for dprintf. * gdb.mi/mi-breakpoint-changed.exp (test_insert_delete_modify): Check the fields in "=breakpoint-created" for dprintf. --- gdb/testsuite/gdb.base/dprintf.exp | 13 +++++++++++++ gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp | 2 +- 2 files changed, 14 insertions(+), 1 deletions(-) diff --git a/gdb/testsuite/gdb.base/dprintf.exp b/gdb/testsuite/gdb.base/dprintf.exp index bd0615b..979ceaf 100644 --- a/gdb/testsuite/gdb.base/dprintf.exp +++ b/gdb/testsuite/gdb.base/dprintf.exp @@ -43,6 +43,13 @@ gdb_test "dprintf foo,\"At foo entry\\n\"" \ gdb_test "dprintf $dp_location1,\"arg=%d, g=%d\\n\", arg, g" \ "Dprintf .*" +gdb_test "info breakpoints" "3\[\t \]+dprintf .* +\[\t \]+printf \"At foo entry\\\\n\". +\[\t \]+continue. +4\[\t \]+dprintf .* +\[\t \]+printf \"arg=%d, g=%d\\\\n\", arg, g. +\[\t \]+continue." "dprintf info 1" + gdb_test "break $bp_location1" \ "Breakpoint .*" @@ -107,6 +114,12 @@ if $target_can_dprintf { gdb_test "continue" "Breakpoint \[0-9\]+, foo .*" "2nd dprintf, agent" + gdb_test "info breakpoints" "3\[\t \]+dprintf .* +\[\t \]+breakpoint already hit 2 times. +\[\t \]+agent-printf \"At foo entry\\\\n\". +4\[\t \]+dprintf .* +\[\t \]+breakpoint already hit 2 times. +\[\t \]+agent-printf \"arg=%d, g=%d\\\\n\", arg, g.*" "info dprintf 2" } gdb_test "set dprintf-style foobar" "Undefined item: \"foobar\"." \ diff --git a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp index ec10032..df6101c 100644 --- a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp +++ b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp @@ -96,7 +96,7 @@ proc test_insert_delete_modify { } { $test set test "dprintf marker, \"arg\" \"" mi_gdb_test $test \ - {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*\}.*\n\^done} \ + {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*,script=\{\"printf \\\\\"arg\\\\\" \\\\\"\",\"continue\"\}.*\}\r\n\^done} \ $test # 2. when modifying condition -- 1.7.7.6 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] Test of breakpoint output for dprintf 2012-12-12 4:13 ` [PATCH 1/3] Test of breakpoint output for dprintf Yao Qi @ 2013-01-09 20:35 ` Tom Tromey 2013-01-10 5:43 ` Joel Brobecker 0 siblings, 1 reply; 12+ messages in thread From: Tom Tromey @ 2013-01-09 20:35 UTC (permalink / raw) To: Yao Qi; +Cc: gdb-patches >>>>> "Yao" == Yao Qi <yao@codesourcery.com> writes: Yao> We don't have a test to check the output of 'info breakpoints' and fields Yao> in "=breakpoint-created" notificiation, which are all related to Yao> 'print_one_breakpoint_location'. This patch adds tests for dprintf. Yao> Is it OK? Yao> +gdb_test "info breakpoints" "3\[\t \]+dprintf .* Yao> +\[\t \]+printf \"At foo entry\\\\n\". Yao> +\[\t \]+continue. Yao> +4\[\t \]+dprintf .* Yao> +\[\t \]+printf \"arg=%d, g=%d\\\\n\", arg, g. Yao> +\[\t \]+continue." "dprintf info 1" I find this style of test pretty hard to read. How about using "\n" instead of a newline? Or writing the string some other way to make it more readable? Or perhaps this is just a personal idiosyncracy of mine. I don't know. If others are ok with this, I don't mind. Otherwise the patch looks fine. Tom ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] Test of breakpoint output for dprintf 2013-01-09 20:35 ` Tom Tromey @ 2013-01-10 5:43 ` Joel Brobecker 2013-01-10 14:53 ` Yao Qi 0 siblings, 1 reply; 12+ messages in thread From: Joel Brobecker @ 2013-01-10 5:43 UTC (permalink / raw) To: Tom Tromey; +Cc: Yao Qi, gdb-patches > Yao> +gdb_test "info breakpoints" "3\[\t \]+dprintf .* > Yao> +\[\t \]+printf \"At foo entry\\\\n\". > Yao> +\[\t \]+continue. > Yao> +4\[\t \]+dprintf .* > Yao> +\[\t \]+printf \"arg=%d, g=%d\\\\n\", arg, g. > Yao> +\[\t \]+continue." "dprintf info 1" > > I find this style of test pretty hard to read. > How about using "\n" instead of a newline? > Or writing the string some other way to make it more readable? FWIW, I sometimes do the following when writing tests: gdb_test "info tasks" \ [join {" +ID +TID P-ID Pri State +Name" \ " +1 .* main_task" \ " +2 .* task_list\\(1\\)" \ "\\* +3 .* task_list\\(2\\)" \ " +4 .* task_list\\(3\\)"} \ "\r\n"] \ "info tasks after hitting breakpoint" I find that having a multi-line expected output shown as multiple lines is easier to understand than one ginormous string... -- Joel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] Test of breakpoint output for dprintf 2013-01-10 5:43 ` Joel Brobecker @ 2013-01-10 14:53 ` Yao Qi 2013-01-10 14:55 ` Tom Tromey 2013-01-11 15:22 ` [obv] Fix new FAIL on 64-bit targets [Re: [PATCH 1/3] Test of breakpoint output for dprintf] Jan Kratochvil 0 siblings, 2 replies; 12+ messages in thread From: Yao Qi @ 2013-01-10 14:53 UTC (permalink / raw) To: Tom Tromey; +Cc: Joel Brobecker, gdb-patches On 01/10/2013 01:43 PM, Joel Brobecker wrote: >> Yao> +gdb_test "info breakpoints" "3\[\t \]+dprintf .* >> Yao> +\[\t \]+printf \"At foo entry\\\\n\". >> Yao> +\[\t \]+continue. >> Yao> +4\[\t \]+dprintf .* >> Yao> +\[\t \]+printf \"arg=%d, g=%d\\\\n\", arg, g. >> Yao> +\[\t \]+continue." "dprintf info 1" >> >> I find this style of test pretty hard to read. >> How about using "\n" instead of a newline? >> Or writing the string some other way to make it more readable? > > FWIW, I sometimes do the following when writing tests: > > gdb_test "info tasks" \ > [join {" +ID +TID P-ID Pri State +Name" \ > " +1 .* main_task" \ > " +2 .* task_list\\(1\\)" \ > "\\* +3 .* task_list\\(2\\)" \ > " +4 .* task_list\\(3\\)"} \ > "\r\n"] \ > "info tasks after hitting breakpoint" > > I find that having a multi-line expected output shown as multiple > lines is easier to understand than one ginormous string... > I agree, and that is why I break pattern into several lines. I use gdb_test_sequence in the new version of patch, which looks better. gdb_test_sequence "info breakpoints" "dprintf info 2" { "\[\r\n\]Num Type Disp Enb Address What" "\[\r\n\]2 breakpoint" "\[\r\n\]\tbreakpoint already hit 2 times" "\[\r\n\]3 dprintf" "\[\r\n\]\tbreakpoint already hit 2 times" "\[\r\n\] agent-printf \"At foo entry\\\\n\"" "\[\r\n\]4 dprintf" "\[\r\n\]\tbreakpoint already hit 2 times" "\[\r\n\] agent-printf \"arg=%d, g=%d\\\\n\", arg, g" } How about the new version? -- Yao (é½å°§) gdb/testsuite: 2013-01-10 Yao Qi <yao@codesourcery.com> * gdb.base/dprintf.exp: Check the output of 'info breakpoints' for dprintf. * gdb.mi/mi-breakpoint-changed.exp (test_insert_delete_modify): Check the fields in "=breakpoint-created" for dprintf. --- gdb/testsuite/gdb.base/dprintf.exp | 22 ++++++++++++++++++++++ gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp | 2 +- 2 files changed, 23 insertions(+), 1 deletions(-) diff --git a/gdb/testsuite/gdb.base/dprintf.exp b/gdb/testsuite/gdb.base/dprintf.exp index f99d75e..fb626fa 100644 --- a/gdb/testsuite/gdb.base/dprintf.exp +++ b/gdb/testsuite/gdb.base/dprintf.exp @@ -43,6 +43,17 @@ gdb_test "dprintf foo,\"At foo entry\\n\"" \ gdb_test "dprintf $dp_location1,\"arg=%d, g=%d\\n\", arg, g" \ "Dprintf .*" +gdb_test_sequence "info breakpoints" "dprintf info 1" { + "\[\r\n\]Num Type Disp Enb Address What" + "\[\r\n\]2 breakpoint" + "\[\r\n\]3 dprintf" + "\[\r\n\] printf \"At foo entry\\\\n\"" + "\[\r\n\] continue" + "\[\r\n\]4 dprintf" + "\[\r\n\] printf \"arg=%d, g=%d\\\\n\", arg, g" + "\[\r\n\] continue" +} + gdb_test "break $bp_location1" \ "Breakpoint .*" @@ -107,6 +118,17 @@ if $target_can_dprintf { gdb_test "continue" "Breakpoint \[0-9\]+, foo .*" "2nd dprintf, agent" + gdb_test_sequence "info breakpoints" "dprintf info 2" { + "\[\r\n\]Num Type Disp Enb Address What" + "\[\r\n\]2 breakpoint" + "\[\r\n\]\tbreakpoint already hit 2 times" + "\[\r\n\]3 dprintf" + "\[\r\n\]\tbreakpoint already hit 2 times" + "\[\r\n\] agent-printf \"At foo entry\\\\n\"" + "\[\r\n\]4 dprintf" + "\[\r\n\]\tbreakpoint already hit 2 times" + "\[\r\n\] agent-printf \"arg=%d, g=%d\\\\n\", arg, g" + } } gdb_test "set dprintf-style foobar" "Undefined item: \"foobar\"." \ diff --git a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp index 7ce314d..fd32698 100644 --- a/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp +++ b/gdb/testsuite/gdb.mi/mi-breakpoint-changed.exp @@ -96,7 +96,7 @@ proc test_insert_delete_modify { } { $test set test "dprintf marker, \"arg\" \"" mi_gdb_test $test \ - {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*\}.*\n\^done} \ + {.*=breakpoint-created,bkpt=\{number="6",type="dprintf".*,script=\{\"printf \\\\\"arg\\\\\" \\\\\"\",\"continue\"\}.*\}\r\n\^done} \ $test # 2. when modifying condition -- 1.7.7.6 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/3] Test of breakpoint output for dprintf 2013-01-10 14:53 ` Yao Qi @ 2013-01-10 14:55 ` Tom Tromey 2013-01-11 15:22 ` [obv] Fix new FAIL on 64-bit targets [Re: [PATCH 1/3] Test of breakpoint output for dprintf] Jan Kratochvil 1 sibling, 0 replies; 12+ messages in thread From: Tom Tromey @ 2013-01-10 14:55 UTC (permalink / raw) To: Yao Qi; +Cc: Joel Brobecker, gdb-patches >>>>> "Yao" == Yao Qi <yao@codesourcery.com> writes: Yao> I agree, and that is why I break pattern into several lines. I use Yao> gdb_test_sequence in the new version of patch, which looks better. Nice, I didn't know about this proc. I like the result. Yao> How about the new version? Thank you for doing this. The patch is ok. Tom ^ permalink raw reply [flat|nested] 12+ messages in thread
* [obv] Fix new FAIL on 64-bit targets [Re: [PATCH 1/3] Test of breakpoint output for dprintf] 2013-01-10 14:53 ` Yao Qi 2013-01-10 14:55 ` Tom Tromey @ 2013-01-11 15:22 ` Jan Kratochvil 1 sibling, 0 replies; 12+ messages in thread From: Jan Kratochvil @ 2013-01-11 15:22 UTC (permalink / raw) To: Yao Qi; +Cc: Tom Tromey, Joel Brobecker, gdb-patches On Thu, 10 Jan 2013 15:53:01 +0100, Yao Qi wrote: > * gdb.base/dprintf.exp: Check the output of 'info breakpoints' > for dprintf. > * gdb.mi/mi-breakpoint-changed.exp (test_insert_delete_modify): > Check the fields in "=breakpoint-created" for dprintf. It has FAIL on 64-bit targets: gdb_expect_list pattern: /[^M ]Num Type Disp Enb Address What/ info breakpoints^M Num Type Disp Enb Address What^M 2 breakpoint keep y 0x0000000000400743 in main at ./gdb.base/dprintf.c:33^M [...] (gdb) FAIL: gdb.base/dprintf.exp: dprintf info 1 (pattern 1) Checked in as obvious. Thanks, Jan http://sourceware.org/ml/gdb-cvs/2013-01/msg00059.html --- src/gdb/testsuite/ChangeLog 2013/01/11 00:31:56 1.3500 +++ src/gdb/testsuite/ChangeLog 2013/01/11 15:21:13 1.3501 @@ -1,3 +1,8 @@ +2013-01-11 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdb.base/dprintf.exp (dprintf info 1): Fix expectation on 64-bit + targets. + 2013-01-11 Yao Qi <yao@codesourcery.com> * gdb.base/dprintf.exp: Check the output of 'info breakpoints' --- src/gdb/testsuite/gdb.base/dprintf.exp 2013/01/11 00:31:58 1.7 +++ src/gdb/testsuite/gdb.base/dprintf.exp 2013/01/11 15:21:14 1.8 @@ -44,7 +44,7 @@ "Dprintf .*" gdb_test_sequence "info breakpoints" "dprintf info 1" { - "\[\r\n\]Num Type Disp Enb Address What" + "\[\r\n\]Num Type Disp Enb Address +What" "\[\r\n\]2 breakpoint" "\[\r\n\]3 dprintf" "\[\r\n\] printf \"At foo entry\\\\n\"" ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 3/3] Assert 'printf_line' is non-null. 2012-12-12 4:13 [PATCH 0/3] dprintf tweaks Yao Qi 2012-12-12 4:13 ` [PATCH 1/3] Test of breakpoint output for dprintf Yao Qi @ 2012-12-12 4:13 ` Yao Qi 2013-01-09 21:43 ` Tom Tromey 2012-12-12 4:13 ` [PATCH 2/3] Remove dead code for dprintf Yao Qi 2013-01-07 14:16 ` [ping]: [PATCH 0/3] dprintf tweaks Yao Qi 3 siblings, 1 reply; 12+ messages in thread From: Yao Qi @ 2012-12-12 4:13 UTC (permalink / raw) To: gdb-patches As we can see the code above, printf_line is always assigned to a non-null string, so this patch removes the check on 'printf_line' and add an assert. On the other hand, 'breakpoint_set_commands' will be called unconditionally, and B->commands is non-null (B is a dprintf). gdb: 2012-12-12 Yao Qi <yao@codesourcery.com> * breakpoint.c (update_dprintf_command_list): Assert that 'printf_line' is non-null. Remove condition check. --- gdb/breakpoint.c | 40 ++++++++++++++++++++-------------------- 1 files changed, 20 insertions(+), 20 deletions(-) diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 65bdc2c..ab056d4 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -8865,30 +8865,30 @@ update_dprintf_command_list (struct breakpoint *b) internal_error (__FILE__, __LINE__, _("Invalid dprintf style.")); + gdb_assert (printf_line != NULL); /* Manufacture a printf/continue sequence. */ - if (printf_line) - { - struct command_line *printf_cmd_line, *cont_cmd_line = NULL; + { + struct command_line *printf_cmd_line, *cont_cmd_line = NULL; - if (strcmp (dprintf_style, dprintf_style_agent) != 0) - { - cont_cmd_line = xmalloc (sizeof (struct command_line)); - cont_cmd_line->control_type = simple_control; - cont_cmd_line->body_count = 0; - cont_cmd_line->body_list = NULL; - cont_cmd_line->next = NULL; - cont_cmd_line->line = xstrdup ("continue"); - } + if (strcmp (dprintf_style, dprintf_style_agent) != 0) + { + cont_cmd_line = xmalloc (sizeof (struct command_line)); + cont_cmd_line->control_type = simple_control; + cont_cmd_line->body_count = 0; + cont_cmd_line->body_list = NULL; + cont_cmd_line->next = NULL; + cont_cmd_line->line = xstrdup ("continue"); + } - printf_cmd_line = xmalloc (sizeof (struct command_line)); - printf_cmd_line->control_type = simple_control; - printf_cmd_line->body_count = 0; - printf_cmd_line->body_list = NULL; - printf_cmd_line->next = cont_cmd_line; - printf_cmd_line->line = printf_line; + printf_cmd_line = xmalloc (sizeof (struct command_line)); + printf_cmd_line->control_type = simple_control; + printf_cmd_line->body_count = 0; + printf_cmd_line->body_list = NULL; + printf_cmd_line->next = cont_cmd_line; + printf_cmd_line->line = printf_line; - breakpoint_set_commands (b, printf_cmd_line); - } + breakpoint_set_commands (b, printf_cmd_line); + } } /* Update all dprintf commands, making their command lists reflect -- 1.7.7.6 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] Assert 'printf_line' is non-null. 2012-12-12 4:13 ` [PATCH 3/3] Assert 'printf_line' is non-null Yao Qi @ 2013-01-09 21:43 ` Tom Tromey 0 siblings, 0 replies; 12+ messages in thread From: Tom Tromey @ 2013-01-09 21:43 UTC (permalink / raw) To: Yao Qi; +Cc: gdb-patches >>>>> "Yao" == Yao Qi <yao@codesourcery.com> writes: Yao> 2012-12-12 Yao Qi <yao@codesourcery.com> Yao> * breakpoint.c (update_dprintf_command_list): Assert that Yao> 'printf_line' is non-null. Remove condition check. Ok. Tom ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/3] Remove dead code for dprintf. 2012-12-12 4:13 [PATCH 0/3] dprintf tweaks Yao Qi 2012-12-12 4:13 ` [PATCH 1/3] Test of breakpoint output for dprintf Yao Qi 2012-12-12 4:13 ` [PATCH 3/3] Assert 'printf_line' is non-null Yao Qi @ 2012-12-12 4:13 ` Yao Qi 2013-01-09 20:45 ` Tom Tromey 2013-01-07 14:16 ` [ping]: [PATCH 0/3] dprintf tweaks Yao Qi 3 siblings, 1 reply; 12+ messages in thread From: Yao Qi @ 2012-12-12 4:13 UTC (permalink / raw) To: gdb-patches Hi, For a given dprintf B, B->commands can never be null, so the condition below is always false. This patch is to remove it as sort of dead code. When creating a dprintf B, the following call chain can be found unconditionally, init_breakpoint_sal --> update_dprintf_command_list (because B->extra_string can't be null) --> breakpoint_set_commands (because PRINT_LINE can't be null) --> set B->commands. gdb: 2012-12-12 Yao Qi <yao@codesourcery.com> * breakpoint.c (print_one_breakpoint_location): Remove dead code. --- gdb/breakpoint.c | 9 --------- 1 files changed, 0 insertions(+), 9 deletions(-) diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index e1da50b..65bdc2c 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -6091,15 +6091,6 @@ print_one_breakpoint_location (struct breakpoint *b, ui_out_text (uiout, " bytes\n"); } } - - if (!part_of_multiple && b->extra_string - && b->type == bp_dprintf && !b->commands) - { - annotate_field (7); - ui_out_text (uiout, "\t(agent printf) "); - ui_out_field_string (uiout, "printf", b->extra_string); - ui_out_text (uiout, "\n"); - } l = b->commands ? b->commands->commands : NULL; if (!part_of_multiple && l) -- 1.7.7.6 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] Remove dead code for dprintf. 2012-12-12 4:13 ` [PATCH 2/3] Remove dead code for dprintf Yao Qi @ 2013-01-09 20:45 ` Tom Tromey 0 siblings, 0 replies; 12+ messages in thread From: Tom Tromey @ 2013-01-09 20:45 UTC (permalink / raw) To: Yao Qi; +Cc: gdb-patches >>>>> "Yao" == Yao Qi <yao@codesourcery.com> writes: Yao> 2012-12-12 Yao Qi <yao@codesourcery.com> Yao> * breakpoint.c (print_one_breakpoint_location): Remove dead code. Looks good to me. Tom ^ permalink raw reply [flat|nested] 12+ messages in thread
* [ping]: [PATCH 0/3] dprintf tweaks 2012-12-12 4:13 [PATCH 0/3] dprintf tweaks Yao Qi ` (2 preceding siblings ...) 2012-12-12 4:13 ` [PATCH 2/3] Remove dead code for dprintf Yao Qi @ 2013-01-07 14:16 ` Yao Qi 3 siblings, 0 replies; 12+ messages in thread From: Yao Qi @ 2013-01-07 14:16 UTC (permalink / raw) To: gdb-patches On 12/12/2012 12:12 PM, Yao Qi wrote: > I happen to see that a block of code about dprintf in > print_one_breakpoint_location is dead, and patch 2/3 is > to remove the dead block. Patch 1/3 is to test the output > of 'info breakpoints' for dprintf in different dprint-style. > > The whole series are tested on x86_linux with native and > gdbserver board file. Ping. http://sourceware.org/ml/gdb-patches/2012-12/msg00373.html -- Yao (é½å°§) ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2013-01-11 15:22 UTC | newest] Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-12-12 4:13 [PATCH 0/3] dprintf tweaks Yao Qi 2012-12-12 4:13 ` [PATCH 1/3] Test of breakpoint output for dprintf Yao Qi 2013-01-09 20:35 ` Tom Tromey 2013-01-10 5:43 ` Joel Brobecker 2013-01-10 14:53 ` Yao Qi 2013-01-10 14:55 ` Tom Tromey 2013-01-11 15:22 ` [obv] Fix new FAIL on 64-bit targets [Re: [PATCH 1/3] Test of breakpoint output for dprintf] Jan Kratochvil 2012-12-12 4:13 ` [PATCH 3/3] Assert 'printf_line' is non-null Yao Qi 2013-01-09 21:43 ` Tom Tromey 2012-12-12 4:13 ` [PATCH 2/3] Remove dead code for dprintf Yao Qi 2013-01-09 20:45 ` Tom Tromey 2013-01-07 14:16 ` [ping]: [PATCH 0/3] dprintf tweaks Yao Qi
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox