]> git.ipfire.org Git - thirdparty/qemu.git/commit
target/arm: Make DisasContext.{fp, sve}_access_checked tristate
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 7 Mar 2025 19:04:14 +0000 (11:04 -0800)
committerMichael Tokarev <mjt@tls.msk.ru>
Sat, 22 Mar 2025 07:52:51 +0000 (10:52 +0300)
commit8691abc96438c1fc8f75ba45cd84a54060b31489
treee5e91bbcfc76affa332d9d295d4feed07f8f339e
parentc06e9d5d4c66afc91c6b652c28caf30cbe61a3f4
target/arm: Make DisasContext.{fp, sve}_access_checked tristate

The check for fp_excp_el in assert_fp_access_checked is
incorrect.  For SME, with StreamingMode enabled, the access
is really against the streaming mode vectors, and access
to the normal fp registers is allowed to be disabled.
C.f. sme_enabled_check.

Convert sve_access_checked to match, even though we don't
currently check the exception state.

Cc: qemu-stable@nongnu.org
Fixes: 3d74825f4d6 ("target/arm: Add SME enablement checks")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20250307190415.982049-2-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
(cherry picked from commit 298a04998fa4a6dc977abe9234d98dfcdab98423)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
target/arm/tcg/translate-a64.c
target/arm/tcg/translate-a64.h
target/arm/tcg/translate.h