Project RP006 RISC-V LLVM Testing Improvements
Bidding Starts: January 5, 2024
Bidding Ends: February 2, 2024
Contract start date:
Summary:
A major challenge in the RISC-V LLVM community is lack of rigorous testing. Therefore, RISE will be investing to improve LLVM testing and development.
- The LLVM project’s standard CI uses buildbot, with builders for different architectures maintained by interested parties.
- Although LLVM includes comprehensive unit tests for code generation (e.g. for IR to RISC-V assembly) that are run on the majority of builders, there is limited testing by running generated code on a native or emulated RISC-V environment.
- There are several libc RISC-V builders (RV64 on native development boards) and a qemu-user based RV64 builder, which will compile Clang and LLVM and run its unit test suite. There is no automated testing of the larger LLVM test suite and we lack automated testing for projects like LLDB.
- The list of tests to focus: https://github.com/llvm/llvm-test-suite
- For reference this is the GCC target list: https://github.com/patrick-rivos/gcc-postcommit-ci/blob/main/.github/workflows/run-frequent.yaml
- RISE has a build farm project that can host this work. In the response, please separate the cost of hosting (if you wish to provide it yourselves), and also please describe the rationale for hosting it on hardware that you might propose, vs. hosting it at RISE.
- Please describe the build and test turnaround time for your proposed solutions. LLVM maintainers would like this to be as short as possible. If emulated builds are proposed along with cross-builds, please describe the proposed target build/test latency for both.
- Minimum target config build list should include: