DavidSpickett wrote:

> But when we are asking for a single register (e.g. Z0) when not in SSVE/SME 
> mode, this should return an error.

I assume you did what we did for Linux, where the inactive registers do not 
dissapear from the register list but just fail to read.

Linux also returns all 0s for the array register when it's disabled, but this 
is I think more about keeping the register offsets valid than anything 
practical.

> I considered having debugserver report the vector length in granules to match 
> the Linux behavior, but the kernel was giving me the value in bytes and I 
> think it's a more natural representation, so I stuck with it.

To repeat what I said over email to Jason - 

This "vector granule" possibly comes from a time before SVE was finalised and 
we (Arm) did not know exactly how the vector length would be reported. Our 
simulators use this "granule" term and it made it into GDB via that.

The Linux kernel does not report in granules it does the same as Darwin, bytes. 
We (Linaro) added "vg" to be compatible with GDB and QEMU.

Bytes is the more useful reporting unit because the SVE programming question is 
always "how many units of X bytes fit into the vector length".

https://github.com/llvm/llvm-project/pull/119171
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to