OSDN Git Service

target/arm: Stub arm_hcr_el2_eff for m-profile
authorRichard Henderson <richard.henderson@linaro.org>
Mon, 27 Feb 2023 22:58:30 +0000 (12:58 -1000)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 6 Mar 2023 14:08:12 +0000 (14:08 +0000)
M-profile doesn't have HCR_EL2.  While we could test features
before each call, zero is a generally safe return value to
disable the code in the caller.  This test is required to
avoid an assert in arm_is_secure_below_el3.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230227225832.816605-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/helper.c

index 82c546f..2297626 100644 (file)
@@ -5787,6 +5787,9 @@ uint64_t arm_hcr_el2_eff_secstate(CPUARMState *env, bool secure)
 
 uint64_t arm_hcr_el2_eff(CPUARMState *env)
 {
+    if (arm_feature(env, ARM_FEATURE_M)) {
+        return 0;
+    }
     return arm_hcr_el2_eff_secstate(env, arm_is_secure_below_el3(env));
 }