1. Sep 30, 2022
    • YenHaoChen's avatar
      Add has_data argument to trigger checking functions · b724db52
      YenHaoChen authored
      The mcontrol trigger can select either address or data for checking. The
      The selection decides the priority of the trigger. For instance, the
      address trigger has a higher priority over the page fault, and the page
      fault has a higher priority over the data trigger.
      
      The previous implementation only has the checking functions for data
      trigger, which results in incorrect priority of address trigger.
      
      This commit adds a has_data argument to indicate address trigger and the
      priority of the trigger.
      b724db52
  2. Sep 28, 2022
  3. Sep 24, 2022
  4. Sep 23, 2022
  5. Sep 21, 2022
  6. Sep 20, 2022
  7. Sep 17, 2022
  8. Sep 16, 2022
  9. Sep 09, 2022
  10. Sep 08, 2022
  11. Sep 07, 2022
  12. Sep 02, 2022
  13. Sep 01, 2022
  14. Aug 29, 2022
  15. Aug 28, 2022
    • YenHaoChen's avatar
      Fix tval on illegal instruction faults with long illegal instruction · 3ac734e1
      YenHaoChen authored
      The current spike implementation does not include the ILEN (maximum
      instruction length supported by the implementation), which is required
      to constrain the value of tval on an illegal instruction exception.
      
      Consider an implementation supporting only an RV64I base instruction
      set. The ILEN is 32 bits (spec sec. 1.5), and the MXLEN is 64 bits (spec
      sec. 5.1). Under an illegal instruction exception with the instruction
      longer than the ILEN, the mtval should contain the first ILEN (32 bits)
      of the faulting instruction. However, the current spike implementation
      lets the mtval be the instruction's first MXLEN (64 bits).
      
      To fix this bug, this PR masks out the upper bits of the tval and leaves
      the first ILEN bits of the faulting instruction. When this PR is being
      made, all official instructions are either 16 or 32 bits. So, We hard-
      code the ILEN to 32 bits.
      3ac734e1
  16. Aug 24, 2022
  17. Aug 23, 2022
  18. Aug 13, 2022