Files
binutils-gdb/gdb/testsuite/gdb.arch/amd64-entry-value-paramref.exp
Tom de Vries 81a7a72f67 [gdb/testsuite] Fix gdb.arch/amd64*.exp with local-remote-host-native.exp
There's a number of gdb.arch/amd64*.exp test-cases that fail with host+target
board local-remote-host-native.exp because of using a .S file, generated from
a .c file.

If a test-case compiles the .S file when executing on remote host,
the .S file is already copied from build to host, such that it's available for
the compiler.

But that's not the case for the .c file, which is needed by gdb to show a
source line:
...
(gdb) continue^M
Continuing.^M
^M
Breakpoint 2, fn2 (y=y@entry=25, x=x@entry=6) at amd64-entry-value-inline.c:32^M
32      in gdb.arch/amd64-entry-value-inline.c^M
(gdb) FAIL: gdb.arch/amd64-entry-value-inline.exp: continue to breakpoint: \
  break-here
...

Fix this by using "gdb_remote_download host <.c file>".

Tested on x86_64-linux, with host+target board local-remote-host-native.
2023-03-15 16:38:03 +01:00

38 lines
1.2 KiB
Plaintext

# Copyright (C) 2014-2023 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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
standard_testfile .S .cc
require is_x86_64_m64_target
# Make .cc available on the host.
if [is_remote host] {
gdb_remote_download host $srcdir/$subdir/$srcfile2
}
if { [prepare_for_testing_full "failed to prepare" \
[list $testfile "c++" $srcfile {}]] } {
return -1
}
if ![runto_main] {
return -1
}
gdb_breakpoint [gdb_get_line_number "break-here" $srcfile2]
gdb_continue_to_breakpoint "break-here" ".* break-here .*"
gdb_test "frame" {bar \(ref=@0x[0-9a-f]+: 10, ref@entry=@0x[0-9a-f]+: <optimized out>\) at .*}