diff --git a/qemu/target/arm/helper.c b/qemu/target/arm/helper.c index 71b48aa5..492ffb0b 100644 --- a/qemu/target/arm/helper.c +++ b/qemu/target/arm/helper.c @@ -9384,6 +9384,9 @@ static void arm_cpu_do_interrupt_aarch64_(CPUState *cs) break; } } + if (cpu_isar_feature(aa64_mte, cpu)) { + new_mode |= PSTATE_TCO; + } pstate_write(env, PSTATE_DAIF | new_mode); env->aarch64 = 1;