/
LR_07_001: Gap Analysis

LR_07_001: Gap Analysis

About

  • The Rust compiler has a comprehensive test suite.
  • This foundational work item aims to generate initial test reports from that test suite for the riscv64-unknown-linux-gnu Rust compiler target triple.
  • Along the way, this work items aims to highlight any perceivable risks for current and future work.


Sub-tasks

NumberItemDescriptionStatusNotesResources
1Test EnvironmentTarget platform selectionCompleteSelection qemu-system-riscv64's virt machine emulation as the target platform
Basic Linux test environment creationComplete

Selected Ubuntu Linux (riscv64) as the target filesystem

Ubuntu Linux for RISC-V 64-bit systems
Design of a testing strategyComplete

Decided to build and run the compiler and test assets 'natively' on the above test environment

(Experimented with cross compilation but that threw up known errors that were deemed invalid)

Decided to execute the test runner manually once the test assets were built


2Rust CompilerVerify that the Rust Compiler builds and runs natively for the risc64-unknown-linux-gnu target tripleCompleteAll OK. No special mods needed.
3Rust Compiler Test SuiteVerify that the Rust Compiler test suite builds and runs natively for the riscv64-unknown-linux-gnu target tripleComplete

All OK. No special mods needed.

Issue encountered with docker image for RISC-V Rust.

PR raised to fix docker image for RISC-V Rust. Fixes merged.

4Rust Compiler Test ReportGenerate initial compiler test resultsCompleteSome codegen test failures seen.PR raised to address test failures. Fixes merged.


Status and Outcomes

  • All outline sub-tasks above were completed.
  • There were a small number of test failures but those were for tests irrelevant for the riscv64 Linux rust target. Details are here.


Dependency



Upstreaming

COMPLETED


Contacts


Related content

LR_07: Rust
LR_07: Rust
More like this
LR_07_002: Rust lang CI loop setup
LR_07_002: Rust lang CI loop setup
More like this
LR_07_003: Publish Tier-1 Promotion RFC
LR_07_003: Publish Tier-1 Promotion RFC
More like this
Project RP004: Support 64-bit RISC-V Linux port of Rust to Tier-1
Project RP004: Support 64-bit RISC-V Linux port of Rust to Tier-1
More like this
LK_03_041 - RustVMM rust-vmm-ci
LK_03_041 - RustVMM rust-vmm-ci
More like this
LK_03_040 - RustVMM rust-vmm-container
LK_03_040 - RustVMM rust-vmm-container
More like this