summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2024-01-23 16:03:33 +0000
committerPeter Maydell <peter.maydell@linaro.org>2024-01-26 12:20:03 +0000
commitee0a2e3c9d2991a11c13ffadb15e4d0add43c257 (patch)
tree98fbca219e8a3cd08a0ce3f464eb6ee3aacbfa63
parent18281b257801947bb0b23c02df87d6acd92c6910 (diff)
downloadfocaccia-qemu-ee0a2e3c9d2991a11c13ffadb15e4d0add43c257.tar.gz
focaccia-qemu-ee0a2e3c9d2991a11c13ffadb15e4d0add43c257.zip
target/arm: Fix incorrect aa64_tidcp1 feature check
A typo in the implementation of isar_feature_aa64_tidcp1() means we
were checking the field in the wrong ID register, so we might have
provided the feature on CPUs that don't have it and not provided
it on CPUs that should have it. Correct this bug.

Cc: qemu-stable@nongnu.org
Fixes: 9cd0c0dec97be9 "target/arm: Implement FEAT_TIDCP1"
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2120
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20240123160333.958841-1-peter.maydell@linaro.org
-rw-r--r--target/arm/cpu-features.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/target/arm/cpu-features.h b/target/arm/cpu-features.h
index 028795ff23..7567854db6 100644
--- a/target/arm/cpu-features.h
+++ b/target/arm/cpu-features.h
@@ -773,7 +773,7 @@ static inline bool isar_feature_aa64_hcx(const ARMISARegisters *id)
 
 static inline bool isar_feature_aa64_tidcp1(const ARMISARegisters *id)
 {
-    return FIELD_EX64(id->id_aa64mmfr2, ID_AA64MMFR1, TIDCP1) != 0;
+    return FIELD_EX64(id->id_aa64mmfr1, ID_AA64MMFR1, TIDCP1) != 0;
 }
 
 static inline bool isar_feature_aa64_hafs(const ARMISARegisters *id)