We don't actually support Hyp mode yet, but add the correct checks for it to the bad_mode_switch() function for completeness.
Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> --- target-arm/helper.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/target-arm/helper.c b/target-arm/helper.c index 37b5439..4074b97 100644 --- a/target-arm/helper.c +++ b/target-arm/helper.c @@ -5184,6 +5184,9 @@ static int bad_mode_switch(CPUARMState *env, int mode) * allows FIQ mode to be Secure-only. (In v8 this doesn't exist.) */ return 0; + case ARM_CPU_MODE_HYP: + return !arm_feature(env, ARM_FEATURE_EL2) + || arm_current_el(env) < 2 || arm_is_secure(env); case ARM_CPU_MODE_MON: return !arm_is_secure(env); default: -- 1.9.1