On Thursday, 31 May 2018 02:44:51 UTC+12, Tom Ritter  wrote:
> Oh.  Are we doing this rustc inlining development on a particular old
> version of clang?  I'm not even close to getting CFI ready but I'm
> basically working off llvm trunk as I'm finding and filing llvm bugs
> and working with llvm devs to get them fixed....

We don't have experience with cross language LTO. It is difficult to predict 
but relatively easy to try. Here's what we do know:

In order for the linker to do LTO, it needs to be able to understand the 
llvm-ir from both clang and rustc. For the most part this means having an lld 
verison more recent than the compilers. In theory the newer linker can read old 
versions of llvm-ir. Unfortunately llvm-ir changes over time and while some 
effort goes into making it backward compatible, it seems reasonable to expect a 
large gap between clang and rustc versions may fall short of excellence.

We may be able to get away with heterogenous clang/rustc/lld versions, but it 
may be more trouble than it is worth. Alternatively we may need to keep 
rustc/clang/lld in lock step with all that it entails. It is possible that in 
the end we decide the whole thing isn't worth the trouble. Time will tell.
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to