qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/6] target/riscv: support Zfh, Zfhmin extension v0.1
@ 2021-10-16  9:07 frank.chang
  2021-10-16  9:07 ` [PATCH v3 1/6] target/riscv: zfh: half-precision load and store frank.chang
                   ` (6 more replies)
  0 siblings, 7 replies; 19+ messages in thread
From: frank.chang @ 2021-10-16  9:07 UTC (permalink / raw)
  To: qemu-devel, qemu-riscv; +Cc: Frank Chang

From: Frank Chang <frank.chang@sifive.com>

Zfh - Half width floating point
Zfhmin - Subset of half width floating point

Zfh, Zfhmin v0.1 is now in public review period and is required by
RVV extension:
https://groups.google.com/a/groups.riscv.org/g/isa-dev/c/63gDCinXTwE/m/871Wm9XIBQAJ

Zfh, Zfhmin can be enabled with -cpu option: Zfh=true and Zfhmin=true
respectively.

The port is available at:
https://github.com/sifive/qemu/tree/zfh-upstream-v3

Note: This patchset depends on another patchset listed in Based-on
      section below so it is not able to be built unless the patchset
      is applied.

Changelog:

v3:
  * Use the renamed softfloat min/max APIs: *_minimum_number()
    and *_maximum_number().
  * Pick softfloat min/max APIs based on CPU privilege spec version.
  * Add braces for if statements in REQUIRE_ZFH() and
    REQUIRE_ZFH_OR_ZFHMIN().
  * Rearrange the positions of Zfh and Zfhmin cpu properties.

v2:
  * Use {get,dest}_gpr APIs.
  * Add Zfhmin extension.

Based-on: <20211016085428.3001501-1-frank.chang@sifive.com>

Frank Chang (1):
  target/riscv: zfh: implement zfhmin extension

Kito Cheng (5):
  target/riscv: zfh: half-precision load and store
  target/riscv: zfh: half-precision computational
  target/riscv: zfh: half-precision convert and move
  target/riscv: zfh: half-precision floating-point compare
  target/riscv: zfh: half-precision floating-point classify

 target/riscv/cpu.c                        |   2 +
 target/riscv/cpu.h                        |   2 +
 target/riscv/fpu_helper.c                 | 180 ++++++++
 target/riscv/helper.h                     |  29 ++
 target/riscv/insn32.decode                |  38 ++
 target/riscv/insn_trans/trans_rvzfh.c.inc | 537 ++++++++++++++++++++++
 target/riscv/internals.h                  |  16 +
 target/riscv/translate.c                  |  20 +
 8 files changed, 824 insertions(+)
 create mode 100644 target/riscv/insn_trans/trans_rvzfh.c.inc

--
2.25.1



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

end of thread, other threads:[~2021-10-18  6:14 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-16  9:07 [PATCH v3 0/6] target/riscv: support Zfh, Zfhmin extension v0.1 frank.chang
2021-10-16  9:07 ` [PATCH v3 1/6] target/riscv: zfh: half-precision load and store frank.chang
2021-10-18  0:03   ` Alistair Francis
2021-10-18  2:15     ` Frank Chang
2021-10-18  4:28       ` Alistair Francis
2021-10-16  9:07 ` [PATCH v3 2/6] target/riscv: zfh: half-precision computational frank.chang
2021-10-17 23:50   ` Alistair Francis
2021-10-16  9:07 ` [PATCH v3 3/6] target/riscv: zfh: half-precision convert and move frank.chang
2021-10-17 23:59   ` Alistair Francis
2021-10-18  5:53     ` Richard Henderson
2021-10-18  6:11   ` Alistair Francis
2021-10-16  9:07 ` [PATCH v3 4/6] target/riscv: zfh: half-precision floating-point compare frank.chang
2021-10-18  0:00   ` Alistair Francis
2021-10-16  9:07 ` [PATCH v3 5/6] target/riscv: zfh: half-precision floating-point classify frank.chang
2021-10-18  0:01   ` Alistair Francis
2021-10-16  9:07 ` [PATCH v3 6/6] target/riscv: zfh: implement zfhmin extension frank.chang
2021-10-18  0:05   ` Alistair Francis
2021-10-16 18:03 ` [PATCH v3 0/6] target/riscv: support Zfh, Zfhmin extension v0.1 Richard Henderson
2021-10-17  0:23   ` Frank Chang

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