qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RISU v2 00/13] ELF and Sparc64 support
@ 2024-05-26 19:36 Richard Henderson
  2024-05-26 19:36 ` [PATCH RISU v2 01/13] risu: Allow use of ELF test files Richard Henderson
                   ` (13 more replies)
  0 siblings, 14 replies; 32+ messages in thread
From: Richard Henderson @ 2024-05-26 19:36 UTC (permalink / raw)
  To: qemu-devel; +Cc: mark.cave-ayland

Let risu accept elf test files, adjusted from v1.
Adjust risugen to invoke the assembler and linker,
with a cross-compiler prefix if needed.
Add some sparc64 testing which utilizes this.

Changes for v2:
  - Implement VIS2 through VIS4.

There's something odd going on with the Sparc M8 Solaris host where
the values recorded via RISU for some floating-point operations are
incorrectly rounded, but performing the same operations with the
same inputs in a standalone test program produces correct results.

I wonder if there's some unfinished_FPop exception being generated
and the operating system emulation is producing incorrect results.
I'd be much happier if I could test this on Linux...


r~


Richard Henderson (13):
  risu: Allow use of ELF test files
  Build elf test cases instead of raw binaries
  Introduce host_context_t
  risu: Add initial sparc64 support
  risugen: Be explicit about print destinations
  risugen: Add sparc64 support
  contrib/generate_all: Do not rely on ag
  sparc64: Add a few logical insns
  sparc64: Add VIS1 instructions
  sparc64: Add VIS2 and FMAF insns
  sparc64: Add VIS3 instructions
  sparc64: Add IMA instructions
  sparc64: Add VIS4 instructions

 Makefile                   |  22 ++-
 risu.h                     |  16 +-
 risu_reginfo_aarch64.h     |   2 +
 risu_reginfo_arm.h         |   2 +
 risu_reginfo_i386.h        |   2 +
 risu_reginfo_loongarch64.h |   3 +
 risu_reginfo_m68k.h        |   2 +
 risu_reginfo_ppc64.h       |   2 +
 risu_reginfo_s390x.h       |   2 +
 risu_reginfo_sparc64.h     |  36 ++++
 risu.c                     |  59 +++++-
 risu_aarch64.c             |   6 +-
 risu_arm.c                 |   7 +-
 risu_i386.c                |   7 +-
 risu_loongarch64.c         |   6 +-
 risu_m68k.c                |   6 +-
 risu_ppc64.c               |   6 +-
 risu_reginfo_loongarch64.c |   3 +-
 risu_reginfo_sparc64.c     | 186 ++++++++++++++++++
 risu_s390x.c               |   5 +-
 risu_sparc64.c             |  52 +++++
 configure                  |   2 +
 contrib/generate_all.sh    |   4 +-
 risugen                    |  10 +-
 risugen_common.pm          |  68 ++++++-
 risugen_sparc64.pm         | 385 +++++++++++++++++++++++++++++++++++++
 sparc64.risu               | 298 ++++++++++++++++++++++++++++
 test.ld                    |  12 ++
 test_aarch64.s             |   4 +-
 test_arm.s                 |  16 +-
 test_i386.S                |   4 +-
 test_sparc64.s             | 137 +++++++++++++
 32 files changed, 1298 insertions(+), 74 deletions(-)
 create mode 100644 risu_reginfo_sparc64.h
 create mode 100644 risu_reginfo_sparc64.c
 create mode 100644 risu_sparc64.c
 create mode 100644 risugen_sparc64.pm
 create mode 100644 sparc64.risu
 create mode 100644 test.ld
 create mode 100644 test_sparc64.s

-- 
2.34.1



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

end of thread, other threads:[~2024-05-31  9:53 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-26 19:36 [PATCH RISU v2 00/13] ELF and Sparc64 support Richard Henderson
2024-05-26 19:36 ` [PATCH RISU v2 01/13] risu: Allow use of ELF test files Richard Henderson
2024-05-30 12:45   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 02/13] Build elf test cases instead of raw binaries Richard Henderson
2024-05-30 12:45   ` Peter Maydell
2024-05-30 13:40   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 03/13] Introduce host_context_t Richard Henderson
2024-05-30 12:46   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 04/13] risu: Add initial sparc64 support Richard Henderson
2024-05-30 13:02   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 05/13] risugen: Be explicit about print destinations Richard Henderson
2024-05-30 12:51   ` Peter Maydell
2024-05-30 17:37     ` Richard Henderson
2024-05-31  9:53       ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 06/13] risugen: Add sparc64 support Richard Henderson
2024-05-30 13:23   ` Peter Maydell
2024-05-30 17:44     ` Richard Henderson
2024-05-26 19:36 ` [PATCH RISU v2 07/13] contrib/generate_all: Do not rely on ag Richard Henderson
2024-05-30 13:13   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 08/13] sparc64: Add a few logical insns Richard Henderson
2024-05-30 13:24   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 09/13] sparc64: Add VIS1 instructions Richard Henderson
2024-05-30 13:25   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 10/13] sparc64: Add VIS2 and FMAF insns Richard Henderson
2024-05-30 13:25   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 11/13] sparc64: Add VIS3 instructions Richard Henderson
2024-05-30 13:26   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 12/13] sparc64: Add IMA instructions Richard Henderson
2024-05-30 13:25   ` Peter Maydell
2024-05-26 19:36 ` [PATCH RISU v2 13/13] sparc64: Add VIS4 instructions Richard Henderson
2024-05-30 13:25   ` Peter Maydell
2024-05-28 20:43 ` [PATCH RISU v2 00/13] ELF and Sparc64 support Mark Cave-Ayland

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