Re: gdb support for SME-without-SVE ?

Simon Marchi via Gdb <[email protected]> Tue, 27 Jan 2026 16:28:00 -0500
Newsgroups gmane.comp.gdb.devel
Message-ID <[email protected]>

On 2026-01-27 16:23, Peter Maydell via Gdb wrote:
> On Tue, 27 Jan 2026 at 11:31, Peter Maydell <[email protected]> wrote:
>>
>> Hi: is GDB for Arm intended to support configurations where the target
>> CPU has SME but not SVE?
>>
>> We're just implementing support for that in QEMU for using SME
>> with the hvf hypervisor accelerator on macos systems, but when
>> we tried connecting gdb to QEMU gdb crashed:
>>
>>   (gdb) target remote localhost:1234
>>   Remote debugging using localhost:1234
>>   ../../gdb/aarch64-tdep.c:3068: internal-error:
>> aarch64_pseudo_register_type: bad register number 160
>>   A problem internal to GDB has been detected,
>>   further debugging may prove unreliable.
>>   Fatal signal: Abort trap: 6
>>
>> https://lore.kernel.org/qemu-devel/CAAjaMXZLG2aBtStRhyvmdENj1Z+Mx05BmDgyYUoYrc_ZnHwyVQ@mail.gmail.com/
>>
>> Is this a known missing feature in GDB, or is it a config that's
>> supposed to work but we've got the XML register description wrong
>> somehow?
> 
> Further investigation shows that this happened because QEMU was
> accidentally reporting the zN vector registers with a width of
> zero. Does gdb consider "internal error when fed bogus XML" a
> bug, or just a "don't do that then" situation ? (Obviously we're
> going to fix QEMU to not do that ;-))

Yes, it's a bug: bad input should not cause an internal error, there
should be proper error reporting.  It's probably a very low prio bug,
but if you want to contribute a fix we'd be happy to have it :).

I can't help with your other AArch64-specific questions, sorry.

Simon