Re: gdb support for SME-without-SVE ?

Simon Marchi via Gdb
2026-01-27T21:28:37Z

On 2026-01-27 16:23, Peter Maydell via Gdb wrote:
> On Tue, 27 Jan 2026 at 11:31, Peter Maydell <peter.maydell@linaro.org> 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