[PATCH v7 0/1] Add support for emulation of CRC32 instructions

Aleksandar Rakic posted 1 patch 4 months, 3 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20250627000246.1811052-1-aleksandar.rakic@htecgroup.com
Maintainers: "Philippe Mathieu-Daudé" <philmd@linaro.org>, Aurelien Jarno <aurelien@aurel32.net>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Aleksandar Rikalo <arikalo@gmail.com>
There is a newer version of this series
[PATCH v7 0/1] Add support for emulation of CRC32 instructions
Posted by Aleksandar Rakic 4 months, 3 weeks ago
Hi,

This patch adds support for emulation of CRC32 instructions for
the Mips target in QEMU, adds tests, and enables CRC for mips64r6.
The CRC32 instructions are available in MD00087 Revision 6.06.
The disassembly for crc32 is hidden in commit 99029be1c28.
New opcode is implemented in decodetree format as in v3.

Kind regards,
Aleksandar Rakic
[PATCH v7 0/1] Add support for emulation of CRC32 instructions
Posted by Aleksandar Rakic 4 months, 3 weeks ago
From: Aleksandar Rakic <aleksandar.rakic@htecgroup.com>

Aleksandar Rakic (1):
  Add support for emulation of CRC32 instructions

 target/mips/cpu-defs.c.inc                    |  10 +-
 target/mips/helper.h                          |   2 +
 target/mips/meson.build                       |   1 +
 target/mips/tcg/op_helper.c                   |  27 ++++
 target/mips/tcg/rel6.decode                   |   5 +
 target/mips/tcg/rel6_translate.c              |  13 ++
 target/mips/tcg/translate.c                   |  25 +++
 target/mips/tcg/translate.h                   |   2 +
 tests/tcg/mips/include/wrappers_mips64r6.h    |  35 +++++
 tests/tcg/mips/user/isa/mips64r6/crc/Makefile |  42 ++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32b.c   | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32cb.c  | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32cd.c  | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32ch.c  | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32cw.c  | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32d.c   | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32h.c   | 142 ++++++++++++++++++
 .../isa/mips64r6/crc/test_mips64r6_crc32w.c   | 142 ++++++++++++++++++
 18 files changed, 1294 insertions(+), 4 deletions(-)
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/Makefile
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32b.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32cb.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32cd.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32ch.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32cw.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32d.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32h.c
 create mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/test_mips64r6_crc32w.c

-- 
2.34.1