Changes for v2:
- Reorganize rebuild_hflags_common*.
Trying to force a tail call for these was perhaps just confusing.
Inverting the order means that we can handle initialization once
in a common way, and the lifetime of some of the parameters is
shortened.
- Introduce rebuild_hflags_common_aprofile.
This gives us a common place for the new UINJ test in hflags.
- Introduce check_il_uinj.
This gives us a common place for the new UINJ test in translation.
r~
Richard Henderson (14):
target/arm: Parenthesize tbflags arguments in TBFLAG macros
target/arm: Reorg rebuild_hflags_common*
target/arm: Split out rebuild_hflags_common_aprofile
target/arm: Sort BE_DATA toward the top of rebuild_hflags_a64
target/arm: Move ID_AA64PFR2 feature tests together
target/arm: Add isar_feature_aa64_uinj
target/arm: Drop U from most PSTATE bits
target/arm: Clear PSTATE.UINJ when taking exceptions
target/arm: Widen cpsr_{read,write}_for_spsr_elx to uint64_t
target/arm: Read and write PSTATE.UINJ
target/arm: Add PSTATE.UINJ to tbflags
target/arm: Split out check_il
target/arm: Honor PSTATE.UINJ during translation
target/arm: Enable FEAT_UINJ for -cpu max-v9
docs/system/arm/emulation.rst | 1 +
target/arm/cpu-features.h | 26 +++++---
target/arm/cpu.h | 62 ++++++++---------
target/arm/internals.h | 7 +-
target/arm/tcg/translate.h | 3 +
target/arm/helper.c | 28 ++++++--
target/arm/tcg/cpu64.c | 1 +
target/arm/tcg/helper-a64.c | 2 +
target/arm/tcg/hflags.c | 118 ++++++++++++++++-----------------
target/arm/tcg/translate-a64.c | 8 +--
target/arm/tcg/translate.c | 33 +++++----
11 files changed, 165 insertions(+), 124 deletions(-)
--
2.53.0