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.)

Changes v1->v2:
 * added missing check that rm!=13 for CSEL decode
 * folded in gen_jmp_tb() fixup for DLS/WLS/LE patch
 * reversed sense of branch in trans_WLS
 * reworked set_fpscr changes as suggested by RTH
 * provide an env->v7m.ltpsize now (always 4 until
   MVE implemented, but it avoids code changes later)

Unreviewed patches: 2, 7, 9, 10

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: Allow M-profile CPUs with FP16 to set FPSCR.FP16
  target/arm: Implement FPSCR.LTPSIZE for M-profile LOB extension

 target/arm/cpu.h               |   8 ++
 target/arm/m-nocp.decode       |  10 +-
 target/arm/t32.decode          |  50 ++++++---
 target/arm/cpu.c               |  38 +++++--
 target/arm/translate.c         | 181 ++++++++++++++++++++++++++++++++-
 target/arm/vfp_helper.c        |  53 ++++++----
 scripts/decodetree.py          |   2 +-
 target/arm/translate-vfp.c.inc |  17 +++-
 8 files changed, 305 insertions(+), 54 deletions(-)

-- 
2.20.1


Reply via email to