1. May 07, 2024
  2. May 03, 2024
  3. Apr 27, 2024
  4. Apr 26, 2024
  5. Apr 25, 2024
  6. Apr 24, 2024
  7. Apr 23, 2024
  8. Apr 21, 2024
  9. Apr 17, 2024
  10. Apr 16, 2024
  11. Apr 13, 2024
  12. Apr 10, 2024
  13. Apr 09, 2024
  14. Apr 02, 2024
    • Christoph Müllner's avatar
      Add support for the Zfa ISA extension · 29be7889
      Christoph Müllner authored
      This patch introduces the RISC-V Zfa extension, which introduces
      additional floating-point extensions:
      * fli (load-immediate) with pre-defined immediates
      * fminm/fmaxm (like fmin/fmax but with different NaN behaviour)
      * fround/froundmx (round to integer)
      * fcvtmod.w.d (Modular Convert-to-Integer)
      * fmv* to access high bits of float register bigger than XLEN
      * Quiet comparison instructions (fleq/fltq)
      
      Zfa defines its instructions in combination with the following
      extensions:
      * single-precision floating-point (F)
      * double-precision floating-point (D)
      * quad-precision floating-point (Q)
      * half-precision floating-point (Zfh)
      
      Since the RISC-V architecture test framework does not support
      the RISC-V quad-precision floating-point ISA extension (Q) and
      the RISC-V half-precision floating-point ISA extension (Zfh),
      this patch does not include tests for instructions that depend
      on these extensions.
      
      Given missing infrastructure support, the fli.* instruction tests
      are hand written and not generated.
      All other test files are generated using riscv-ctg.
      
      The generated test files have been generated using the following
      command (with $BASEISA={rv32i,rv64i}, $FLEN={32,64}), and CFG=$INSN:
            riscv_ctg.py \
              --cgf sample_cgfs/dataset.cgf \
              --cgf sample_cgfs/zfa/$CGF \
              --base-isa $BASEISA \
              --flen $FLEN \
              -d tests_$BASEISA_$FLEN/
      
      Exceptions are:
      * fcvtmod.w.d.cgf is for FLEN=32 only
      * fmvh.x.d and fmvp.d.x are for BASEISA=rv32i only
      
      The resulting tests have been copied to the target directory.
      
      The generation of the Zfa test cases depends on a PR in the riscv-ctg
      repository:
        https://github.com/riscv-software-src/riscv-ctg/pull/60
      
      The Zfa specification is ratified and can be found here:
        https://github.com/riscv/riscv-isa-manual/blob/main/src/zfa.adoc
      
      
      
      Signed-off-by: default avatarChristoph Müllner <christoph.muellner@vrull.eu>
      29be7889
  15. Mar 27, 2024