]> git.ipfire.org Git - thirdparty/qemu.git/commit
target/arm: Make LD1Q decode and trans fn agree about a->u
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 18 Jul 2025 17:30:32 +0000 (18:30 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 21 Jul 2025 10:15:08 +0000 (11:15 +0100)
commit082933a1f7d3c8e4a9e999c3d284928ef866c67d
treea0d2a4f4072a03e299b56ffd657b74a5c8dbfdcd
parent82a1c5c661ef9ab567b7946b75240963c153a3b0
target/arm: Make LD1Q decode and trans fn agree about a->u

For the LD1Q instruction (gather load of quadwords) we use the
LD1_zprz pattern with MO_128 elements.  At this element size there is
no signed vs unsigned distinction, and we only set the 'u' bit in the
arg_LD1_zprz struct because we share the code and decode struct with
smaller element sizes.

However, we set u=0 in the decode pattern line but then accidentally
asserted that it was 1 in the trans function.  Since our usual convention
is that the "default" is unsigned and we only mark operations as signed
when they really do need to extend, change the decode pattern line to
set u=1 to match the assert.

Fixes: d2aa9a804ee6 ("target/arm: Implement LD1Q, ST1Q for SVE2p1")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20250718173032.2498900-11-peter.maydell@linaro.org
target/arm/tcg/sve.decode