This patchseries implements various minor v8.1M new features, notably the branch-future and low-overhead-loop extensions.
(None of this will get enabled until we have enough to implement a CPU model which has v8.1M, which will be the Cortex-M55, but as usual we can get stuff into the tree gradually.) Patch 1 is a decodetree fix suggested by Richard that is necessary to avoid wrong-decode of the changes to t32.decode by later patches. (Apologies for the accidental mailbombing of the list with stale patches due to a mangled command line on my first attempt at sending this :-( ) thanks -- PMM Peter Maydell (10): decodetree: Fix codegen for non-overlapping group inside overlapping group target/arm: Implement v8.1M NOCP handling target/arm: Implement v8.1M conditional-select insns target/arm: Make the t32 insn[25:23]=111 group non-overlapping target/arm: Don't allow BLX imm for M-profile target/arm: Implement v8.1M branch-future insns (as NOPs) target/arm: Implement v8.1M low-overhead-loop instructions target/arm: Fix has_vfp/has_neon ID reg squashing for M-profile target/arm: Implement FPSCR.LTPSIZE for M-profile LOB extension target/arm: Fix writing to FPSCR.FZ16 on M-profile target/arm/cpu.h | 7 ++ target/arm/m-nocp.decode | 10 ++- target/arm/t32.decode | 50 +++++++---- target/arm/cpu.c | 34 ++++--- target/arm/translate.c | 157 +++++++++++++++++++++++++++++++++ target/arm/vfp_helper.c | 30 +++++-- scripts/decodetree.py | 2 +- target/arm/translate-vfp.c.inc | 17 +++- 8 files changed, 268 insertions(+), 39 deletions(-) -- 2.20.1