]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
target/arm: Enable FEAT_MOPS for CPU 'max'
authorPeter Maydell <peter.maydell@linaro.org>
Tue, 12 Sep 2023 14:04:34 +0000 (15:04 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Thu, 21 Sep 2023 15:07:14 +0000 (16:07 +0100)
Enable FEAT_MOPS on the AArch64 'max' CPU, and add it to
the list of features we implement.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230912140434.1333369-13-peter.maydell@linaro.org

docs/system/arm/emulation.rst
linux-user/elfload.c
target/arm/tcg/cpu64.c

index 1fb6a2e8c3e9223d33bea8111ca91989b3452a8e..965cbf84c519453b02eaab656137cc03f9583708 100644 (file)
@@ -58,6 +58,7 @@ the following architecture extensions:
 - FEAT_LSE (Large System Extensions)
 - FEAT_LSE2 (Large System Extensions v2)
 - FEAT_LVA (Large Virtual Address space)
+- FEAT_MOPS (Standardization of memory operations)
 - FEAT_MTE (Memory Tagging Extension)
 - FEAT_MTE2 (Memory Tagging Extension)
 - FEAT_MTE3 (MTE Asymmetric Fault Handling)
index 203a2b790d59fc681d8a9dade9c3c24f6a74fafc..db75cd4b33fde5a3a9015ffaa8a500456ad26e0e 100644 (file)
@@ -816,6 +816,7 @@ uint32_t get_elf_hwcap2(void)
     GET_FEATURE_ID(aa64_sme_i16i64, ARM_HWCAP2_A64_SME_I16I64);
     GET_FEATURE_ID(aa64_sme_fa64, ARM_HWCAP2_A64_SME_FA64);
     GET_FEATURE_ID(aa64_hbc, ARM_HWCAP2_A64_HBC);
+    GET_FEATURE_ID(aa64_mops, ARM_HWCAP2_A64_MOPS);
 
     return hwcaps;
 }
index 57abaea00cd78ef8ff3fb3c3c5a5ff0f44ce5da2..68928e5127201f1b13c85908cfb7cb4d67e019d2 100644 (file)
@@ -1028,6 +1028,7 @@ void aarch64_max_tcg_initfn(Object *obj)
     cpu->isar.id_aa64isar1 = t;
 
     t = cpu->isar.id_aa64isar2;
+    t = FIELD_DP64(t, ID_AA64ISAR2, MOPS, 1);     /* FEAT_MOPS */
     t = FIELD_DP64(t, ID_AA64ISAR2, BC, 1);      /* FEAT_HBC */
     cpu->isar.id_aa64isar2 = t;