]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/testsuite/gdb.base/break-entry.exp
Update copyright year range in all GDB files
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.base / break-entry.exp
index 13605042e6e7d042de6d2624c4821006808df727..4f350edb2533d84037090fe14497cd5e4ace13c1 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2010 Free Software Foundation, Inc.
+# Copyright (C) 2010-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # Test inferior can stop at its very first instruction, usually "_start".
 # Dynamic executables have first instruction in ld.so.
 
-set testfile break-entry
-if { [prepare_for_testing ${testfile}.exp ${testfile} start.c {additional_flags=-static}] } {
+# If we're using a stub, we'll already be debugging a live program and
+# stopped at the entry point when we connect, and so the runto below
+# will issue a "continue", which always skips any breakpoint at PC.
+# When testing with a native target (or some other target that supports
+# "run"), runto will do a "run", which first creates the process,
+# leaving the PC at the entry point, just like the stub case, but then
+# continues the process with the equivalent of "jump *$PC", which
+# triggers any breakpoint at $PC.  The latter is what we want to test.
+
+standard_testfile start.c
+
+if [use_gdb_stub] {
+    untested "skipping tests due to use_gdb_stub"
+    return
+}
+
+if { [prepare_for_testing "failed to prepare" ${testfile} $srcfile {additional_flags=-static}] } {
     return -1
 }
 
@@ -30,7 +45,7 @@ gdb_test_multiple $test $test {
     }
 }
 if {$entry == ""} {
-    untested ${testfile}.exp
+    untested "no entrypoint"
     return
 }