Skip to content

Feature/rv64 rvv support#508

Open
goodnorning wants to merge 2 commits intoeclipse-threadx:devfrom
goodnorning:feature/rv64_rvv_support
Open

Feature/rv64 rvv support#508
goodnorning wants to merge 2 commits intoeclipse-threadx:devfrom
goodnorning:feature/rv64_rvv_support

Conversation

@goodnorning
Copy link
Contributor

PR checklist

  • Updated function header with a short description and version number
  • Added test case for bug fix or new feature
  • Validated on real hardware

@fdesbiens
Copy link
Contributor

Thank you for this contribution, @goodnorning! We will review it and come back if there is any feedback.

We are currently under code freeze before the Q1 2026 release. I will only merge to dev after the release. This feature would ship in our Q2 2026 release in June.

@fdesbiens fdesbiens requested a review from akifejaz March 4, 2026 09:04
@fdesbiens fdesbiens self-assigned this Mar 4, 2026
Copy link
Contributor

@akifejaz akifejaz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @goodnorning

Thankyou so much for your contribution.

I liked the implementation and it looks good from myside, Here is my feedback on some minor issues.

  • vstart must be restored before vsetvl. vstart is the start index for vector operations. Setting vstart AFTER vsetvl has no effect on the current vl configuration.
  • saving vxrm and vxsat separately which is functionally equivalent, but vcsr should also be explicitly handled for spec compliance.
  • add #ifdef __riscv_vector guard in link.lds as its silently wasting 16 KB on every non-vector build.
  • the vxrm and vxsat seems swapped on restore, save stores vxrm at offset 3 and vxsat at offset 4, but every restore (csrw) writes offset 3 into vxsat and offset 4 into vxrm
  • also add #ifdef __riscv_vector guard in entry.s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants