From 924437bc13e073e7d2b1e705dd4fb60001c1d49b Mon Sep 17 00:00:00 2001 From: Pedro Alves Date: Tue, 13 Dec 2011 17:22:11 +0000 Subject: [PATCH] gdb/doc/ 2011-12-13 Pedro Alves * gdb.texinfo (Implementing a Remote Stub): Explain that you should transfer control to the stub in the startup code instead of in main. Mention the need to get past the initial breakpoint. gdb/testsuite/ 2011-12-13 Pedro Alves Doug Evans * lib/gdb.exp (gdb_run_cmd, runto_main, gdb_compile) (clean_restart): Remove references to the gdb_stub target board variable. (gdb_step_for_stub): Delete. * gdb.base/annota1.exp: Remove all references to [target_info exists gdb_stub], gdb_step_for_stub and usestubs. * gdb.base/annota3.exp: Ditto. * gdb.base/async.exp: Ditto. * gdb.base/break.exp: Ditto. * gdb.base/code-expr.exp: Ditto. * gdb.base/commands.exp: Ditto. * gdb.base/completion.exp: Ditto. * gdb.base/condbreak.exp: Ditto. * gdb.base/consecutive.exp: Ditto. * gdb.base/cvexpr.exp: Ditto. * gdb.base/define.exp: Ditto. * gdb.base/display.exp: Ditto. * gdb.base/ena-dis-br.exp: Ditto. * gdb.base/environ.exp: Ditto. * gdb.base/gnu-ifunc.exp: Ditto. * gdb.base/maint.exp: Ditto. * gdb.base/pending.exp: Ditto. * gdb.base/sect-cmd.exp: Ditto. * gdb.base/sepdebug.exp: Ditto. * gdb.base/unload.exp: Ditto. * gdb.base/watchpoint-solib.exp: Ditto. * gdb.cp/annota2.exp: Ditto. * gdb.cp/annota3.exp: Ditto. * gdb.dwarf2/dw2-inline-param.exp: Ditto. * gdb.hp/gdb.compat/xdb1.exp: Ditto. * gdb.mi/mi-pending.exp: Ditto. * gdb.trace/circ.exp: Ditto. * gdb.cp/ovldbreak.exp: Ditto. Adjust expected line numbers. * gdb.base/list.exp: Ditto. * gdb.base/all-types.c: Remove all calls to set_debug_traps and breakpoint function and all references to the usestubs macro. * gdb.base/exprs.c: Ditto. * gdb.base/freebpcmd.c: Ditto. * gdb.base/bitfields.c: Ditto. * gdb.base/bitfields2.c: Ditto. * gdb.base/break.c: Ditto. * gdb.base/call-sc.c: Ditto. * gdb.base/call-signals.c: Ditto. * gdb.base/callfuncs.c: Ditto. * gdb.base/charset.c: Ditto. * gdb.base/consecutive.c: Ditto. * gdb.base/constvars.c: Ditto. * gdb.base/funcargs.c: Ditto. * gdb.base/int-type.c: Ditto. * gdb.base/interrupt.c: Ditto. * gdb.base/langs0.c: Ditto. * gdb.base/list0.c: Ditto. * gdb.base/mips_pro.c: Ditto. * gdb.base/miscexprs.c: Ditto. * gdb.base/nodebug.c: Ditto. * gdb.base/opaque0.c: Ditto. * gdb.base/pointers.c: Ditto. * gdb.base/printcmds.c: Ditto. * gdb.base/ptype.c: Ditto. * gdb.base/recurse.c: Ditto. * gdb.base/reread1.c: Ditto. * gdb.base/reread2.c: Ditto. * gdb.base/restore.c: Ditto. * gdb.base/return.c: Ditto. * gdb.base/run.c: Ditto. * gdb.base/scope0.c: Ditto. * gdb.base/sepdebug.c: Ditto. * gdb.base/setshow.c: Ditto. * gdb.base/setvar.c: Ditto. * gdb.base/sigall.c: Ditto. * gdb.base/signals.c: Ditto. * gdb.base/structs.c: Ditto. * gdb.base/structs2.c: Ditto. * gdb.base/testenv.c: Ditto. * gdb.base/twice.c: Ditto. * gdb.base/unwindonsignal.c: Ditto. * gdb.base/watchpoint.c: Ditto. * gdb.base/watchpoints.c: Ditto. * gdb.base/whatis.c: Ditto. * gdb.cp/classes.cc: Ditto. * gdb.cp/cplusfuncs.cc: Ditto. * gdb.cp/derivation.cc: Ditto. * gdb.cp/formatted-ref.cc: Ditto. * gdb.cp/misc.cc: Ditto. * gdb.cp/overload.cc: Ditto. * gdb.cp/ovldbreak.cc: Ditto. * gdb.cp/ref-params.cc: Ditto. * gdb.cp/ref-types.cc: Ditto. * gdb.cp/templates.cc: Ditto. * gdb.cp/virtfunc.cc: Ditto. * gdb.hp/gdb.aCC/run.c: Ditto. * gdb.hp/gdb.base-hp/callfwmall.c: Ditto. * gdb.hp/gdb.compat/xdb0.c: Ditto. * gdb.reverse/consecutive-reverse.c: Ditto. * gdb.reverse/sigall-reverse.c: Ditto. * gdb.reverse/until-reverse.c: Ditto. * gdb.reverse/watch-reverse.c: Ditto. * gdb.trace/actions.c: Ditto. * gdb.trace/circ.c: Ditto. * gdb.trace/collection.c: Ditto. --- gdb/testsuite/ChangeLog | 106 +++++++++++++++++++++ gdb/testsuite/gdb.base/all-types.c | 4 - gdb/testsuite/gdb.base/annota1.exp | 4 - gdb/testsuite/gdb.base/annota3.exp | 4 - gdb/testsuite/gdb.base/async.exp | 3 - gdb/testsuite/gdb.base/bitfields.c | 4 - gdb/testsuite/gdb.base/bitfields2.c | 5 +- gdb/testsuite/gdb.base/break.c | 4 - gdb/testsuite/gdb.base/break.exp | 9 +- gdb/testsuite/gdb.base/call-sc.c | 4 - gdb/testsuite/gdb.base/call-signals.c | 5 - gdb/testsuite/gdb.base/callfuncs.c | 4 - gdb/testsuite/gdb.base/charset.c | 4 - gdb/testsuite/gdb.base/code-expr.exp | 4 - gdb/testsuite/gdb.base/commands.exp | 2 +- gdb/testsuite/gdb.base/completion.exp | 2 - gdb/testsuite/gdb.base/condbreak.exp | 6 -- gdb/testsuite/gdb.base/consecutive.c | 4 - gdb/testsuite/gdb.base/consecutive.exp | 4 - gdb/testsuite/gdb.base/constvars.c | 4 - gdb/testsuite/gdb.base/cvexpr.exp | 4 - gdb/testsuite/gdb.base/define.exp | 2 - gdb/testsuite/gdb.base/display.exp | 3 - gdb/testsuite/gdb.base/ena-dis-br.exp | 2 - gdb/testsuite/gdb.base/environ.exp | 2 - gdb/testsuite/gdb.base/exprs.c | 4 - gdb/testsuite/gdb.base/freebpcmd.c | 5 - gdb/testsuite/gdb.base/funcargs.c | 4 - gdb/testsuite/gdb.base/gnu-ifunc.exp | 25 +++-- gdb/testsuite/gdb.base/int-type.c | 5 - gdb/testsuite/gdb.base/interrupt.c | 4 - gdb/testsuite/gdb.base/langs0.c | 4 - gdb/testsuite/gdb.base/list.exp | 16 ++-- gdb/testsuite/gdb.base/list0.c | 8 +- gdb/testsuite/gdb.base/maint.exp | 2 - gdb/testsuite/gdb.base/mips_pro.c | 4 - gdb/testsuite/gdb.base/miscexprs.c | 5 - gdb/testsuite/gdb.base/nodebug.c | 4 - gdb/testsuite/gdb.base/opaque0.c | 4 - gdb/testsuite/gdb.base/pending.exp | 3 - gdb/testsuite/gdb.base/pointers.c | 4 - gdb/testsuite/gdb.base/printcmds.c | 4 - gdb/testsuite/gdb.base/ptype.c | 4 - gdb/testsuite/gdb.base/recurse.c | 4 - gdb/testsuite/gdb.base/reread1.c | 4 - gdb/testsuite/gdb.base/reread2.c | 4 - gdb/testsuite/gdb.base/restore.c | 4 - gdb/testsuite/gdb.base/return.c | 4 - gdb/testsuite/gdb.base/run.c | 4 - gdb/testsuite/gdb.base/scope0.c | 4 - gdb/testsuite/gdb.base/sect-cmd.exp | 2 - gdb/testsuite/gdb.base/sepdebug.c | 4 - gdb/testsuite/gdb.base/sepdebug.exp | 16 +--- gdb/testsuite/gdb.base/setshow.c | 4 - gdb/testsuite/gdb.base/setvar.c | 4 - gdb/testsuite/gdb.base/sigall.c | 4 - gdb/testsuite/gdb.base/signals.c | 4 - gdb/testsuite/gdb.base/structs.c | 4 - gdb/testsuite/gdb.base/structs2.c | 4 - gdb/testsuite/gdb.base/testenv.c | 4 - gdb/testsuite/gdb.base/twice.c | 4 - gdb/testsuite/gdb.base/unload.exp | 4 - gdb/testsuite/gdb.base/unwindonsignal.c | 4 - gdb/testsuite/gdb.base/watchpoint-solib.exp | 4 - gdb/testsuite/gdb.base/watchpoint.c | 4 - gdb/testsuite/gdb.base/watchpoints.c | 5 - gdb/testsuite/gdb.base/whatis.c | 4 - gdb/testsuite/gdb.cp/annota2.exp | 4 - gdb/testsuite/gdb.cp/annota3.exp | 4 - gdb/testsuite/gdb.cp/classes.cc | 4 - gdb/testsuite/gdb.cp/cplusfuncs.cc | 11 --- gdb/testsuite/gdb.cp/derivation.cc | 6 -- gdb/testsuite/gdb.cp/formatted-ref.cc | 5 - gdb/testsuite/gdb.cp/misc.cc | 4 - gdb/testsuite/gdb.cp/overload.cc | 5 - gdb/testsuite/gdb.cp/ovldbreak.cc | 4 - gdb/testsuite/gdb.cp/ovldbreak.exp | 96 +++++++++---------- gdb/testsuite/gdb.cp/ref-params.cc | 5 - gdb/testsuite/gdb.cp/ref-types.cc | 4 - gdb/testsuite/gdb.cp/templates.cc | 5 +- gdb/testsuite/gdb.cp/virtfunc.cc | 10 -- gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp | 3 - gdb/testsuite/gdb.hp/gdb.aCC/run.c | 4 - gdb/testsuite/gdb.hp/gdb.base-hp/callfwmall.c | 4 - gdb/testsuite/gdb.hp/gdb.compat/xdb0.c | 5 +- gdb/testsuite/gdb.hp/gdb.compat/xdb1.exp | 2 - gdb/testsuite/gdb.mi/mi-pending.exp | 4 - gdb/testsuite/gdb.reverse/consecutive-reverse.c | 4 - gdb/testsuite/gdb.reverse/sigall-reverse.c | 5 - gdb/testsuite/gdb.reverse/until-reverse.c | 4 - gdb/testsuite/gdb.reverse/watch-reverse.c | 4 - gdb/testsuite/gdb.trace/actions.c | 5 - gdb/testsuite/gdb.trace/circ.c | 8 -- gdb/testsuite/gdb.trace/circ.exp | 4 - gdb/testsuite/gdb.trace/collection.c | 5 - gdb/testsuite/lib/gdb.exp | 118 +----------------------- 96 files changed, 182 insertions(+), 579 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d6c2de6..ed3caec 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,4 +1,110 @@ 2011-12-13 Pedro Alves + Doug Evans + + * lib/gdb.exp (gdb_run_cmd, runto_main, gdb_compile) + (clean_restart): Remove references to the gdb_stub target board + variable. + (gdb_step_for_stub): Delete. + + * gdb.base/annota1.exp: Remove all references to [target_info + exists gdb_stub], gdb_step_for_stub and usestubs. + * gdb.base/annota3.exp: Ditto. + * gdb.base/async.exp: Ditto. + * gdb.base/break.exp: Ditto. + * gdb.base/code-expr.exp: Ditto. + * gdb.base/commands.exp: Ditto. + * gdb.base/completion.exp: Ditto. + * gdb.base/condbreak.exp: Ditto. + * gdb.base/consecutive.exp: Ditto. + * gdb.base/cvexpr.exp: Ditto. + * gdb.base/define.exp: Ditto. + * gdb.base/display.exp: Ditto. + * gdb.base/ena-dis-br.exp: Ditto. + * gdb.base/environ.exp: Ditto. + * gdb.base/gnu-ifunc.exp: Ditto. + * gdb.base/maint.exp: Ditto. + * gdb.base/pending.exp: Ditto. + * gdb.base/sect-cmd.exp: Ditto. + * gdb.base/sepdebug.exp: Ditto. + * gdb.base/unload.exp: Ditto. + * gdb.base/watchpoint-solib.exp: Ditto. + * gdb.cp/annota2.exp: Ditto. + * gdb.cp/annota3.exp: Ditto. + * gdb.dwarf2/dw2-inline-param.exp: Ditto. + * gdb.hp/gdb.compat/xdb1.exp: Ditto. + * gdb.mi/mi-pending.exp: Ditto. + * gdb.trace/circ.exp: Ditto. + * gdb.cp/ovldbreak.exp: Ditto. Adjust expected line numbers. + * gdb.base/list.exp: Ditto. + + * gdb.base/all-types.c: Remove all calls to set_debug_traps and + breakpoint function and all references to the usestubs macro. + * gdb.base/exprs.c: Ditto. + * gdb.base/freebpcmd.c: Ditto. + * gdb.base/bitfields.c: Ditto. + * gdb.base/bitfields2.c: Ditto. + * gdb.base/break.c: Ditto. + * gdb.base/call-sc.c: Ditto. + * gdb.base/call-signals.c: Ditto. + * gdb.base/callfuncs.c: Ditto. + * gdb.base/charset.c: Ditto. + * gdb.base/consecutive.c: Ditto. + * gdb.base/constvars.c: Ditto. + * gdb.base/funcargs.c: Ditto. + * gdb.base/int-type.c: Ditto. + * gdb.base/interrupt.c: Ditto. + * gdb.base/langs0.c: Ditto. + * gdb.base/list0.c: Ditto. + * gdb.base/mips_pro.c: Ditto. + * gdb.base/miscexprs.c: Ditto. + * gdb.base/nodebug.c: Ditto. + * gdb.base/opaque0.c: Ditto. + * gdb.base/pointers.c: Ditto. + * gdb.base/printcmds.c: Ditto. + * gdb.base/ptype.c: Ditto. + * gdb.base/recurse.c: Ditto. + * gdb.base/reread1.c: Ditto. + * gdb.base/reread2.c: Ditto. + * gdb.base/restore.c: Ditto. + * gdb.base/return.c: Ditto. + * gdb.base/run.c: Ditto. + * gdb.base/scope0.c: Ditto. + * gdb.base/sepdebug.c: Ditto. + * gdb.base/setshow.c: Ditto. + * gdb.base/setvar.c: Ditto. + * gdb.base/sigall.c: Ditto. + * gdb.base/signals.c: Ditto. + * gdb.base/structs.c: Ditto. + * gdb.base/structs2.c: Ditto. + * gdb.base/testenv.c: Ditto. + * gdb.base/twice.c: Ditto. + * gdb.base/unwindonsignal.c: Ditto. + * gdb.base/watchpoint.c: Ditto. + * gdb.base/watchpoints.c: Ditto. + * gdb.base/whatis.c: Ditto. + * gdb.cp/classes.cc: Ditto. + * gdb.cp/cplusfuncs.cc: Ditto. + * gdb.cp/derivation.cc: Ditto. + * gdb.cp/formatted-ref.cc: Ditto. + * gdb.cp/misc.cc: Ditto. + * gdb.cp/overload.cc: Ditto. + * gdb.cp/ovldbreak.cc: Ditto. + * gdb.cp/ref-params.cc: Ditto. + * gdb.cp/ref-types.cc: Ditto. + * gdb.cp/templates.cc: Ditto. + * gdb.cp/virtfunc.cc: Ditto. + * gdb.hp/gdb.aCC/run.c: Ditto. + * gdb.hp/gdb.base-hp/callfwmall.c: Ditto. + * gdb.hp/gdb.compat/xdb0.c: Ditto. + * gdb.reverse/consecutive-reverse.c: Ditto. + * gdb.reverse/sigall-reverse.c: Ditto. + * gdb.reverse/until-reverse.c: Ditto. + * gdb.reverse/watch-reverse.c: Ditto. + * gdb.trace/actions.c: Ditto. + * gdb.trace/circ.c: Ditto. + * gdb.trace/collection.c: Ditto. + +2011-12-13 Pedro Alves * gdb.base/watchpoint.c (struct foo2, foo2, struct foo4, foo4) (func6, func7): New. diff --git a/gdb/testsuite/gdb.base/all-types.c b/gdb/testsuite/gdb.base/all-types.c index 2f3a31f..570fd43 100644 --- a/gdb/testsuite/gdb.base/all-types.c +++ b/gdb/testsuite/gdb.base/all-types.c @@ -28,10 +28,6 @@ double v_double; int main () { extern void dummy(); -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif dummy(); return 0; diff --git a/gdb/testsuite/gdb.base/annota1.exp b/gdb/testsuite/gdb.base/annota1.exp index 9ceeeac..787eb80 100644 --- a/gdb/testsuite/gdb.base/annota1.exp +++ b/gdb/testsuite/gdb.base/annota1.exp @@ -50,10 +50,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # # the line at which break main will put the breakpoint # diff --git a/gdb/testsuite/gdb.base/annota3.exp b/gdb/testsuite/gdb.base/annota3.exp index 8ec18a9..7767b1d 100644 --- a/gdb/testsuite/gdb.base/annota3.exp +++ b/gdb/testsuite/gdb.base/annota3.exp @@ -50,10 +50,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # # the line at which break main will put the breakpoint # diff --git a/gdb/testsuite/gdb.base/async.exp b/gdb/testsuite/gdb.base/async.exp index d894a08..b35926d 100644 --- a/gdb/testsuite/gdb.base/async.exp +++ b/gdb/testsuite/gdb.base/async.exp @@ -56,9 +56,6 @@ gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} # # set it up at a breakpoint so we can play with it diff --git a/gdb/testsuite/gdb.base/bitfields.c b/gdb/testsuite/gdb.base/bitfields.c index 3b5e42c..ed1634c 100644 --- a/gdb/testsuite/gdb.base/bitfields.c +++ b/gdb/testsuite/gdb.base/bitfields.c @@ -78,10 +78,6 @@ int main () /* For each member, set that member to 1, allow gdb to verify that the member (and only that member) is 1, and then reset it back to 0. */ -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif flags.uc = 1; break1 (); flags.uc = 0; diff --git a/gdb/testsuite/gdb.base/bitfields2.c b/gdb/testsuite/gdb.base/bitfields2.c index 1958ef0..edb3b9f 100644 --- a/gdb/testsuite/gdb.base/bitfields2.c +++ b/gdb/testsuite/gdb.base/bitfields2.c @@ -162,10 +162,7 @@ void tester () int main () { int i; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif + for (i = 0; i < 5; i += 1) tester (); return 0; diff --git a/gdb/testsuite/gdb.base/break.c b/gdb/testsuite/gdb.base/break.c index 3b9f6e2..d33ed15 100644 --- a/gdb/testsuite/gdb.base/break.c +++ b/gdb/testsuite/gdb.base/break.c @@ -86,10 +86,6 @@ int argc; char *argv[], **envp; #endif { -#ifdef usestubs - set_debug_traps(); /* set breakpoint 5 here */ - breakpoint(); -#endif if (argc == 12345) { /* an unlikely value < 2^16, in case uninited */ /* set breakpoint 6 here */ fprintf (stderr, "usage: factorial \n"); return 1; diff --git a/gdb/testsuite/gdb.base/break.exp b/gdb/testsuite/gdb.base/break.exp index c5885ba..6d6f310 100644 --- a/gdb/testsuite/gdb.base/break.exp +++ b/gdb/testsuite/gdb.base/break.exp @@ -119,14 +119,7 @@ gdb_test "break multi_line_while_conditional" \ set bp_location5 [gdb_get_line_number "set breakpoint 5 here"] set bp_location6 [gdb_get_line_number "set breakpoint 6 here"] -# -# check to see what breakpoints are set -# -if [target_info exists gdb_stub] { - set main_line $bp_location5 -} else { - set main_line $bp_location6 -} +set main_line $bp_location6 if {$hp_aCC_compiler} { set proto "\\(int\\)" diff --git a/gdb/testsuite/gdb.base/call-sc.c b/gdb/testsuite/gdb.base/call-sc.c index 951e101..dd2b8ea 100644 --- a/gdb/testsuite/gdb.base/call-sc.c +++ b/gdb/testsuite/gdb.base/call-sc.c @@ -58,10 +58,6 @@ zed () int main() { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif int i; Fun(foo); diff --git a/gdb/testsuite/gdb.base/call-signals.c b/gdb/testsuite/gdb.base/call-signals.c index 23f0a31..d775853 100644 --- a/gdb/testsuite/gdb.base/call-signals.c +++ b/gdb/testsuite/gdb.base/call-signals.c @@ -58,11 +58,6 @@ null_hand_call () int main () { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif - #ifdef SIG_SETMASK /* Ensure all the signals aren't blocked. The environment in which the testsuite is run may have blocked some diff --git a/gdb/testsuite/gdb.base/callfuncs.c b/gdb/testsuite/gdb.base/callfuncs.c index f764b82..58eaa77 100644 --- a/gdb/testsuite/gdb.base/callfuncs.c +++ b/gdb/testsuite/gdb.base/callfuncs.c @@ -646,10 +646,6 @@ struct struct_with_fnptr *function_struct_ptr = &function_struct; int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif malloc(1); t_double_values(double_val1, double_val2); t_structs_c(struct_val1); diff --git a/gdb/testsuite/gdb.base/charset.c b/gdb/testsuite/gdb.base/charset.c index df56c45..57107c6 100644 --- a/gdb/testsuite/gdb.base/charset.c +++ b/gdb/testsuite/gdb.base/charset.c @@ -124,10 +124,6 @@ extern void malloc_stub (void); int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif malloc_stub (); diff --git a/gdb/testsuite/gdb.base/code-expr.exp b/gdb/testsuite/gdb.base/code-expr.exp index b5cddaa..a280fe4 100644 --- a/gdb/testsuite/gdb.base/code-expr.exp +++ b/gdb/testsuite/gdb.base/code-expr.exp @@ -41,10 +41,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - gdb_test_no_output "set print sevenbit-strings" gdb_test_no_output "set print address off" gdb_test_no_output "set width 0" diff --git a/gdb/testsuite/gdb.base/commands.exp b/gdb/testsuite/gdb.base/commands.exp index b4b14b5..3927e84 100644 --- a/gdb/testsuite/gdb.base/commands.exp +++ b/gdb/testsuite/gdb.base/commands.exp @@ -319,7 +319,7 @@ proc watchpoint_command_test {} { # scope. fail $test } - -re "Continuing.*\[Ww\]atchpoint $wp_id deleted because the program has left the block in.*which its expression is valid.*run.c:(57|82).*$gdb_prompt $" { + -re "Continuing.*\[Ww\]atchpoint $wp_id deleted because the program has left the block in.*which its expression is valid.*run.c:(53|77).*$gdb_prompt $" { pass $test } } diff --git a/gdb/testsuite/gdb.base/completion.exp b/gdb/testsuite/gdb.base/completion.exp index 030a912..5825139 100644 --- a/gdb/testsuite/gdb.base/completion.exp +++ b/gdb/testsuite/gdb.base/completion.exp @@ -51,8 +51,6 @@ if $tracelevel then { } -global usestubs - # # test running programs # diff --git a/gdb/testsuite/gdb.base/condbreak.exp b/gdb/testsuite/gdb.base/condbreak.exp index b8b38a4..1e3014c 100644 --- a/gdb/testsuite/gdb.base/condbreak.exp +++ b/gdb/testsuite/gdb.base/condbreak.exp @@ -22,8 +22,6 @@ if $tracelevel then { strace $tracelevel } -global usestubs - # # test running programs # @@ -58,10 +56,6 @@ gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - set bp_location1 [gdb_get_line_number "set breakpoint 1 here"] set bp_location6 [gdb_get_line_number "set breakpoint 6 here"] set bp_location8 [gdb_get_line_number "set breakpoint 8 here" $srcfile1] diff --git a/gdb/testsuite/gdb.base/consecutive.c b/gdb/testsuite/gdb.base/consecutive.c index bfea429..7d0cea9 100644 --- a/gdb/testsuite/gdb.base/consecutive.c +++ b/gdb/testsuite/gdb.base/consecutive.c @@ -12,9 +12,5 @@ int foo () main() { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif foo (); } diff --git a/gdb/testsuite/gdb.base/consecutive.exp b/gdb/testsuite/gdb.base/consecutive.exp index 34ac2dd..515b76a 100644 --- a/gdb/testsuite/gdb.base/consecutive.exp +++ b/gdb/testsuite/gdb.base/consecutive.exp @@ -43,10 +43,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - if ![runto_main] then { perror "couldn't run to breakpoint" continue diff --git a/gdb/testsuite/gdb.base/constvars.c b/gdb/testsuite/gdb.base/constvars.c index 289b8e7..4228822 100644 --- a/gdb/testsuite/gdb.base/constvars.c +++ b/gdb/testsuite/gdb.base/constvars.c @@ -191,10 +191,6 @@ main (void) const char & radiation = laconic; volatile signed char & remuneration = lemonade; */ -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif marker1 (); diff --git a/gdb/testsuite/gdb.base/cvexpr.exp b/gdb/testsuite/gdb.base/cvexpr.exp index 34645dc..b9c9719 100644 --- a/gdb/testsuite/gdb.base/cvexpr.exp +++ b/gdb/testsuite/gdb.base/cvexpr.exp @@ -41,10 +41,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - gdb_test_no_output "set print sevenbit-strings" gdb_test_no_output "set print address off" gdb_test_no_output "set width 0" diff --git a/gdb/testsuite/gdb.base/define.exp b/gdb/testsuite/gdb.base/define.exp index 89519cb..414e9db 100644 --- a/gdb/testsuite/gdb.base/define.exp +++ b/gdb/testsuite/gdb.base/define.exp @@ -20,8 +20,6 @@ if $tracelevel then { strace $tracelevel } -global usestubs - # # test running programs diff --git a/gdb/testsuite/gdb.base/display.exp b/gdb/testsuite/gdb.base/display.exp index fc3c47e..d049a29 100644 --- a/gdb/testsuite/gdb.base/display.exp +++ b/gdb/testsuite/gdb.base/display.exp @@ -31,9 +31,6 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb untested display.exp return -1 } -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} # Preserve the old timeout, and set a new one that should be # sufficient to avoid timing out during this test. diff --git a/gdb/testsuite/gdb.base/ena-dis-br.exp b/gdb/testsuite/gdb.base/ena-dis-br.exp index 46713b9..6461344 100644 --- a/gdb/testsuite/gdb.base/ena-dis-br.exp +++ b/gdb/testsuite/gdb.base/ena-dis-br.exp @@ -20,8 +20,6 @@ if $tracelevel then { strace $tracelevel } -global usestubs - # # test running programs # diff --git a/gdb/testsuite/gdb.base/environ.exp b/gdb/testsuite/gdb.base/environ.exp index 3160b17..f039712 100644 --- a/gdb/testsuite/gdb.base/environ.exp +++ b/gdb/testsuite/gdb.base/environ.exp @@ -18,8 +18,6 @@ if $tracelevel then { strace $tracelevel } -global usestubs - # # test running programs # diff --git a/gdb/testsuite/gdb.base/exprs.c b/gdb/testsuite/gdb.base/exprs.c index 34d2780..90c0f25 100644 --- a/gdb/testsuite/gdb.base/exprs.c +++ b/gdb/testsuite/gdb.base/exprs.c @@ -8,10 +8,6 @@ main (argc, argv, envp) #endif { extern void dummy(); -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif dummy(); return 0; diff --git a/gdb/testsuite/gdb.base/freebpcmd.c b/gdb/testsuite/gdb.base/freebpcmd.c index 80b8d9e..7593afd 100644 --- a/gdb/testsuite/gdb.base/freebpcmd.c +++ b/gdb/testsuite/gdb.base/freebpcmd.c @@ -24,11 +24,6 @@ main (int argc, char **argv) { int i; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif - for (i = 0; i < 100; i++) printf (">>> %d\n", i); /* euphonium */ diff --git a/gdb/testsuite/gdb.base/funcargs.c b/gdb/testsuite/gdb.base/funcargs.c index 6d16b62..b34f3fb 100644 --- a/gdb/testsuite/gdb.base/funcargs.c +++ b/gdb/testsuite/gdb.base/funcargs.c @@ -837,10 +837,6 @@ int main () void (*pointer_to_call0a) (char, short, int, long) = (void (*)(char, short, int, long))call0a; double (*pointer_to_call_with_trampolines) (double) = call_with_trampolines; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif /* Test calling with basic integer types */ call0a (c, s, i, l); call0b (s, i, l, c); diff --git a/gdb/testsuite/gdb.base/gnu-ifunc.exp b/gdb/testsuite/gdb.base/gnu-ifunc.exp index 4fcc3bf..2e95bee 100644 --- a/gdb/testsuite/gdb.base/gnu-ifunc.exp +++ b/gdb/testsuite/gdb.base/gnu-ifunc.exp @@ -127,20 +127,17 @@ gdb_test "info sym $expect_out(1,string)" "gnu_ifunc in section .*" "info sym \n"); return 1; diff --git a/gdb/testsuite/gdb.base/sepdebug.exp b/gdb/testsuite/gdb.base/sepdebug.exp index bb0b914..90fe4ec 100644 --- a/gdb/testsuite/gdb.base/sepdebug.exp +++ b/gdb/testsuite/gdb.base/sepdebug.exp @@ -64,9 +64,6 @@ if { $gdb_file_cmd_debug_info != "debug" } then { fail "No debug information found." } -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} # # test simple breakpoint setting commands # @@ -144,14 +141,7 @@ gdb_test "break multi_line_while_conditional" \ set bp_location5 [gdb_get_line_number "set breakpoint 5 here"] set bp_location6 [gdb_get_line_number "set breakpoint 6 here"] -# -# check to see what breakpoints are set -# -if [target_info exists gdb_stub] { - set main_line $bp_location5 -} else { - set main_line $bp_location6 -} +set main_line $bp_location6 set bp_location7 [gdb_get_line_number "set breakpoint 7 here"] set bp_location8 [gdb_get_line_number "set breakpoint 8 here"] @@ -673,10 +663,6 @@ proc test_different_dir {type test_different_dir xfail} { "set separate debug location" gdb_load ${binfile} - if [target_info exists gdb_stub] { - gdb_step_for_stub; - } - # # test break at function # diff --git a/gdb/testsuite/gdb.base/setshow.c b/gdb/testsuite/gdb.base/setshow.c index fbaba0f..a30ef82 100644 --- a/gdb/testsuite/gdb.base/setshow.c +++ b/gdb/testsuite/gdb.base/setshow.c @@ -14,10 +14,6 @@ main(argc, argv) #endif { int i = 1; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif if (argc <= 0 || argc > 8) return -1; diff --git a/gdb/testsuite/gdb.base/setvar.c b/gdb/testsuite/gdb.base/setvar.c index 969de0d..83509cd 100644 --- a/gdb/testsuite/gdb.base/setvar.c +++ b/gdb/testsuite/gdb.base/setvar.c @@ -10,10 +10,6 @@ main (argc, argv, envp) #endif { extern void dummy(); -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif dummy(); return 0; } diff --git a/gdb/testsuite/gdb.base/sigall.c b/gdb/testsuite/gdb.base/sigall.c index 28ae192..92ebc6b 100644 --- a/gdb/testsuite/gdb.base/sigall.c +++ b/gdb/testsuite/gdb.base/sigall.c @@ -1577,10 +1577,6 @@ return 0; int main () { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif #ifdef SIG_SETMASK /* Ensure all the signals aren't blocked. diff --git a/gdb/testsuite/gdb.base/signals.c b/gdb/testsuite/gdb.base/signals.c index f1ebcfc..d97719c 100644 --- a/gdb/testsuite/gdb.base/signals.c +++ b/gdb/testsuite/gdb.base/signals.c @@ -38,10 +38,6 @@ func2 () int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif #ifdef SIGALRM signal (SIGALRM, handler); #endif diff --git a/gdb/testsuite/gdb.base/structs.c b/gdb/testsuite/gdb.base/structs.c index c26b86c..df4dfa9 100644 --- a/gdb/testsuite/gdb.base/structs.c +++ b/gdb/testsuite/gdb.base/structs.c @@ -401,10 +401,6 @@ static struct { char c; } chartest[256]; int main() { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif int i; for (i = 0; i < 256; i++) diff --git a/gdb/testsuite/gdb.base/structs2.c b/gdb/testsuite/gdb.base/structs2.c index f1eeab1..7c8be03 100644 --- a/gdb/testsuite/gdb.base/structs2.c +++ b/gdb/testsuite/gdb.base/structs2.c @@ -10,10 +10,6 @@ int bkpt; int main () { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif bkpt = 0; param_reg (120, 130, 32000, 33000); diff --git a/gdb/testsuite/gdb.base/testenv.c b/gdb/testsuite/gdb.base/testenv.c index 83f7e9c..2e29a85 100755 --- a/gdb/testsuite/gdb.base/testenv.c +++ b/gdb/testsuite/gdb.base/testenv.c @@ -27,10 +27,6 @@ int main (int argc, char **argv, char **envp) { int i, j; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif j = 0; for (i = 0; envp[i]; i++) diff --git a/gdb/testsuite/gdb.base/twice.c b/gdb/testsuite/gdb.base/twice.c index 09eb2dd..a0182bb 100644 --- a/gdb/testsuite/gdb.base/twice.c +++ b/gdb/testsuite/gdb.base/twice.c @@ -11,10 +11,6 @@ int main () { int y ; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif y = nothing () ; printf ("hello\n") ; return 0; diff --git a/gdb/testsuite/gdb.base/unload.exp b/gdb/testsuite/gdb.base/unload.exp index d33407b..0e6f6aa 100644 --- a/gdb/testsuite/gdb.base/unload.exp +++ b/gdb/testsuite/gdb.base/unload.exp @@ -69,10 +69,6 @@ gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} gdb_load_shlibs $lib_sl $lib_sl2 -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # # Test setting a breakpoint in a dynamically loaded library which is # manually loaded and unloaded diff --git a/gdb/testsuite/gdb.base/unwindonsignal.c b/gdb/testsuite/gdb.base/unwindonsignal.c index 98ac811..b8d1ff2 100644 --- a/gdb/testsuite/gdb.base/unwindonsignal.c +++ b/gdb/testsuite/gdb.base/unwindonsignal.c @@ -42,10 +42,6 @@ stop_here () int main () { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif #ifdef SIG_SETMASK /* Ensure all the signals aren't blocked. diff --git a/gdb/testsuite/gdb.base/watchpoint-solib.exp b/gdb/testsuite/gdb.base/watchpoint-solib.exp index 3e014db..d3baa08 100644 --- a/gdb/testsuite/gdb.base/watchpoint-solib.exp +++ b/gdb/testsuite/gdb.base/watchpoint-solib.exp @@ -58,10 +58,6 @@ gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} gdb_load_shlibs $lib_sl -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - runto_main # Disable hardware watchpoints if necessary. diff --git a/gdb/testsuite/gdb.base/watchpoint.c b/gdb/testsuite/gdb.base/watchpoint.c index c4d8a69..50f0a83 100644 --- a/gdb/testsuite/gdb.base/watchpoint.c +++ b/gdb/testsuite/gdb.base/watchpoint.c @@ -167,10 +167,6 @@ func7 (void) int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif struct1.val = 1; struct2.val = 2; ptr1 = &struct1; diff --git a/gdb/testsuite/gdb.base/watchpoints.c b/gdb/testsuite/gdb.base/watchpoints.c index 36972e8..0826fad 100644 --- a/gdb/testsuite/gdb.base/watchpoints.c +++ b/gdb/testsuite/gdb.base/watchpoints.c @@ -30,11 +30,6 @@ int ival4 = -1; int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif - for (count = 0; count < 4; count++) { ival1 = count; ival2 = count; ival3 = count; ival4 = count; diff --git a/gdb/testsuite/gdb.base/whatis.c b/gdb/testsuite/gdb.base/whatis.c index 24ec080..c86f040a 100644 --- a/gdb/testsuite/gdb.base/whatis.c +++ b/gdb/testsuite/gdb.base/whatis.c @@ -248,10 +248,6 @@ enum cars {chevy, ford, porsche} clunker; int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif /* Some linkers (e.g. on AIX) remove unreferenced variables, so make sure to reference them. */ v_char = 0; diff --git a/gdb/testsuite/gdb.cp/annota2.exp b/gdb/testsuite/gdb.cp/annota2.exp index 9aafaf8..1a8fe3e 100644 --- a/gdb/testsuite/gdb.cp/annota2.exp +++ b/gdb/testsuite/gdb.cp/annota2.exp @@ -51,10 +51,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # # line number where we need to stop in main # diff --git a/gdb/testsuite/gdb.cp/annota3.exp b/gdb/testsuite/gdb.cp/annota3.exp index ce267de..1c42731 100644 --- a/gdb/testsuite/gdb.cp/annota3.exp +++ b/gdb/testsuite/gdb.cp/annota3.exp @@ -51,10 +51,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # # line number where we need to stop in main # diff --git a/gdb/testsuite/gdb.cp/classes.cc b/gdb/testsuite/gdb.cp/classes.cc index a3037eb..d96374e 100644 --- a/gdb/testsuite/gdb.cp/classes.cc +++ b/gdb/testsuite/gdb.cp/classes.cc @@ -577,10 +577,6 @@ void use_methods () int main() { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif dummy(); inheritance1 (); inheritance3 (); diff --git a/gdb/testsuite/gdb.cp/cplusfuncs.cc b/gdb/testsuite/gdb.cp/cplusfuncs.cc index 11dba06..021d7c1 100644 --- a/gdb/testsuite/gdb.cp/cplusfuncs.cc +++ b/gdb/testsuite/gdb.cp/cplusfuncs.cc @@ -58,18 +58,7 @@ public: const char *ccpfoo; }; -#ifdef usestubs -extern "C" { - void set_debug_traps(); - void breakpoint(); -}; -#endif - int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif int z=3; } diff --git a/gdb/testsuite/gdb.cp/derivation.cc b/gdb/testsuite/gdb.cp/derivation.cc index f6d42e7..942fcd2 100644 --- a/gdb/testsuite/gdb.cp/derivation.cc +++ b/gdb/testsuite/gdb.cp/derivation.cc @@ -208,12 +208,6 @@ int main(void) F f_instance; G g_instance; - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif - - marker1(); // marker1-returns-here a_instance.a = 20; // marker1-returns-here diff --git a/gdb/testsuite/gdb.cp/formatted-ref.cc b/gdb/testsuite/gdb.cp/formatted-ref.cc index d7ea235..5fdfdb2 100644 --- a/gdb/testsuite/gdb.cp/formatted-ref.cc +++ b/gdb/testsuite/gdb.cp/formatted-ref.cc @@ -38,11 +38,6 @@ Enum1 e1 = Val11; int main(void) { - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif - f1 (s1, e1, i1); } diff --git a/gdb/testsuite/gdb.cp/misc.cc b/gdb/testsuite/gdb.cp/misc.cc index 0b39938..d2e0eb0 100644 --- a/gdb/testsuite/gdb.cp/misc.cc +++ b/gdb/testsuite/gdb.cp/misc.cc @@ -569,10 +569,6 @@ void use_methods () int main() { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif dummy(); inheritance1 (); inheritance3 (); diff --git a/gdb/testsuite/gdb.cp/overload.cc b/gdb/testsuite/gdb.cp/overload.cc index ba082d2..ba0678f 100644 --- a/gdb/testsuite/gdb.cp/overload.cc +++ b/gdb/testsuite/gdb.cp/overload.cc @@ -135,11 +135,6 @@ int main () N::nsoverload(2); N::nsoverload(2, 3); - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif - overloadNamespace (1); overloadNamespace (dummyInstance); XXX::overloadNamespace ('a'); diff --git a/gdb/testsuite/gdb.cp/ovldbreak.cc b/gdb/testsuite/gdb.cp/ovldbreak.cc index 7aa1f2f..832b0fa 100644 --- a/gdb/testsuite/gdb.cp/ovldbreak.cc +++ b/gdb/testsuite/gdb.cp/ovldbreak.cc @@ -89,10 +89,6 @@ int main () foo_instance1.overloadargs(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11); - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif marker1(); diff --git a/gdb/testsuite/gdb.cp/ovldbreak.exp b/gdb/testsuite/gdb.cp/ovldbreak.exp index f5b41ab..c647283 100644 --- a/gdb/testsuite/gdb.cp/ovldbreak.exp +++ b/gdb/testsuite/gdb.cp/ovldbreak.exp @@ -150,18 +150,18 @@ gdb_test_no_output "set multiple-symbols ask" # Set breakpoints on foo::overload1arg, one by one. -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 12 2 111 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 11 3 112 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 10 4 113 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 9 5 114 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 8 6 115 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 7 7 116 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 6 8 117 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 5 9 118 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 4 10 119 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 3 11 120 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 2 12 121 -set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 13 13 110 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 12 2 107 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 11 3 108 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 10 4 109 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 9 5 110 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 8 6 111 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 7 7 112 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 6 8 113 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 5 9 114 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 4 10 115 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 3 11 116 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 2 12 117 +set_bp_overloaded "foo::overload1arg" "$menu_overload1arg" 13 13 106 @@ -171,18 +171,18 @@ gdb_test "info break" \ "Num Type\[\t \]+Disp Enb Address\[\t \]+What.* \[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in main(\\((|void)\\))? at.*$srcfile:49\r \[\t \]+breakpoint already hit 1 time\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:111\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:112\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:113\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:114\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:115\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:116\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:117\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:118\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:119\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:120\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:121\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:110" \ +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:107\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:108\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:109\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:110\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:111\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:112\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:113\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:114\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:115\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:116\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:117\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:106" \ "breakpoint info (after setting one-by-one)" @@ -229,18 +229,18 @@ gdb_test "info break" \ "Num Type\[\t \]+Disp Enb Address\[\t \]+What.* \[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in main(\\((|void)\\))? at.*$srcfile:49\r \[\t \]+breakpoint already hit 1 time\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:111\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:112\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:113\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:114\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:115\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:116\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:117\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:118\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:119\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:120\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:121\r -\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:110" \ +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:107\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:108\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:109\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:110\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:111\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:112\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:113\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:114\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:115\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:116\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:117\r +\[0-9\]+\[\t \]+breakpoint keep y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:106" \ "breakpoint info (after cancel)" @@ -307,18 +307,18 @@ gdb_expect { gdb_test "info break" \ "Num Type\[\t \]+Disp Enb Address\[\t \]+What.* \[0-9\]+\[\t \]+breakpoint keep y\[\t \]+\[\t \]*\r -\[0-9\]+.1\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:121\r -\[0-9\]+.2\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:120\r -\[0-9\]+.3\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:119\r -\[0-9\]+.4\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:118\r -\[0-9\]+.5\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:117\r -\[0-9\]+.6\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:116\r -\[0-9\]+.7\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:115\r -\[0-9\]+.8\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:114\r -\[0-9\]+.9\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:113\r -\[0-9\]+.10\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:112\r -\[0-9\]+.11\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:111\r -\[0-9\]+.12\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:110" \ +\[0-9\]+.1\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(double\\) at.*$srcfile:117\r +\[0-9\]+.2\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(float\\) at.*$srcfile:116\r +\[0-9\]+.3\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned long|long unsigned)( int)?\\) at.*$srcfile:115\r +\[0-9\]+.4\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(long( int)?\\) at.*$srcfile:114\r +\[0-9\]+.5\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned|unsigned int)\\) at.*$srcfile:113\r +\[0-9\]+.6\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(int\\) at.*$srcfile:112\r +\[0-9\]+.7\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((unsigned short|short unsigned)( int)?\\) at.*$srcfile:111\r +\[0-9\]+.8\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(short( int)?\\) at.*$srcfile:110\r +\[0-9\]+.9\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(unsigned char\\) at.*$srcfile:109\r +\[0-9\]+.10\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(signed char\\) at.*$srcfile:108\r +\[0-9\]+.11\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\(char\\) at.*$srcfile:107\r +\[0-9\]+.12\[\t \]+y\[\t \]+$hex\[\t \]+in foo::overload1arg\\((void|)\\) at.*$srcfile:106" \ "breakpoint info (after setting on all)" diff --git a/gdb/testsuite/gdb.cp/ref-params.cc b/gdb/testsuite/gdb.cp/ref-params.cc index 4caa262..f2a5388 100644 --- a/gdb/testsuite/gdb.cp/ref-params.cc +++ b/gdb/testsuite/gdb.cp/ref-params.cc @@ -61,11 +61,6 @@ int main(void) Child Q(42); Child& QR = Q; - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif - /* Set breakpoint marker1 here. */ f2(Q); diff --git a/gdb/testsuite/gdb.cp/ref-types.cc b/gdb/testsuite/gdb.cp/ref-types.cc index 6a042f6..2b449d2 100644 --- a/gdb/testsuite/gdb.cp/ref-types.cc +++ b/gdb/testsuite/gdb.cp/ref-types.cc @@ -41,10 +41,6 @@ int main(void) as[2] = 2; as[3] = 3; - #ifdef usestubs - set_debug_traps(); - breakpoint(); - #endif marker1(); main2(); diff --git a/gdb/testsuite/gdb.cp/templates.cc b/gdb/testsuite/gdb.cp/templates.cc index b5e0643..49cf6b6 100644 --- a/gdb/testsuite/gdb.cp/templates.cc +++ b/gdb/testsuite/gdb.cp/templates.cc @@ -734,10 +734,7 @@ int main() { int i; long l, m, n; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif + i = i + 1; // New tests added here diff --git a/gdb/testsuite/gdb.cp/virtfunc.cc b/gdb/testsuite/gdb.cp/virtfunc.cc index c6a67a8..6733054 100644 --- a/gdb/testsuite/gdb.cp/virtfunc.cc +++ b/gdb/testsuite/gdb.cp/virtfunc.cc @@ -182,19 +182,9 @@ void test_calls() TEST(pEe->D::vg(), 102); printf("Did %d tests, of which %d failed.\n", all_count, failed_count); } -#ifdef usestubs -extern "C" { - void set_debug_traps(); - void breakpoint(); -}; -#endif int main() { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif init(); e.w = 7; diff --git a/gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp b/gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp index c356ab1..ffb2131 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp +++ b/gdb/testsuite/gdb.dwarf2/dw2-inline-param.exp @@ -49,9 +49,6 @@ if {$result != 0} { } gdb_load ${binfile} -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} if ![runto "*${break_at}"] { return -1 diff --git a/gdb/testsuite/gdb.hp/gdb.aCC/run.c b/gdb/testsuite/gdb.hp/gdb.aCC/run.c index 6bff81a..b41abab 100644 --- a/gdb/testsuite/gdb.hp/gdb.aCC/run.c +++ b/gdb/testsuite/gdb.hp/gdb.aCC/run.c @@ -42,10 +42,6 @@ int main (int argc, char *argv[], char **envp) char *argv[], **envp;*/ { int factorial (int); -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif #ifdef FAKEARGV printf ("%d\n", factorial (1)); #else diff --git a/gdb/testsuite/gdb.hp/gdb.base-hp/callfwmall.c b/gdb/testsuite/gdb.hp/gdb.base-hp/callfwmall.c index 67edb8b..f22a248 100644 --- a/gdb/testsuite/gdb.hp/gdb.base-hp/callfwmall.c +++ b/gdb/testsuite/gdb.hp/gdb.base-hp/callfwmall.c @@ -180,10 +180,6 @@ int main() main () #endif { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif t_structs_c(struct_val1); return 0; diff --git a/gdb/testsuite/gdb.hp/gdb.compat/xdb0.c b/gdb/testsuite/gdb.hp/gdb.compat/xdb0.c index fa5c76f..4cd29c3 100644 --- a/gdb/testsuite/gdb.hp/gdb.compat/xdb0.c +++ b/gdb/testsuite/gdb.hp/gdb.compat/xdb0.c @@ -3,10 +3,7 @@ main () { int x; -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif + x = 0; foo (x++); foo (x++); diff --git a/gdb/testsuite/gdb.hp/gdb.compat/xdb1.exp b/gdb/testsuite/gdb.hp/gdb.compat/xdb1.exp index ebec539..66bd0ff 100644 --- a/gdb/testsuite/gdb.hp/gdb.compat/xdb1.exp +++ b/gdb/testsuite/gdb.hp/gdb.compat/xdb1.exp @@ -22,8 +22,6 @@ if $tracelevel then { if { [skip_hp_tests] } then { continue } -global usestubs - # # test running programs # diff --git a/gdb/testsuite/gdb.mi/mi-pending.exp b/gdb/testsuite/gdb.mi/mi-pending.exp index 6693c24..9058bc6 100644 --- a/gdb/testsuite/gdb.mi/mi-pending.exp +++ b/gdb/testsuite/gdb.mi/mi-pending.exp @@ -56,10 +56,6 @@ mi_gdb_reinitialize_dir $srcdir/$subdir mi_gdb_load ${binfile} mi_load_shlibs $lib_sl -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - # Set pending breakpoint via MI mi_gdb_test "-break-insert -f pendfunc1" \ ".*\\^done,bkpt=\{number=\"1\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"\",pending=\"pendfunc1\",times=\"0\",original-location=\"pendfunc1\"\}"\ diff --git a/gdb/testsuite/gdb.reverse/consecutive-reverse.c b/gdb/testsuite/gdb.reverse/consecutive-reverse.c index 8044b52..a3dd5c9 100644 --- a/gdb/testsuite/gdb.reverse/consecutive-reverse.c +++ b/gdb/testsuite/gdb.reverse/consecutive-reverse.c @@ -29,10 +29,6 @@ int foo () main() { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif foo (); } /* end of main */ diff --git a/gdb/testsuite/gdb.reverse/sigall-reverse.c b/gdb/testsuite/gdb.reverse/sigall-reverse.c index 494f833..a29a90e 100644 --- a/gdb/testsuite/gdb.reverse/sigall-reverse.c +++ b/gdb/testsuite/gdb.reverse/sigall-reverse.c @@ -1168,11 +1168,6 @@ return 0; int main () { -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif - #ifdef SIG_SETMASK /* Ensure all the signals aren't blocked. The environment in which the testsuite is run may have blocked some diff --git a/gdb/testsuite/gdb.reverse/until-reverse.c b/gdb/testsuite/gdb.reverse/until-reverse.c index 52ec05f..b847197 100644 --- a/gdb/testsuite/gdb.reverse/until-reverse.c +++ b/gdb/testsuite/gdb.reverse/until-reverse.c @@ -78,10 +78,6 @@ int argc; char *argv[], **envp; #endif { -#ifdef usestubs - set_debug_traps(); /* set breakpoint 5 here */ - breakpoint(); -#endif if (argc == 12345) { /* an unlikely value < 2^16, in case uninited */ /* set breakpoint 6 here */ fprintf (stderr, "usage: factorial \n"); return 1; diff --git a/gdb/testsuite/gdb.reverse/watch-reverse.c b/gdb/testsuite/gdb.reverse/watch-reverse.c index 201115c..e2531b9 100644 --- a/gdb/testsuite/gdb.reverse/watch-reverse.c +++ b/gdb/testsuite/gdb.reverse/watch-reverse.c @@ -139,10 +139,6 @@ func4 () int main () { -#ifdef usestubs - set_debug_traps(); - breakpoint(); -#endif struct1.val = 1; struct2.val = 2; ptr1 = &struct1; diff --git a/gdb/testsuite/gdb.trace/actions.c b/gdb/testsuite/gdb.trace/actions.c index 270e1e1..04ae43f 100644 --- a/gdb/testsuite/gdb.trace/actions.c +++ b/gdb/testsuite/gdb.trace/actions.c @@ -119,11 +119,6 @@ main (argc, argv, envp) int i; unsigned long myparms[10]; -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif - begin (); for (i = 0; i < sizeof (myparms) / sizeof (myparms[0]); i++) myparms[i] = i; diff --git a/gdb/testsuite/gdb.trace/circ.c b/gdb/testsuite/gdb.trace/circ.c index 98a2ce6..e83eb04 100644 --- a/gdb/testsuite/gdb.trace/circ.c +++ b/gdb/testsuite/gdb.trace/circ.c @@ -61,11 +61,6 @@ main (argc, argv, envp) { int i; -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif - begin (); for (i = 0; i < sizeof(testload) / sizeof(testload[0]); i++) testload[i] = i + 1; @@ -83,8 +78,5 @@ main (argc, argv, envp) end (); -#ifdef usestubs - breakpoint (); -#endif return 0; } diff --git a/gdb/testsuite/gdb.trace/circ.exp b/gdb/testsuite/gdb.trace/circ.exp index f02c9d0..13dfdb0 100644 --- a/gdb/testsuite/gdb.trace/circ.exp +++ b/gdb/testsuite/gdb.trace/circ.exp @@ -192,10 +192,6 @@ gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load $binfile -if [target_info exists gdb_stub] { - gdb_step_for_stub; -} - gdb_test_no_output "set circular-trace-buffer on" \ "set circular-trace-buffer on" diff --git a/gdb/testsuite/gdb.trace/collection.c b/gdb/testsuite/gdb.trace/collection.c index 5901baf..3eac221 100644 --- a/gdb/testsuite/gdb.trace/collection.c +++ b/gdb/testsuite/gdb.trace/collection.c @@ -225,11 +225,6 @@ main (argc, argv, envp) test_struct mystruct; int myarray[4]; -#ifdef usestubs - set_debug_traps (); - breakpoint (); -#endif - begin (); /* Assign collectable values to global variables. */ l0 = s0 = c0 = 0; l1 = s1 = c1 = 1; diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index 1a9270d..633dc26 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -268,13 +268,6 @@ proc gdb_run_cmd {args} { } } } - if [target_info exists gdb_stub] { - gdb_expect 60 { - -re "$gdb_prompt $" { - send_gdb "continue\n" - } - } - } return } @@ -456,26 +449,12 @@ proc runto { function args } { } # Ask gdb to run until we hit a breakpoint at main. -# The case where the target uses stubs has to be handled -# specially--if it uses stubs, assuming we hit -# breakpoint() and just step out of the function. # # N.B. This function deletes all existing breakpoints. # If you don't want that, use gdb_start_cmd. proc runto_main { } { - global gdb_prompt - global decimal - - if ![target_info exists gdb_stub] { - return [runto main] - } - - delete_breakpoints - - gdb_step_for_stub; - - return 1 + return [runto main] } ### Continue, and expect to hit a breakpoint. @@ -2294,14 +2273,8 @@ proc gdb_compile {source dest type options} { } set options $new_options - if [target_info exists gdb_stub] { - set options2 { "additional_flags=-Dusestubs" } - lappend options "libs=[target_info gdb_stub]"; - set options [concat $options2 $options] - } if [target_info exists is_vxworks] { set options2 { "additional_flags=-Dvxworks" } - lappend options "libs=[target_info gdb_stub]"; set options [concat $options2 $options] } if [info exists GDB_TESTCASE_OPTIONS] { @@ -3166,91 +3139,6 @@ proc setup_kfail_for_target { PR target } { } } -# Test programs for embedded (often "bare board") systems sometimes use a -# "stub" either embedded in the test program itself or in the boot rom. -# The job of the stub is to implement the remote protocol to communicate -# with gdb and control the inferior. To initiate the remote protocol -# session with gdb the stub needs to be given control by the inferior. -# They do this by calling a function that typically triggers a trap -# from main that transfers control to the stub. -# The purpose of this function, gdb_step_for_stub, is to step out of -# that function ("breakpoint" in the example below) and back into main. -# -# Example: -# -# int -# main () -# { -# #ifdef usestubs -# set_debug_traps (); /* install trap handlers for stub */ -# breakpoint (); /* trigger a trap to give the stub control */ -# #endif -# /* test program begins here */ -# } -# -# Note that one consequence of this design is that a breakpoint on "main" -# does not Just Work (because if the target could stop there you still have -# to step past the calls to set_debug_traps,breakpoint). - -proc gdb_step_for_stub { } { - global gdb_prompt; - - if ![target_info exists gdb,use_breakpoint_for_stub] { - if [target_info exists gdb_stub_step_command] { - set command [target_info gdb_stub_step_command]; - } else { - set command "step"; - } - send_gdb "${command}\n"; - set tries 0; - gdb_expect 60 { - -re "(main.* at |.*in .*start).*$gdb_prompt" { - return; - } - -re ".*$gdb_prompt" { - incr tries; - if { $tries == 5 } { - fail "stepping out of breakpoint function"; - return; - } - send_gdb "${command}\n"; - exp_continue; - } - default { - fail "stepping out of breakpoint function"; - return; - } - } - } - send_gdb "where\n"; - gdb_expect { - -re "main\[^\r\n\]*at \(\[^:]+\):\(\[0-9\]+\)" { - set file $expect_out(1,string); - set linenum [expr $expect_out(2,string) + 1]; - set breakplace "${file}:${linenum}"; - } - default {} - } - send_gdb "break ${breakplace}\n"; - gdb_expect 60 { - -re "Breakpoint (\[0-9\]+) at.*$gdb_prompt" { - set breakpoint $expect_out(1,string); - } - -re "Breakpoint (\[0-9\]+): file.*$gdb_prompt" { - set breakpoint $expect_out(1,string); - } - default {} - } - send_gdb "continue\n"; - gdb_expect 60 { - -re "Breakpoint ${breakpoint},.*$gdb_prompt" { - gdb_test "delete $breakpoint" ".*" ""; - return; - } - default {} - } -} - # gdb_get_line_number TEXT [FILE] # # Search the source file FILE, and return the line number of the @@ -3709,10 +3597,6 @@ proc clean_restart { executable } { gdb_start gdb_reinitialize_dir $srcdir/$subdir gdb_load ${binfile} - - if [target_info exists gdb_stub] { - gdb_step_for_stub; - } } # Prepares for testing, by calling build_executable, and then clean_restart. -- 2.7.4