Index: gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp |
diff --git a/gdb/testsuite/gdb.go/strings.exp b/gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp |
similarity index 57% |
copy from gdb/testsuite/gdb.go/strings.exp |
copy to gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp |
index a4885a93543ef8db8a4e095732c31992f3bc90ce..23b396c7a04b08026a66f51dffbbaf421388c9bd 100644 |
--- a/gdb/testsuite/gdb.go/strings.exp |
+++ b/gdb/testsuite/gdb.arch/arm-bl-branch-dest.exp |
@@ -1,6 +1,4 @@ |
-# This testcase is part of GDB, the GNU debugger. |
- |
-# Copyright 2012 Free Software Foundation, Inc. |
+# Copyright (C) 2013 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 |
@@ -15,27 +13,25 @@ |
# You should have received a copy of the GNU General Public License |
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
-load_lib "go.exp" |
+if { ![istarget "arm*-*-*"] } { |
+ verbose "Skipping ${gdb_test_file_name}." |
+ return |
+} |
-if { [skip_go_tests] } { continue } |
+standard_testfile |
-standard_testfile .go |
+# We need to load the text segment in a high address. This is because |
+# the bug we are dealing with happened when GDB sign-extended the PC |
+# on ARM, causing the PC to acquire a wrong value. That's why we use |
+# the "-Wl,-Ttext-segment" option compile the binary. |
-if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} {debug go}] } { |
+if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \ |
+ [list debug ldflags=-Wl,-Ttext-segment=0xb0000000]] } { |
return -1 |
} |
-set bp_location1 [gdb_get_line_number "set breakpoint 1 here"] |
- |
-if { [go_runto_main] < 0 } { |
- untested $testfile |
+if { ![runto_main] } { |
return -1 |
} |
-if { [gdb_breakpoint ${srcfile}:${bp_location1}] } { |
- pass "setting breakpoint 1" |
-} |
- |
-gdb_test "cont" "Breakpoint .*:${bp_location1}.*" "Going to first breakpoint" |
- |
-gdb_test {print "abc" + "def"} {.* = "abcdef"} |
+gdb_test "next" "\[0-9\]+\\s+return 0;" |