diff options
author | Rebecca Cran | 2021-02-08 07:56:57 +0100 |
---|---|---|
committer | Peter Maydell | 2021-02-11 12:50:13 +0100 |
commit | dc8b18534ea1dcc90d80ad9a61a3b0aa7eb312fb (patch) | |
tree | c53883a976199ab5f328229d5f73da25f1abd8c5 /target/arm/internals.h | |
parent | hw/arm: Remove GPIO from unimplemented NPCM7XX (diff) | |
download | qemu-dc8b18534ea1dcc90d80ad9a61a3b0aa7eb312fb.tar.gz qemu-dc8b18534ea1dcc90d80ad9a61a3b0aa7eb312fb.tar.xz qemu-dc8b18534ea1dcc90d80ad9a61a3b0aa7eb312fb.zip |
target/arm: Add support for FEAT_DIT, Data Independent Timing
Add support for FEAT_DIT. DIT (Data Independent Timing) is a required
feature for ARMv8.4. Since virtual machine execution is largely
nondeterministic and TCG is outside of the security domain, it's
implemented as a NOP.
Signed-off-by: Rebecca Cran <rebecca@nuviainc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20210208065700.19454-2-rebecca@nuviainc.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm/internals.h')
-rw-r--r-- | target/arm/internals.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/target/arm/internals.h b/target/arm/internals.h index 448982dd2f..b251fe4450 100644 --- a/target/arm/internals.h +++ b/target/arm/internals.h @@ -1228,6 +1228,9 @@ static inline uint32_t aarch32_cpsr_valid_mask(uint64_t features, if (isar_feature_aa32_pan(id)) { valid |= CPSR_PAN; } + if (isar_feature_aa32_dit(id)) { + valid |= CPSR_DIT; + } return valid; } @@ -1246,6 +1249,9 @@ static inline uint32_t aarch64_pstate_valid_mask(const ARMISARegisters *id) if (isar_feature_aa64_uao(id)) { valid |= PSTATE_UAO; } + if (isar_feature_aa64_dit(id)) { + valid |= PSTATE_DIT; + } if (isar_feature_aa64_mte(id)) { valid |= PSTATE_TCO; } |