diff options
author | Richard Henderson | 2020-06-26 05:31:21 +0200 |
---|---|---|
committer | Peter Maydell | 2020-06-26 15:31:12 +0200 |
commit | 0a405be2b8fd9506a009b10d7d2d98c394b36db6 (patch) | |
tree | bb36a1252700ba1ff18f4c4b77ac538a0e05730e /target/arm/internals.h | |
parent | target/arm: Move regime_tcr to internals.h (diff) | |
download | qemu-0a405be2b8fd9506a009b10d7d2d98c394b36db6.tar.gz qemu-0a405be2b8fd9506a009b10d7d2d98c394b36db6.tar.xz qemu-0a405be2b8fd9506a009b10d7d2d98c394b36db6.zip |
target/arm: Add gen_mte_check1
Replace existing uses of check_data_tbi in translate-a64.c that
perform a single logical memory access. Leave the helper blank
for now to reduce the patch size.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20200626033144.790098-24-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm/internals.h')
-rw-r--r-- | target/arm/internals.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/target/arm/internals.h b/target/arm/internals.h index 7c9abbabc9..fb92ef6b84 100644 --- a/target/arm/internals.h +++ b/target/arm/internals.h @@ -1310,6 +1310,14 @@ void arm_log_exception(int idx); #define LOG2_TAG_GRANULE 4 #define TAG_GRANULE (1 << LOG2_TAG_GRANULE) +/* Bits within a descriptor passed to the helper_mte_check* functions. */ +FIELD(MTEDESC, MIDX, 0, 4) +FIELD(MTEDESC, TBI, 4, 2) +FIELD(MTEDESC, TCMA, 6, 2) +FIELD(MTEDESC, WRITE, 8, 1) +FIELD(MTEDESC, ESIZE, 9, 5) +FIELD(MTEDESC, TSIZE, 14, 10) /* mte_checkN only */ + static inline int allocation_tag_from_addr(uint64_t ptr) { return extract64(ptr, 56, 4); |