fractalfir/rustlantis — explained in plain English
Analysis updated 2026-08-08 · repo last pushed 2025-08-17
Test that your changes to the Rust compiler don't silently break integer arithmetic or other calculations.
Find crashes and wrong-output bugs in LLVM, Miri, or Cranelift backends by running generated programs across all three.
Validate a new Rust compiler backend by comparing its output against established backends on random programs.
Reproduce a found compiler bug deterministically using the random seed that generated the failing program.
| fractalfir/rustlantis | abc3dz/mixxx | abyo-software/ferro-stash | |
|---|---|---|---|
| Stars | 1 | 1 | 1 |
| Language | Rust | Rust | Rust |
| Last pushed | 2025-08-17 | — | — |
| Maintenance | Quiet | — | — |
| Setup difficulty | hard | moderate | moderate |
| Complexity | 5/5 | 2/5 | 4/5 |
| Audience | researcher | general | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires building the Rust compiler from source and familiarity with MIR, LLVM, Miri, and Cranelift internals.
Rustlantis is a testing tool that automatically generates random Rust programs and then checks whether different parts of the Rust compiler produce the same results when running them. Its goal is to find bugs in how Rust translates and runs code, ideally catching problems before they reach real users. At a high level, it works by creating small programs using Rust's "MIR," which is an intermediate, lower-level representation of Rust code that the compiler uses internally. Each generated program uses a random seed, so the same seed always produces the exact same program. The tool then runs that program through multiple "backends", different systems that turn Rust code into something executable, like LLVM, Miri, and Cranelift, and compares their output. If the backends disagree, that signals a bug somewhere in the compilation pipeline. The generated programs are carefully constructed to avoid "undefined behavior" (UB), meaning any discrepancy points to a real compiler bug rather than the program itself being unpredictable. The people who would use this are compiler developers and researchers working on Rust itself, or on the backend systems it depends on. For example, someone modifying how Rust optimizes integer arithmetic could run this tool to make sure their changes do not silently break certain calculations. The project's "trophies" section shows it has already found real bugs in Rust, LLVM, and Cranelift, including crashes and cases where the compiler quietly produced wrong results. What makes this project notable is its emphasis on determinism and UB-free generation. Many fuzzers rely on throwing random, messy input at a system to see what breaks. Here, the generated programs are structured and well-defined, so when a mismatch occurs, the developer can be confident it is a genuine compiler issue, not an artifact of a malformed test case.
Rustlantis automatically generates random, well-defined Rust programs and runs them through multiple compiler backends to find bugs by comparing their outputs. Any disagreement signals a real compiler bug.
Mainly Rust. The stack also includes Rust, MIR, LLVM.
Quiet — no commits in 6-12 months (last push 2025-08-17).
No license information was provided in the repository explanation.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.