rustc_codegen_cranelift
rustc_codegen_cranelift copied to clipboard
Cranelift based backend for rustc
When compiling [half](https://crates.io/crates/half) I noticed two warnings for a missing x86 llvm intrinsic vcvtph2ps: ``` warning: unsupported x86 llvm intrinsic llvm.x86.vcvtph2ps.128; replacing with trap warning: unsupported x86 llvm intrinsic llvm.x86.vcvtph2ps.256;...
I have set my toolchain via `rust-toolchain.toml` to `nightly-2025-04-17`. This works with `cargo build`, but `cargo clif build` seems to be using a different version (I don't know which one)...
Thanks for cranelift, it's a great project! I have a project where I'm hitting the following message when building with `rustc_codegen_cranelift` ``` warning: unsupported x86 llvm intrinsic llvm.x86.sse2.psll.q; replacing with...
### Code ```Rust fn main() {} ``` ### Meta `rustc --version --verbose`: ``` rustc 1.87.0-nightly (e16a049ad 2025-03-03) binary: rustc commit-hash: e16a049adbf94d610787430b6efdf31d896dc5b6 commit-date: 2025-03-03 host: aarch64-apple-darwin release: 1.87.0-nightly LLVM version: 20.1.0...
Basically we would scrape all vendor intrinsics defined in the LLVM source code at `llvm/include/llvm/IR/Intrinsics.td`, generate some Rust or C code which exercises the vendor intrinsic, compile it using LLVM...
auto-reduced (treereduce-rust): ````rust //@compile-flags: -Zcodegen-backend=cranelift --crate-type=lib // pub const fn foo() { let mut array = [[0; 0x12345679]; 1]; } ```` original: ````rust //@ check-pass // Regression test for issue...