1. Jan 31, 2023
  2. Jul 13, 2022
  3. Feb 16, 2022
    • Jessica Clarke's avatar
      Run ISA tests in CI (#134) · 50f4bbaa
      Jessica Clarke authored
      * test: Ignore generated XML output
      
      * run_tests: Build RVFI emulators too
      
      Can't run tests with them though as they're built for direct instruction
      injection (RVFI-DII) via an instruction stream over a network socket,
      not fetching instructions from memory, so this remains just a build
      test.
      
      * run_tests/run_fp_tests: Print summary and give meaningful exit code
      
      * run_tests/run_fp_tests: Include tests and failures in top-level XML entity
      
      * run_tests/run_fp_tests: Use failure not error for XML output
      
      The former is the standard tag for normal test failures, the latter is
      for catastrophic things like test harness errors.
      
      * Run ISA tests in CI
      50f4bbaa
  4. Feb 03, 2022
  5. Jan 31, 2022
  6. Jan 21, 2022
  7. Jan 20, 2022
  8. Dec 05, 2021
  9. Nov 23, 2021
  10. Nov 22, 2021
  11. Nov 17, 2021
    • Jessica Clarke's avatar
      Revert "Initial introduction of zfinx (#75)" · af44432c
      Jessica Clarke authored
      This reverts commit c5e62ea4.
      af44432c
    • Ibrahim Abu Kharmeh's avatar
      Initial introduction of zfinx (#75) · c5e62ea4
      Ibrahim Abu Kharmeh authored
      * Adds Zfinx enable flag
      
      * Hardwire misa.{f,d} and mstats.FS to 0
      
      * Moving nan boxing functions to fdext_reg
      
      * Swaps register names for floating point instructions
      
      Adds new mapping to swap register names, and use it in all assembly clauses
      
      * Disable Floating point loads, stores and moves
      
      * Add X_or_F_s and X_or_F_d functions, and use them to access all registers for floating points
      
      Changes register accessed for floating point instructions and modify nan boxing functions for zfinx
      
      * Formatting
      
      Remove couple of misplaced whitespace, unnecessary parens
      
      * Fix inconsistent indentation in insts_dext file
      
      * Fix spacing in fdext_regs
      
      * Remove redundant comparasion with true/ false
      
      * Constistant tuples spacing and removes couple of unnecessary parens.
      
      * Consistent functions declaration & calls spacing and removes couple of unnecessary parens.
      
      * Consistent spacing and removes couple of unnecessary comparasion with true/false
      
      * Make spacing consistent
      
      * Remove checks from execution stage
      
      * Add checks to encdec stage
      c5e62ea4
  12. Nov 11, 2021
    • Ben Marshall's avatar
      scalar-crypto: aesks1i clarifications · 01720566
      Ben Marshall authored
      Trying to make the behavior of aesks1i easier to understand, and more
      obviously correspond to the specification.
      
      - Ensure that the aes_decode_rcon function only accepts valid values, plus
        add comments.
      
      - Re-name operands to aesks1i rcon -> rnum to be in line with the specification
      
      - Re-structure the Sail code for clarity based on jrtc27's suggestion.
      01720566
    • Ben Marshall's avatar
      scalar-crypto: whitespace consistency for SHA* instructions · 0a32766e
      Ben Marshall authored
      Remove weird whitespace " );" -> ");" at end of expressions to be
      consistent with the rest of the code base.
      
       On branch scalar-crypto-tidy
       Changes to be committed:
      	modified:   model/riscv_insts_zkn.sail
      0a32766e
    • Ben Marshall's avatar
      scalar-crypto: Consistent whitespace for == · 1ed8162e
      Ben Marshall authored
      Add spaces pre/post used of "==" operator to be consistent with the rest
      of the code.
      1ed8162e
  13. Nov 05, 2021
  14. Oct 26, 2021
  15. Oct 23, 2021
  16. Oct 22, 2021
    • Jessica Clarke's avatar
      Support D extension on RV32 (#108) · 9b38e33c
      Jessica Clarke authored
      * Use bool for floating point comparison result
      
      Using bits_WU (bits(32)) or bits_LU (bits(64)) makes no sense, these are
      just boolean values, and having fixed-width types is a pain for
      suporting RV32D (since RV32D would need to truncate, but RV128D would
      need to extend). Instead represent these as an actual bool to match what
      the values really are. This could be done with bits(1) but the value is
      logically a boolean (like the built-in integer comparison operators) not
      a bit vector of length one so we convert to bool and back for a cleaner
      interface.
      
      * Support compiling RV32F with flen == 64
      
      The code conflated flen and xlen; deconflating them and adding suitable
      assertions (rather than silently retiring as a no-op that doesn't bump
      instret) ensures that it can be compiled for RV32 with flen set to 64.
      Whilst here, add the extensions and truncations that would be needed for
      RV128F.
      
      Note that there are already suitable guards on the decode clauses to
      ensure these instructions are illegal on RV32.
      
      * Support compiling RV32D
      
      This copies various bits of XLEN generality from the F code.
      
      * Support RV32D loads/stores
      
      * Correctly initialise misa.D based on flen not xlen
      
      * Makefile: Enable D extension for RV32
      
      This now works so can be enabled.
      
      * test: Enable RV32D tests
      9b38e33c
  17. Oct 18, 2021
  18. Sep 09, 2021
  19. Aug 25, 2021
  20. Aug 22, 2021
  21. Aug 10, 2021
  22. Aug 03, 2021
    • Robert Norton's avatar
      Clarify the build instructions. · cf099be2
      Robert Norton authored
      Encourage use of `opam` and streamline by moving discussion of setting `SAIL_DIR` into a separate section about building using a custom Sail version.
      cf099be2
  23. Jul 29, 2021
  24. Jul 28, 2021
  25. Jul 27, 2021
  26. Jul 16, 2021