Hi Daniel,

Thank you for the information.
I'll rebase this patchset and send out v6

Thank,
rnax

On 2026-05-27 10:03, Daniel Henrique Barboza wrote:
> Hi Max!
> 
> On 5/26/2026 11:00 PM, Max Chou wrote:
> > Gental ping.
> 
> 
> I believe we'll need a resend with a rebase due to changes done in the
> last PR, in particular a change I did where I removed the riscv_cpu_*
> arrays.  In other words: we don't need patch 8 anymore.
> 
> 
> Thanks,
> Daniel
> 
> > 
> > On 2026-04-27 14:09, Max Chou wrote:
> > > This patchset adds support for the RISC-V Zvfofp8min isa extension that
> > > provide conversion operations for OCP FP formats.
> > > 
> > > * riscv-isa-manual tag: 
> > > https://github.com/riscv/riscv-isa-manual/releases/tag/zvfofp8min-0.9
> > > 
> > > Zvfofp8min (v0.9):
> > >    The Zvfofp8min extension provides minimal vector conversion support
> > >    for OFP8 formats. It requires the Zve32f extension and leverages the
> > >    altfmt field in the VTYPE CSR (introduced by Zvfbfa) to select between
> > >    E4M3 (altfmt=0) and E5M2 (altfmt=1) formats.
> > >    - Canonical NaN for both E4M3 and E5M2 is 0x7f
> > >    - All NaNs are treated as quiet NaNs
> > >    Instructions added/extended:
> > >    - vfwcvtbf16.f.f.v: OFP8 to BF16 widening conversion
> > >    - vfncvtbf16.f.f.w: BF16 to OFP8 narrowing conversion
> > >    - vfncvtbf16.sat.f.f.w: BF16 to OFP8 with saturation (new)
> > >    - vfncvt.f.f.q: FP32 to OFP8 quad-narrowing conversion (new)
> > >    - vfncvt.sat.f.f.q: FP32 to OFP8 with saturation (new)
> > > 
> > > Changes in v5
> > > - Drop Zvfofp4min which is not going through the RVIA ratification
> > >    process yet.
> > > - Fix typos.
> > > - Rebase on riscv-to-apply.next (commit bf76a00)
> > > 
> > > Chagnes in v4
> > > - Rebase on riscv-to-apply.next (commit 21101a7)
> > > - Remove the softfloat library related patches (Thanks for RH's help to
> > >    split this part)
> > > - Add missing illegal ALTFMT SEW pattern checking for Zvfofp8min in
> > >    patch 4 (target/riscv: rvv: Make vfwcvtbf16.f.f.v support OFP8 to BF16
> > >    conversion for Zvfofp8min extension)
> > > 
> > > Changes in v3
> > > - Add floatN_nan_is_snan to simply the quiet/signaling NaN checking flow
> > >    in patch 2 & 3
> > > - Add patch 4 to fix pseudo-NaN handling in FPATAN/FYL2XP1/FYL2X helpers
> > > 
> > > Changes in v2
> > > - Merged v1 patch 2 & 3 to v2 patch 3, v1 patch 4 & 5 to v2 patch 4
> > > - Added new v2 patch 2 to refactor the IEEE format NaN classification
> > >    functions (float16, bfloat16, float32, float64) to use internal helper
> > >    functions, reducing code duplication and improving maintainability.
> > >    The OCP FP8 NaN classification functions follow the same pattern.
> > > - Refactored softfloat implementation to use capability-based FloatFmt
> > >    flags (no_infinity, limited_nan, overflow_raises_invalid, 
> > > normal_frac_max)
> > >    instead of monolithic flags
> > > - Removed ocp_fp8e5m2_no_signal_nan and ocp_fp8_same_canonical_nan flags
> > >    from float_status; now using local float_status with no_signaling_nans
> > >    and default_nan_pattern for RISC-V Zvfofp8min instructions
> > > - Rebased on latest riscv-to-apply.next with zvfbfa v3 patchset
> > > 
> > > v4: <[email protected]>
> > > v3: <[email protected]>
> > > v2: <[email protected]>
> > > v1: <[email protected]>
> > > 
> > > References
> > > * OCP FP8 specification:
> > >    
> > > https://www.opencompute.org/documents/ocp-8-bit-floating-point-specification-ofp8-revision-1-0-2023-12-01-pdf-1
> > > 
> > > 
> > > Max Chou (9):
> > >    target/riscv: rvv: Fix NOP_UU_B vs2 width
> > >    target/riscv: Add cfg property for Zvfofp8min extension
> > >    target/riscv: Add implied rules for Zvfofp8min extension
> > >    target/riscv: rvv: Make vfwcvtbf16.f.f.v support OFP8 to BF16
> > >      conversion for Zvfofp8min extension
> > >    target/riscv: rvv: Make vfncvtbf16.f.f.w support BF16 to OFP8
> > >      conversion for Zvfofp8min extension
> > >    target/riscv: rvv: Add vfncvtbf16.sat.f.f.w instruction for Zvfofp8min
> > >      extension
> > >    target/riscv: rvv: Add vfncvt.f.f.q and vfncvt.sat.f.f.q instructions
> > >      for Zvfofp8min extension
> > >    target/riscv: Expose Zvfofp8min property
> > >    disas/riscv: Add support of Zvfofp8min extension
> > > 
> > >   disas/riscv.c                              |   9 ++
> > >   target/riscv/cpu.c                         |  15 ++-
> > >   target/riscv/cpu_cfg_fields.h.inc          |   1 +
> > >   target/riscv/helper.h                      |  12 +++
> > >   target/riscv/insn32.decode                 |   5 +
> > >   target/riscv/insn_trans/trans_rvbf16.c.inc |  32 +++++--
> > >   target/riscv/insn_trans/trans_rvofp8.c.inc | 105 +++++++++++++++++++++
> > >   target/riscv/insn_trans/trans_rvv.c.inc    |  39 ++++++++
> > >   target/riscv/tcg/tcg-cpu.c                 |   5 +
> > >   target/riscv/translate.c                   |   1 +
> > >   target/riscv/vector_helper.c               | 104 +++++++++++++++++++-
> > >   11 files changed, 315 insertions(+), 13 deletions(-)
> > >   create mode 100644 target/riscv/insn_trans/trans_rvofp8.c.inc
> > > 
> > > -- 
> > > 2.52.0
> > > 
> 

Reply via email to