[pushed] gdb sim testing, set gdb_protocol to "sim"

Message ID cc5840b4-7277-4df4-8a1b-0e583700cce3@palves.net
State New
Series [pushed] gdb sim testing, set gdb_protocol to "sim" |


Context Check Description
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 warning Patch is already merged
linaro-tcwg-bot/tcwg_gdb_build--master-arm warning Patch is already merged

Commit Message

Pedro Alves May 10, 2024, 10:52 a.m. UTC
  On 2024-05-09 19:44, Bernd Edlinger wrote:

> Ah, okay, thanks for the explanation.

No problem.

> I was probably confused that sim looks an feels like a kind of native target,
> but it supports the load command, and the test cases can read and write
> local files, etc.  Therefore it is of course easy to fix things in the wrong way.
> So I agree with your patch, and that any fallout can be fixed later
> in the test cases when necessary.

Great, cool.  I've merged the patch, as below.

From 78b2db9e7f5a04fdc030a5c65f8873a2c3d3c187 Mon Sep 17 00:00:00 2001
From: Pedro Alves <pedro@palves.net>
Date: Thu, 9 May 2024 13:01:53 +0100
Subject: [PATCH] gdb sim testing, set gdb_protocol to "sim"

Bernd reported that when testing with riscv-unknown-elf target using
the simulator, before commit c7a2ee649115 ("gdb_is_target_native ->
gdb_protocol_is_native"), he 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

The problem is that the sim board/config isn't setting gdb_protocol
anywhere, so gdb_protocol_is_native returns true.

This commit fixes it by making gdb/testsuite/config/sim.exp set
gdb_protocol to "sim".

Reported-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
Tested-by: Bernd Edlinger <bernd.edlinger@hotmail.de>
Change-Id: I48a7afed004a3517b90220674fe5bc856fe7d09a
 gdb/testsuite/config/sim.exp | 4 ++++
 1 file changed, 4 insertions(+)

base-commit: 408bc9c5fc757bd4b8adb1c3d54ecd672beaedb7


diff --git a/gdb/testsuite/config/sim.exp b/gdb/testsuite/config/sim.exp
index 81736d25814..da2780e1d47 100644
--- a/gdb/testsuite/config/sim.exp
+++ b/gdb/testsuite/config/sim.exp
@@ -14,6 +14,10 @@ 
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# If we left this empty, the core of the testsuite would think we were
+# connecting to the native target.
+set_board_info gdb_protocol "sim"
 # gdb_target_sim
 # Set gdb to target the simulator