diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2023-10-30 17:39:58 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2023-11-02 13:36:45 +0000 |
commit | a6b2c5a04ddae291417d5bfffaa25b13a7d8cd10 (patch) | |
tree | 5b9fec893dbd1039fd9c32dcb4618f20c7fb91bd | |
parent | c6e1b31bce523710024bca1b529f2117033003a7 (diff) | |
download | qemu-a6b2c5a04ddae291417d5bfffaa25b13a7d8cd10.zip qemu-a6b2c5a04ddae291417d5bfffaa25b13a7d8cd10.tar.gz qemu-a6b2c5a04ddae291417d5bfffaa25b13a7d8cd10.tar.bz2 |
target/arm: Enable FEAT_MOPS insns in user-mode emulation
In user-mode emulation, we need to set the SCTLR_EL1.MSCEn
bit to avoid all the FEAT_MOPS insns UNDEFing.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20231030174000.3792225-2-peter.maydell@linaro.org
-rw-r--r-- | target/arm/cpu.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/target/arm/cpu.c b/target/arm/cpu.c index 954328d..df6496b 100644 --- a/target/arm/cpu.c +++ b/target/arm/cpu.c @@ -296,6 +296,8 @@ static void arm_cpu_reset_hold(Object *obj) env->cp15.sctlr_el[1] |= SCTLR_TSCXT; /* Disable access to Debug Communication Channel (DCC). */ env->cp15.mdscr_el1 |= 1 << 12; + /* Enable FEAT_MOPS */ + env->cp15.sctlr_el[1] |= SCTLR_MSCEN; #else /* Reset into the highest available EL */ if (arm_feature(env, ARM_FEATURE_EL3)) { |