It seems like rust bundles it's own version of llvm. Are patches from the rust community making it in slowly? Or are there some fundamental differences?
Does Swift do something similar, or does it work with stock llvm?
Does Swift do something similar, or does it work with stock llvm?
This is actually quite common. Emscripten ships its own copy of LLVM as well. Rust and Emscripten might actually be combining their efforts into a single LLVM branch this year, in order to provide better WebAssembly support for Rust.
https://github.com/rust-lang/llvm/commits/rust-llvm-2016-02-...
The delta is minimal, and mostly consists in bugfixes and optimizations. All changes are typically forwarded upstream. Since long time, rustc can be built without using the embedded LLVM, and several distributions (eg. Debian) do that.