From: Bernd Edlinger <bernd.edlinger@hotmail.de>
To: Pedro Alves <pedro@palves.net>, Tom Tromey <tom@tromey.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH 09/12] gdb_target_is_native -> gdb_protocol_is_native
Date: Thu, 9 May 2024 13:54:05 +0200 [thread overview]
Message-ID: <AS8P193MB1285A579AA5810D78017E65DE4E62@AS8P193MB1285.EURP193.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <3a7ddd13-c4f7-4dcd-99d4-2c943195540a@palves.net>
Hi Pedro,
On 5/9/24 11:47, Pedro Alves wrote:
> Hi Bernd,
>
> On 2024-05-09 09:47, Bernd Edlinger wrote:
>
>> Hi Pedro,
>>
>> Sorry, for the late reply.
>>
>> I am testing with riscv-unknown-elf target using simulator.
>> Before this patch I had:
>>
>> PASS: gdb.base/load-command.exp: probe for target native
>> PASS: gdb.base/load-command.exp: check initial value of the_variable
>> PASS: gdb.base/load-command.exp: manually change the_variable
>> PASS: gdb.base/load-command.exp: check manually changed value of the_variable
>> PASS: gdb.base/load-command.exp: reload: re-load binary
>> PASS: gdb.base/load-command.exp: reload: check initial value of the_variable
>>
>> and now
>>
>> UNSUPPORTED: gdb.base/load-command.exp: the native target does not support the load command
>>
>> note: I use RUNTESTFLAGS="--target_board=multi-sim SIM=riscv-unknown-elf-sim"
>> but the test was working fine, because with this target
>> we use target sim, load, and can runto main, inspect variables, etc.
>>
>
> I'm trying to understand how the sim board works, to figure out what is the best course
> of action.
>
> I see that /usr/share/dejagnu/config/sim.exp has:
>
> set_board_info protocol "sim"
>
> but evidently (from your output) nothing sets gdb_protocol.
>
> Where is the code that does "target sim" to connect to the sim inside GDB? I can't seem to find that.
>
I think that file would be used when I run the gcc testsuite,
there I set the path to my riscv-toolchain,
and invoke this in the gcc-build directory:
make check -i RUNTESTFLAGS="--target_board=multi-sim SIM=riscv-unknown-elf-run"
or SIM=qemu-riscv32 for comparison.
But if I run the gdb testsuite I can do the same, but the SIM=parameter I could even
use SIM=true, is only a dummy, it must be executable, but it is not used in the end.
And I believe for gdb the following file is picked up instead:
binutils-gdb/gdb/testsuite/config/sim.exp
where I see:
proc gdb_target_sim { } {
global gdb_prompt
set target_sim_options "[board_info target gdb,target_sim_options]"
send_gdb "target sim $target_sim_options\n"
gdb_expect 60 {
-re "Connected to the simulator.*$gdb_prompt $" {
verbose "Set target to sim"
}
and in the log file of this test case from my reference build which was
from commit 354f8d0a1f98a1ade9b669f9200a9c23d22349fe
this test case looked quite normal:
(gdb) target sim ^M
Connected to the simulator.^M
(gdb) load^M
Loading section .text, size 0x163c lma 10120^M
Loading section .eh_frame, size 0x4 lma 11760^M
Loading section .init_array, size 0x8 lma 12000^M
Loading section .fini_array, size 0x8 lma 12008^M
Loading section .data, size 0x9a0 lma 12010^M
Loading section .sdata, size 0x28 lma 129b0^M
Start address 10120^M
Transfer rate: 65728 bits in <1 sec.^M
(gdb) delete breakpoints^M
(gdb) info breakpoints^M
No breakpoints, watchpoints, tracepoints, or catchpoints.^M
(gdb) break -qualified main^M
warning: Can not parse XML memory map; XML support was disabled at compile time^M
Breakpoint 1 at 0x10200: file ..../binutils-gdb/gdb/testsuite/gdb.base/load-command.c, line 22.^M
(gdb) target sim ^M
Connected to the simulator.^M
(gdb) load^M
Loading section .text, size 0x163c lma 10120^M
Loading section .eh_frame, size 0x4 lma 11760^M
Loading section .init_array, size 0x8 lma 12000^M
Loading section .fini_array, size 0x8 lma 12008^M
Loading section .data, size 0x9a0 lma 12010^M
Loading section .sdata, size 0x28 lma 129b0^M
Start address 10120^M
Transfer rate: 65728 bits in <1 sec.^M
(gdb) run ^M
Starting program: ..../gdb/testsuite/outputs/gdb.base/load-command/load-command ^M
^M
Breakpoint 1, main () at ..../binutils-gdb/gdb/testsuite/gdb.base/load-command.c:22^M
22 return 0;^M
(gdb) maint print target-stack^M
The current target stack is:^M
- sim (simulator)^M
- exec (Local exec file)^M
- None (None)^M
(gdb) PASS: gdb.base/load-command.exp: probe for target native
print/x the_variable^M
$1 = 0x1234^M
(gdb) PASS: gdb.base/load-command.exp: check initial value of the_variable
set the_variable = 0x5555^M
(gdb) PASS: gdb.base/load-command.exp: manually change the_variable
print/x the_variable^M
$2 = 0x5555^M
(gdb) PASS: gdb.base/load-command.exp: check manually changed value of the_variable
...
If you want I can help with step by step instructions
how to setting up a working riscv-cross-toolchain.
Thanks
Bernd.
next prev parent reply other threads:[~2024-05-09 11:52 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-19 15:13 [PATCH 00/12] Fix attach/run failure handling - gdbserver & Windows, document "E.MESSAGE" RSP errors, more Pedro Alves
2024-04-19 15:13 ` [PATCH 01/12] Document conventions for describing packet syntax Pedro Alves
2024-04-19 15:25 ` Eli Zaretskii
2024-04-19 15:42 ` Eli Zaretskii
2024-04-22 19:10 ` Pedro Alves
2024-04-22 19:01 ` Pedro Alves
2024-04-22 19:44 ` Eli Zaretskii
2024-04-19 15:13 ` [PATCH 02/12] Centralize documentation of error and empty RSP responses Pedro Alves
2024-04-19 15:36 ` Eli Zaretskii
2024-04-19 15:42 ` Eli Zaretskii
2024-04-22 19:00 ` Pedro Alves
2024-04-22 19:42 ` Eli Zaretskii
2024-04-19 15:13 ` [PATCH 03/12] Document "E.MESSAGE" RSP errors Pedro Alves
2024-04-19 15:37 ` Eli Zaretskii
2024-04-22 8:50 ` Andrew Burgess
2024-04-22 19:04 ` Pedro Alves
2024-04-26 19:02 ` Pedro Alves
2024-04-26 19:18 ` Eli Zaretskii
2024-04-29 13:42 ` Andrew Burgess
2024-04-19 15:13 ` [PATCH 04/12] Windows: Fix run/attach hang after bad run/attach Pedro Alves
2024-04-19 18:35 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 05/12] Fix "run" failure handling with GDBserver Pedro Alves
2024-04-19 18:41 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 06/12] Improve vRun error reporting Pedro Alves
2024-04-19 18:43 ` Tom Tromey
2024-04-22 11:32 ` Alexandra Petlanova Hajkova
2024-04-19 15:13 ` [PATCH 07/12] Fix "attach" failure handling with GDBserver Pedro Alves
2024-04-19 18:47 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 08/12] gdbserver: Fix vAttach response when attaching is not supported Pedro Alves
2024-04-19 18:48 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 09/12] gdb_target_is_native -> gdb_protocol_is_native Pedro Alves
2024-04-19 18:50 ` Tom Tromey
2024-05-09 8:47 ` Bernd Edlinger
2024-05-09 9:47 ` Pedro Alves
2024-05-09 11:54 ` Bernd Edlinger [this message]
2024-05-09 12:05 ` Pedro Alves
2024-05-09 13:19 ` Bernd Edlinger
2024-05-09 13:31 ` Pedro Alves
2024-05-09 15:01 ` Bernd Edlinger
2024-05-09 15:49 ` Pedro Alves
2024-05-09 18:44 ` Bernd Edlinger
2024-05-10 10:52 ` [pushed] gdb sim testing, set gdb_protocol to "sim" Pedro Alves
2024-04-22 8:25 ` [PATCH 09/12] gdb_target_is_native -> gdb_protocol_is_native Aktemur, Tankut Baris
2024-04-23 12:33 ` Pedro Alves
2024-04-19 15:13 ` [PATCH 10/12] gdb_target_is_remote -> gdb_protocol_is_remote Pedro Alves
2024-04-19 18:56 ` Tom Tromey
2024-04-23 12:30 ` Pedro Alves
2024-04-22 8:30 ` Aktemur, Tankut Baris
2024-04-23 12:47 ` Pedro Alves
2024-04-24 13:48 ` Aktemur, Tankut Baris
2024-04-19 15:13 ` [PATCH 11/12] Eliminate gdb_is_target_remote / gdb_is_target_native & friends Pedro Alves
2024-04-19 18:57 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 12/12] Fix gdb.base/attach.exp --pid test skipping on native-extended-gdbserver Pedro Alves
2024-04-19 18:59 ` Tom Tromey
2024-04-26 20:25 ` [PATCH 00/12] Fix attach/run failure handling - gdbserver & Windows, document "E.MESSAGE" RSP errors, more Pedro Alves
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AS8P193MB1285A579AA5810D78017E65DE4E62@AS8P193MB1285.EURP193.PROD.OUTLOOK.COM \
--to=bernd.edlinger@hotmail.de \
--cc=gdb-patches@sourceware.org \
--cc=pedro@palves.net \
--cc=tom@tromey.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).