RISC-V: Simplify workspace and asset update process
What
- Simplifies the workspace in
src/riscvsince it now only contains theapipackage. - Changes the process for updating the dependency on
riscv-pvmand the checked-in assets:- All updated via a single
makerule (update-riscv-pvm). - Binaries are downloaded directly from the repo's
assetsinstead of installing them frommain - The initial jstz proof asset is also updated.
- All updated via a single
Why
To simplify the workflow of keeping the monorepo up to date with riscv-pvm.
The compilation of the dummy kernel and jstz binaries has been replaced with a download of the checked-in assets in order to sync the jstz binary with its initial proof regression file. Since the assets checked in to riscv-pvm are themselves manually updated, they diverge from the latest main (which is what the installation was based on).
The workspace in src/riscv could in principle be removed completely but this requires some broader changes to CI which I am leaving as future work.
Manually Testing
To run the update rule:
update-riscv-pvm
Benchmarking
Not applicable.
Tasks for the Author
-
Link all Linear issues related to this MR using magic words (e.g. part of, relates to, closes). -
Eliminate dead code and other spurious artefacts introduced in your changes. -
Document new public functions, methods and types. -
Make sure the documentation for updated functions, methods, and types is correct. -
Add tests for bugs that have been fixed. -
Put in reasonable effort to ensure that CI will pass. make -C src/riscvdune build src/lib_riscvdune build src/rust_deps
-
Benchmark performance and populate the table above if needed. -
Explain changes to regression test captures when applicable. -
Write commit messages to reflect the changes they're about. -
Self-review your changes to ensure they are high-quality. -
Complete all of the above before assigning this MR to reviewers.
Edited by Victor Dumitrescu