From f7e97bb3d85f1ce6b829200abebf0a4a3e85c5a5 Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Thu, 4 Jan 2007 18:58:03 +0000 Subject: [PATCH] Simplify usage of mi_continue_to. * lib/mi-support.exp (mi_runto_helper): Renamed from mi_runto, added new parameter 'run_or_continue'. (mi_runto): Use mi_runto_helper. (mi_continue_to): Accept just function name as parameter. Use mi_runto_helper. * gdb.mi/mi-var-cmd.exp: Adjust to changes. * gdb.mi/mi2-var-cmd.exp: Likewise. --- gdb/ChangeLog | 11 +++++++++++ gdb/testsuite/gdb.mi/mi-var-cmd.exp | 19 +++---------------- gdb/testsuite/gdb.mi/mi2-var-cmd.exp | 19 +++---------------- gdb/testsuite/lib/mi-support.exp | 16 +++++++++++----- 4 files changed, 28 insertions(+), 37 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1cbf335..0e15567 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +2007-01-04 Vladimir Prus + + Simplify usage of mi_continue_to. + * lib/mi-support.exp (mi_runto_helper): Renamed + from mi_runto, added new parameter 'run_or_continue'. + (mi_runto): Use mi_runto_helper. + (mi_continue_to): Accept just function name as parameter. + Use mi_runto_helper. + * gdb.mi/mi-var-cmd.exp: Adjust to changes. + * gdb.mi/mi2-var-cmd.exp: Likewise. + 2007-01-04 Jim Blandy * glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup', diff --git a/gdb/testsuite/gdb.mi/mi-var-cmd.exp b/gdb/testsuite/gdb.mi/mi-var-cmd.exp index 7efb438..d7cd4e9 100644 --- a/gdb/testsuite/gdb.mi/mi-var-cmd.exp +++ b/gdb/testsuite/gdb.mi/mi-var-cmd.exp @@ -425,12 +425,7 @@ mi_gdb_test "-var-update *" \ set line_subroutine1_body [gdb_get_line_number "global_simple.integer = i + 3;"] -mi_gdb_test "-break-insert subroutine1" \ - "\\^done,bkpt=\{number=\"2\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"subroutine1\",file=\".*var-cmd.c\",line=\"$line_subroutine1_body\",times=\"0\"\}" \ - "break-insert subroutine1" -mi_continue_to "2" "subroutine1" \ - "\{name=\"i\",value=\"4321\"\},\{name=\"l\",value=\"$hex\"\}" \ - "var-cmd.c" $line_subroutine1_body "continue to subroutine1" +mi_continue_to subroutine1 # Test: c_variable-2.10 # Desc: create variable for locals i,l in subroutine1 @@ -572,21 +567,13 @@ mi_gdb_test "-var-delete l" \ # Test whether we can follow the name of a variable through multiple # stack frames. -mi_gdb_test "-break-insert do_special_tests" \ - {\^done,bkpt=.*} \ - "set breakpoint at do_special_tests" - -mi_continue_to {.*} do_special_tests {.*} {.*var-cmd.c} {.*} {stop in do_special_tests} +mi_continue_to do_special_tests mi_gdb_test "-var-create selected_a @ a" \ {\^done,name="selected_a",numchild="0",type="int"} \ "create selected_a" -mi_gdb_test "-break-insert incr_a" \ - {\^done,bkpt=.*} \ - "set breakpoint at incr_a" - -mi_continue_to {.*} incr_a {.*} {.*var-cmd.c} {.*} {stop in incr_a} +mi_continue_to incr_a mi_gdb_test "-var-update selected_a" \ "\\^done,changelist=\\\[\{name=\"selected_a\",in_scope=\"true\",new_type=\"char\",new_num_children=\"0\"\}\\\]" \ diff --git a/gdb/testsuite/gdb.mi/mi2-var-cmd.exp b/gdb/testsuite/gdb.mi/mi2-var-cmd.exp index 291f2d4..79aeb08 100644 --- a/gdb/testsuite/gdb.mi/mi2-var-cmd.exp +++ b/gdb/testsuite/gdb.mi/mi2-var-cmd.exp @@ -388,12 +388,7 @@ mi_gdb_test "-var-assign lsimple.integer 333" \ set line_subroutine1_body [gdb_get_line_number "global_simple.integer = i + 3;"] -mi_gdb_test "-break-insert subroutine1" \ - "\\^done,bkpt=\{number=\"2\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"subroutine1\",file=\".*var-cmd.c\",line=\"$line_subroutine1_body\",times=\"0\"\}" \ - "break-insert subroutine1" -mi_continue_to "2" "subroutine1" \ - "\{name=\"i\",value=\"4321\"\},\{name=\"l\",value=\"$hex\"\}" \ - "var-cmd.c" $line_subroutine1_body "continue to subroutine1" +mi_continue_to "subroutine1" # Test: c_variable-2.10 # Desc: create variable for locals i,l in subroutine1 @@ -535,21 +530,13 @@ mi_gdb_test "-var-delete l" \ # Test whether we can follow the name of a variable through multiple # stack frames. -mi_gdb_test "-break-insert do_special_tests" \ - {\^done,bkpt=.*} \ - "set breakpoint at do_special_tests" - -mi_continue_to {.*} do_special_tests {.*} {.*var-cmd.c} {.*} {stop in do_special_tests} +mi_continue_to do_special_tests mi_gdb_test "-var-create selected_a @ a" \ {\^done,name="selected_a",numchild="0",type="int"} \ "create selected_a" -mi_gdb_test "-break-insert incr_a" \ - {\^done,bkpt=.*} \ - "set breakpoint at incr_a" - -mi_continue_to {.*} incr_a {.*} {.*var-cmd.c} {.*} {stop in incr_a} +mi_continue_to incr_a mi_gdb_test "-var-update selected_a" \ "\\^done,changelist=\\\[\{name=\"selected_a\",in_scope=\"true\",new_type=\"char\",new_num_children=\"0\"\}\\\]" \ diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp index 75f4039..975c842 100644 --- a/gdb/testsuite/lib/mi-support.exp +++ b/gdb/testsuite/lib/mi-support.exp @@ -858,7 +858,7 @@ proc mi_run_to_main { } { # -1 if test suppressed, failed, timedout # 0 if test passed -proc mi_runto {func} { +proc mi_runto_helper {func run_or_continue} { global suppress_flag if { $suppress_flag } { return -1 @@ -877,7 +877,11 @@ proc mi_runto {func} { set bkptno {[0-9]+} } - mi_run_cmd + if {$run_or_continue == "run"} { + mi_run_cmd + } else { + send_gdb "000-exec-continue\n" + } gdb_expect { -re ".*000\\*stopped,thread-id=\"$decimal\",frame=\{addr=\"$hex\",func=\"$func\",args=\(\\\[.*\\\]\|\{.*\}\),file=\".*\",fullname=\"${fullname_syntax}.*\",line=\"\[0-9\]*\"\}\r\n$mi_gdb_prompt$" { pass "$test" @@ -893,6 +897,9 @@ proc mi_runto {func} { } } +proc mi_runto {func} { + mi_runto_helper $func "run" +} # Next to the next statement # For return values, see mi_execute_to_helper @@ -967,9 +974,8 @@ proc mi_finish_to { func args file line result ret test } { "$test" } -proc mi_continue_to { bkptno func args file line test } { - mi_execute_to "exec-continue" "breakpoint-hit\",bkptno=\"$bkptno" \ - "$func" "$args" "$file" "$line" "" "$test" +proc mi_continue_to {func} { + mi_runto_helper $func "continue" } proc mi0_execute_to { cmd reason func args file line extra test } { -- 2.7.4