qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/23] target/arm: Convert exception, system, loads and stores to decodetree
@ 2023-06-11 16:00 Peter Maydell
  2023-06-11 16:00 ` [PATCH v2 01/23] target/arm: Fix return value from LDSMIN/LDSMAX 8/16 bit atomics Peter Maydell
                   ` (22 more replies)
  0 siblings, 23 replies; 31+ messages in thread
From: Peter Maydell @ 2023-06-11 16:00 UTC (permalink / raw)
  To: qemu-arm, qemu-devel

This patchseries does more of the conversion of the A64 decoder to
decodetree.  It covers the exception-generation, system, load and
store instructions.

The rebasing of this on top of the atomics work turned out
hairy enough that I thought it was better to send this out
as a v2. There ae also a couple of new patches at the start
that fix minor things before we start moving the code around.

changes v1->v2:
 * patch 2 is new (but already sent separately and reviewed)
 * patches 3 and 4 are new (fixes to recent refactoring)
 * patch 14 (ld/st pair) is structurally the same as the old
   patch 11, but the underlying code changed enough in the
   atomics work that I figured it was worth getting it
   re-reviewed.
 * The very cautious might also want to re-check some of
   the other load/store patches, but the changes there were
   rather less, so I have retained the R-by tags
 * patch 22 (ld/st single struct) decode reworked to follow
   RTH's suggestion

Patches needing review: 3, 4, 14, 22

thanks
-- PMM

Peter Maydell (23):
  target/arm: Fix return value from LDSMIN/LDSMAX 8/16 bit atomics
  target/arm: Return correct result for LDG when ATA=0
  target/arm: Pass memop to gen_mte_check1_mmuidx() in reg_imm9 decode
  target/arm: Consistently use finalize_memop_asimd() for ASIMD
    loads/stores
  target/arm: Convert hint instruction space to decodetree
  target/arm: Convert barrier insns to decodetree
  target/arm: Convert CFINV, XAFLAG and AXFLAG to decodetree
  target/arm: Convert MSR (immediate) to decodetree
  target/arm: Convert MSR (reg), MRS, SYS, SYSL to decodetree
  target/arm: Convert exception generation instructions to decodetree
  target/arm: Convert load/store exclusive and ordered to decodetree
  target/arm: Convert LDXP, STXP, CASP, CAS to decodetree
  target/arm: Convert load reg (literal) group to decodetree
  target/arm: Convert load/store-pair to decodetree
  target/arm: Convert ld/st reg+imm9 insns to decodetree
  target/arm: Convert LDR/STR with 12-bit immediate to decodetree
  target/arm: Convert LDR/STR reg+reg to decodetree
  target/arm: Convert atomic memory ops to decodetree
  target/arm: Convert load (pointer auth) insns to decodetree
  target/arm: Convert LDAPR/STLR (imm) to decodetree
  target/arm: Convert load/store (multiple structures) to decodetree
  target/arm: Convert load/store single structure to decodetree
  target/arm: Convert load/store tags insns to decodetree

 target/arm/tcg/a64.decode      |  403 ++++
 target/arm/tcg/translate-a64.c | 3322 ++++++++++++++------------------
 2 files changed, 1883 insertions(+), 1842 deletions(-)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2023-06-14  5:36 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-11 16:00 [PATCH v2 00/23] target/arm: Convert exception, system, loads and stores to decodetree Peter Maydell
2023-06-11 16:00 ` [PATCH v2 01/23] target/arm: Fix return value from LDSMIN/LDSMAX 8/16 bit atomics Peter Maydell
2023-06-11 16:00 ` [PATCH v2 02/23] target/arm: Return correct result for LDG when ATA=0 Peter Maydell
2023-06-11 16:00 ` [PATCH v2 03/23] target/arm: Pass memop to gen_mte_check1_mmuidx() in reg_imm9 decode Peter Maydell
2023-06-12  9:31   ` Philippe Mathieu-Daudé
2023-06-14  5:18   ` Richard Henderson
2023-06-11 16:00 ` [PATCH v2 04/23] target/arm: Consistently use finalize_memop_asimd() for ASIMD loads/stores Peter Maydell
2023-06-14  5:20   ` Richard Henderson
2023-06-11 16:00 ` [PATCH v2 05/23] target/arm: Convert hint instruction space to decodetree Peter Maydell
2023-06-11 16:00 ` [PATCH v2 06/23] target/arm: Convert barrier insns " Peter Maydell
2023-06-12  9:37   ` Philippe Mathieu-Daudé
2023-06-11 16:00 ` [PATCH v2 07/23] target/arm: Convert CFINV, XAFLAG and AXFLAG " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 08/23] target/arm: Convert MSR (immediate) " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 09/23] target/arm: Convert MSR (reg), MRS, SYS, SYSL " Peter Maydell
2023-06-12 10:37   ` Philippe Mathieu-Daudé
2023-06-11 16:00 ` [PATCH v2 10/23] target/arm: Convert exception generation instructions " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 11/23] target/arm: Convert load/store exclusive and ordered " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 12/23] target/arm: Convert LDXP, STXP, CASP, CAS " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 13/23] target/arm: Convert load reg (literal) group " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 14/23] target/arm: Convert load/store-pair " Peter Maydell
2023-06-14  5:30   ` Richard Henderson
2023-06-11 16:00 ` [PATCH v2 15/23] target/arm: Convert ld/st reg+imm9 insns " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 16/23] target/arm: Convert LDR/STR with 12-bit immediate " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 17/23] target/arm: Convert LDR/STR reg+reg " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 18/23] target/arm: Convert atomic memory ops " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 19/23] target/arm: Convert load (pointer auth) insns " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 20/23] target/arm: Convert LDAPR/STLR (imm) " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 21/23] target/arm: Convert load/store (multiple structures) " Peter Maydell
2023-06-11 16:00 ` [PATCH v2 22/23] target/arm: Convert load/store single structure " Peter Maydell
2023-06-14  5:35   ` Richard Henderson
2023-06-11 16:00 ` [PATCH v2 23/23] target/arm: Convert load/store tags insns " Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).