bytecodealliance / bytecodealliance/wasmtime
Cranelift: Add LLVM IR as a target code
Open
cranelift
cranelift:new-target
enhancement
- Dominant language
- Rust
- Stars
- 18.6k
- Forks
- 1.8k
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 126
Description
I know that LLVM IR is not really similar with real machine isa, but there's some advantages if we can easily translate Cretonne IR to LLVM IR.
It's well-known that LLVM is awfully slow for "bad" code, while cretonne is fast-by-default but currently lacking deep optimizations. I saw that there's a plan to use cretonne for rustc debug mode. But why should compilers handles two different target IR? If we can generate "pretty good" LLVM IR by running cretonne with `--target=llvm`, not just rustc but also whole range of languages whose compiler is written in rust can benefit from it.
Contributor guide
Assessment
This issue has not been assessed yet.