High level sounds like a reasonable thing to me, for what it's worth.
> _______________________________________________
> LLVM Developers mailing list
> llvm...@lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
_______________________________________________
LLVM Developers mailing list
llvm...@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Hi Petr,
This does sound like a good use case for our pipeline. We’ve seen good runtime performance overall, as we stated in the talk. I’ve been working on upstreaming our patches off and on for a couple months now. Our pipeline needs to be ported to the NPM, but once that work is done, the patch is ready for review. I should be able to finish that work within the next month or two and would love to get some feedback on our approach.
Thanks,
Matthew
| Teresa Johnson | | Software Engineer | | tejo...@google.com | |
Hi,I actually just watched the presentation, but it is a bit too high level for me to really understand what is this new "format" in practice.As far as I remember ThinLTO bitcode should be a super-set of information compared to FullLTO. It isn't clear to me what prevents a linker implementation to take the ThinLTO bitcode and perform FullLTO on these, this was designed to allow this originally.The optimization pipelines are set up differently, but that does not really affect the format I believe. A good FullLTO link implementation based on the ThinLTO bitcode would likely involve running a heavier pipeline during LTO, this is something I tried to do at the time to align the pipeline and ensure there is only one, however it was making the LTO link slower and we considered it wasn't a good tradeoff.
Hi Teresa,
Matthew - can you remind me of the different summary issue?
In broad strokes, the two formats are compatible, but we had to make several small changes related to symbol resolution and pass ordering to get everything working.
Thanks,
Matthew
On Tue, Apr 13, 2021 at 3:02 PM Mehdi AMINI via llvm-dev <llvm...@lists.llvm.org> wrote:Hi,I actually just watched the presentation, but it is a bit too high level for me to really understand what is this new "format" in practice.As far as I remember ThinLTO bitcode should be a super-set of information compared to FullLTO. It isn't clear to me what prevents a linker implementation to take the ThinLTO bitcode and perform FullLTO on these, this was designed to allow this originally.The optimization pipelines are set up differently, but that does not really affect the format I believe. A good FullLTO link implementation based on the ThinLTO bitcode would likely involve running a heavier pipeline during LTO, this is something I tried to do at the time to align the pipeline and ensure there is only one, however it was making the LTO link slower and we considered it wasn't a good tradeoff.This is something I'm interested in separately from the original topic. A while back during one of our discussions, Chandler suggested that it may be worth looking into using ThinLTO pipeline for FullLTO since FullLTO hasn't really been getting much attention in the last few years and could benefit from the work done on the ThinLTO pipeline. Aside from slower links, have you seen any improvements in terms of runtime performance?
We also have this problem, and we are considering using fembed-bitcode: https://crbug.com/1196260