[PATCH] D22356: [ThinLTO] Perform conservative weak/linkonce resolution in distributed backend case

Mehdi AMINI via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 18 17:12:36 PDT 2016


mehdi_amini added a comment.

> That's a good question and an idea I thought about briefly but discarded for a couple reasons. I was concerned about requiring communication between the ThinLink and final link to build the link line (it would be more difficult to support in a build system, and also seems conceptually more complicated).


How is the final link invocation computed right now?

> Also I'm not 100% convinced that removing the --start-lib/--end-lib, even if we only include those object files the linker decided to select symbols from, would result in the same linking behavior.


Your observations about the linker picking different symbols seem to indicate that the --start-lib/--end-lib model is already broken.
If a list of `.o` on the command line is not enough for relinking, there's gonna be a need for a "linker resolution map" file that drives the linker.


https://reviews.llvm.org/D22356





More information about the llvm-commits mailing list