blob: 43f6ce6319399dd8bd77678737cedfc1d7e38eca (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
Variation of SVE register size (qemu-user-aarch64)
Specification of ARMv8-A SVE extention allows various values for the size of the SVE register. On the other hand, it seems that the current qemu-aarch64 supports only the maximum length of 2048 bits as the SVE register size. I am writing an assembler program for a CPU that is compliant with ARMv8-A + SVE and has a 512-bit SVE register, but when this is run with qemu-user-aarch64, a 2048-bit load / store instruction is executed This causes a segmentation fault. Shouldn't qeum-user-aarch64 have an option to specify the SVE register size?
This is already managed by a cpu property.
0df9142d27d5 ("target/arm/cpu64: max cpu: Introduce sve<N> properties")
See docs/arm-cpu-features.rst
Try "-cpu max,sve512=on".
Note also that the vector length in SVE is not fixed -- you should be writing your guest code to support arbitrary vector lengths, because otherwise it will not run on all SVE-supporting CPUs.
Thank you for your kind advice. I'll try it.
|