RISC-V: Add RV32E / FPU support for GCC #140
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Change vPortSetupTimerInterrupt in order to support 64bits RISC-V and modify mtime writing on 32bits RISC-V
Change portASM.s in order to support RV32E (16 registers instead of 32 registers on RV32I)
Change portASM.s in order to save/restore FPU registers on simple/double precision
Test Steps
tested on ARTY board with SIFIVE standard core E31, U54, S54 plus custom core with FPU (simple/double precision)
use "example-freertos-blinky" from freedom-e-sdk from SIFIVE (This change have not been yet committed into our public release, do not hesitate to communicate with me if you want to test it).
Related Issue
NONE
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.