mbox series

[v2,0/7] target/mips: Convert Loongson LEXT opcodes to decodetree

Message ID 20230831203024.87300-1-philmd@linaro.org
Headers show
Series target/mips: Convert Loongson LEXT opcodes to decodetree | expand

Message

Philippe Mathieu-Daudé Aug. 31, 2023, 8:30 p.m. UTC
Respin of old series...

Since v1 [*]:
- Fixed '!is_double' check (rth)
- Rebased (removing tcg_temp_free calls)
- Simplified MULT[U].G (rth)
- Added R-b

Cover from v1:

  Loongson is next step in the "MIPS decodetree conversion" epic.
  Start with the simplest extension.

  The diffstat addition comes from the TCG functions expanded.
  The code is easier to review now.
  IMO this is also a good template to show how easy a decodetree
  conversion can be (and how nice the .decode file is to review) :P

Please review,

Phil.

Based-on: <20230831201140.85799-1-philmd@linaro.org>
          "target/mips: Simplify Loongson MULTU.G opcode"

[*] https://lore.kernel.org/qemu-devel/20210112215504.2093955-1-f4bug@amsat.org/

Philippe Mathieu-Daudé (7):
  target/mips: Simplify Loongson MULTU.G opcode
  target/mips: Re-introduce OPC_ADDUH_QB_DSP and OPC_MUL_PH_DSP
  target/mips: Convert Loongson DDIV.G opcodes to decodetree
  target/mips: Convert Loongson DIV.G opcodes to decodetree
  target/mips: Convert Loongson [D]DIVU.G opcodes to decodetree
  target/mips: Convert Loongson [D]MOD[U].G opcodes to decodetree
  target/mips: Convert Loongson [D]MULT[U].G opcodes to decodetree

 target/mips/tcg/translate.h       |   1 +
 target/mips/tcg/godson2.decode    |  27 +++
 target/mips/tcg/loong-ext.decode  |  28 +++
 target/mips/tcg/loong_translate.c | 307 ++++++++++++++++++++++++++++++
 target/mips/tcg/translate.c       | 264 +------------------------
 target/mips/tcg/meson.build       |   3 +
 6 files changed, 376 insertions(+), 254 deletions(-)
 create mode 100644 target/mips/tcg/godson2.decode
 create mode 100644 target/mips/tcg/loong-ext.decode
 create mode 100644 target/mips/tcg/loong_translate.c