[PATCH] D28978: [ThinLTO] Add an auto-hide feature
Mehdi AMINI via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 30 15:55:54 PST 2017
mehdi_amini marked an inline comment as done.
mehdi_amini added a comment.
In https://reviews.llvm.org/D28978#661102, @pcc wrote:
> > To get this, I believe right now we need one mode field in the symbol resolution API (example: `unsigned VisibleOutsideDSO : 1`) to distinguish between the two first cases,
>
> As we discussed on IRC, I don't think that's necessary. The linker can resolve this and decide on its own whether to add the symbol to the dynamic symbol table.
You're right, we can't do any optimization or any better codegen based on this information.
I still think we should refine the partitioning detection, since only the first two cases would be merged.
External
| > Outside of LTO
| > PartitionLTO
| > RegularLTO
| > PartitionThinLTO
| > Individual ThinLTO Module
What is introduced that we don't have today is a `PartitionLTO` and a `PartitionThinLTO`. This avoids going up to External immediately when a symbol is used in multiples individual ThinLTO modules, or when it is used across Regular and ThinLTO.
Right new we have to reconstruct this information in ThinLTO because we're losing it when constructing the partitioning.
https://reviews.llvm.org/D28978
More information about the llvm-commits
mailing list