aboutsummaryrefslogtreecommitdiff
path: root/target/arm
diff options
context:
space:
mode:
authorClaudio Fontana <cfontana@suse.de>2023-02-13 17:29:02 -0300
committerPeter Maydell <peter.maydell@linaro.org>2023-02-16 16:08:38 +0000
commitd55b2a2aa37ab07eed1517791344392b3c147f09 (patch)
treecb3059ce4b1cdf09aeb884e62d00f8ca724564e6 /target/arm
parent0c1aaa66c248b7375112a2d6f5ca3bafaeda0aa5 (diff)
downloadqemu-d55b2a2aa37ab07eed1517791344392b3c147f09.zip
qemu-d55b2a2aa37ab07eed1517791344392b3c147f09.tar.gz
qemu-d55b2a2aa37ab07eed1517791344392b3c147f09.tar.bz2
target/arm: wrap call to aarch64_sve_change_el in tcg_enabled()
Signed-off-by: Claudio Fontana <cfontana@suse.de> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Fabiano Rosas <farosas@suse.de> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm')
-rw-r--r--target/arm/helper.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/target/arm/helper.c b/target/arm/helper.c
index 2d38c3e..07d4100 100644
--- a/target/arm/helper.c
+++ b/target/arm/helper.c
@@ -10827,11 +10827,13 @@ static void arm_cpu_do_interrupt_aarch64(CPUState *cs)
unsigned int cur_el = arm_current_el(env);
int rt;
- /*
- * Note that new_el can never be 0. If cur_el is 0, then
- * el0_a64 is is_a64(), else el0_a64 is ignored.
- */
- aarch64_sve_change_el(env, cur_el, new_el, is_a64(env));
+ if (tcg_enabled()) {
+ /*
+ * Note that new_el can never be 0. If cur_el is 0, then
+ * el0_a64 is is_a64(), else el0_a64 is ignored.
+ */
+ aarch64_sve_change_el(env, cur_el, new_el, is_a64(env));
+ }
if (cur_el < new_el) {
/*