[PATCH] D14387: Move comdat setup after global value body linking in ModuleLinker
Rafael Ávila de Espíndola via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 5 12:19:19 PST 2015
rafael added a comment.
It has been awhile since I looked at lib/Linker, but correct if I am wrong, it has pretty much two modes
- "real" linker semantics. This handles comdats, weaks, etc.
- A mode where we only copy a user specified list of GVs and internal dependencies.
The second mode is used by thin lto. It could also be used with a few modifications by the gold plugin since gold did the "real linker" work already.
It looks like both modes are somewhat mixed. Could the linker be split in two? The low level one gets a list of globals. The high level one is not used by thinlto. What it does is decide based on comdats and linkages what a real linker would do and pass that list to the lower level class.
http://reviews.llvm.org/D14387
More information about the llvm-commits
mailing list