+Zhao/Paolo

On 27/2/26 23:39, Pierrick Bouvier wrote:
On 2/27/26 1:39 PM, Philippe Mathieu-Daudé wrote:
Generic fix for a latent bug reported by Florian:
https://lore.kernel.org/qemu-devel/e44df309- [email protected]/

Use the 'regnum' XML tag for feature base register index
(after fixing the incorrect m68k FPU ones).

Philippe Mathieu-Daudé (4):
   gdbstub: Have scripts/feature_to_c.py generate more verbose output
   gdbstub: Make base register explicit in m68k GDB XML files
   gdbstub: Emit base_register index in GDBFeature entries
   gdbstub: Remove @g_pos argument in gdb_register_coprocessor()

  include/exec/gdbstub.h     |  4 ++--
  gdbstub/gdbstub.c          | 16 ++++++----------
  target/arm/gdbstub.c       | 21 ++++++++-------------
  target/arm/gdbstub64.c     | 19 +++++++------------
  target/hexagon/cpu.c       |  2 +-
  target/i386/gdbstub.c      |  8 +++-----
  target/loongarch/gdbstub.c |  6 +++---
  target/m68k/helper.c       |  4 ++--
  target/microblaze/cpu.c    |  3 +--
  target/ppc/gdbstub.c       | 11 +++++------
  target/riscv/gdbstub.c     | 18 ++++++------------
  target/s390x/gdbstub.c     | 15 +++++++--------
  target/sparc/gdbstub.c     | 12 ++++--------
  gdb-xml/cf-fp.xml          |  2 +-
  gdb-xml/m68k-fp.xml        |  2 +-
  scripts/feature_to_c.py    | 14 +++++++++-----
  16 files changed, 66 insertions(+), 91 deletions(-)


See some check-tcg failures:
https://github.com/p-b-o/qemu-ci/actions/runs/22505136358/job/65203283939

I ran check-tcg on a user-only build... And neglected system binaries.
Sigh. Thanks for testing / noticing.

Per commit f46e5073a8a ("i386/gdbstub: Add APX support for gdbstub"),
the gdb-xml/i386-64bit-apx.xml file comes from GDB, but I can not find
it there...

https://sourceware.org/git/?p=binutils-gdb.git;a=tree;f=gdb/features/i386;h=524dad125c554f6210e8987f141383b98ec606cf;hb=refs/tags/binutils-2_46

Maybe it has been generated manually like the m68k one? In that case
it could miss the @regnum tag, and the fix could be as easy as:

-- >8 --
diff --git a/gdb-xml/i386-64bit-apx.xml b/gdb-xml/i386-64bit-apx.xml
index 11a4ec67cae..34cd501881f 100644
--- a/gdb-xml/i386-64bit-apx.xml
+++ b/gdb-xml/i386-64bit-apx.xml
@@ -9,3 +9,3 @@
 <feature name="org.gnu.gdb.i386.apx">
-  <reg name="r16" bitsize="64" type="int64"/>
+  <reg name="r16" bitsize="64" type="int64" regnum="16"/>
   <reg name="r17" bitsize="64" type="int64"/>
---

But I have no clue, it is too late for me to look at GDB source code
so I'll defer to Zhao / Paolo and revisit after the week-end.

Thanks,

Phil.

Reply via email to