]> git.ipfire.org Git - thirdparty/qemu.git/commit
target/arm/hvf: sign extend the data for a load operation when SSE=1
authorJoelle van Dyne <j@getutm.app>
Mon, 24 Feb 2025 18:41:23 +0000 (10:41 -0800)
committerMichael Tokarev <mjt@tls.msk.ru>
Sat, 22 Mar 2025 07:52:51 +0000 (10:52 +0300)
commit951eedcca1629f2daf132f60e7b7b0f6823b0ede
treecdb97168cca128c78dd8e25fee72b8ef28530e08
parent026af9a07bcf17abe98ddf774e376f2263074991
target/arm/hvf: sign extend the data for a load operation when SSE=1

In the syndrome value for a data abort, bit 21 is SSE, which is
set to indicate that the abort was on a sign-extending load. When
we handle the data abort from the guest via address_space_read(),
we forgot to handle this and so would return the wrong value if
the guest did a sign-extending load to an MMIO region. Add the
sign-extension of the returned data.

Cc: qemu-stable@nongnu.org
Signed-off-by: Joelle van Dyne <j@getutm.app>
Message-id: 20250224184123.50780-1-j@getutm.app
[PMM: Drop an unnecessary check on 'len'; expand commit message]
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
(cherry picked from commit 12c365315ab25d364cff24dfeea8d7ff1e752b9f)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
target/arm/hvf/hvf.c