ARMv8.4 adds the mandatory FEAT_TLBIOS and FEAT_TLBIRANGE. They provides TLBI maintenance instructions that extend to the Outer Shareable domain and that apply to a range of input addresses. Changes from v1 to v2:
o Split new instructions into different ARMCPRegInfo sections, and only add them if ID_AA64ISAR0.TLB indicates they're supported. o Improve the performance of the new code in cputlb.c. Testing: o Ran scripts/checkpatch.pl: functions in exec-all.h fail, but I think that's acceptable? o Built all targets o Ran test code that executed the new instructions o Ran "make test": a qtest-sparc repeatedly timed out, but that's unlikely to be due to my changes. Rebecca Cran (3): target/arm: Add support for FEAT_TLBIRANGE target/arm: Add support for FEAT_TLBIOS target/arm: set ID_AA64ISAR0.TLB to 2 for max AARCH64 CPU type accel/tcg/cputlb.c | 67 ++++ include/exec/exec-all.h | 41 +++ target/arm/cpu.h | 11 + target/arm/cpu64.c | 1 + target/arm/helper.c | 323 ++++++++++++++++++++ 5 files changed, 443 insertions(+) -- 2.26.2