[llvm-dev] RISC-V LLVM status update (original) (raw)

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Wed Sep 6 07:33:39 PDT 2017


On 21 August 2017 at 11:06, Alex Bradbury <asb at asbradbury.org> wrote:

As you will have seen from previous postings, I've been working on upstream LLVM support for the RISC-V instruction set architecture. The initial RFC <http://lists.llvm.org/pipermail/llvm-dev/2016-August/103748.html> provides a good overview of my approach. Thanks to funding from a third party, I've recently been able to return to this effort as my main focus. Now feels like a good time to give an update on where the RISCV backend is at, and how you can help.

## Current status * A full, regularly rebased patchset can be found here <https://github.com/lowRISC/riscv-llvm>. * 16 of these patches have been put up for review so far. 7 have been committed, and 8 are awaiting review. * The vast majority of the GCC torture suite compiles and runs at O0, targeting RV32I. 1315 out of 1352 compile and run (32 compile-time failures, 5 run-time failures). * I intend to keep <http://www.lowrisc.org/llvm/status> updated with status, test results etc. ## Next steps and getting involved The plan has always been to work from the MC-layer upwards towards reliable RV32I codegen. This then provides a stable 'core' of the backend where it's easy for further development work to be parallelised, and for others to make contributions. I think we're now at that point. I would really like to avoid setting up a new 'downstream', and to use this opportunity to pull in new people to upstream LLVM development. However collaboration is made rather difficult for now due to the large gap between the patches that have been reviewed and committed upstream vs the complete patchset. If you would like to help, reviewing the remaining patches <https://reviews.llvm.org/differential/?authors=asb&order=updated> is an incredibly valuable way to do so. If you would like to be listed as a reviewer for future patches, just let me know (and feel free to add yourself for existing patches).

I'll be continuing to do all that I can get the patchset reviewed for upstream merging, but given review activity seems to have slowed to a halt again I've gone ahead and set up a repository for downstream collaboration, to accept pull requests from others etc. See the README at <https://github.com/lowRISC/riscv-llvm-integration> for more information. The intent is that this is a temporary measure, to allow productive collaboration while upstream RISC-V support remains blocked on lack of reviewers.

Best,

Alex



More information about the llvm-dev mailing list