[ThinLTO/gold] ThinLTO internalization fixes
authorTeresa Johnson <tejohnson@google.com>
Wed, 13 Jul 2016 03:42:41 +0000 (03:42 +0000)
committerTeresa Johnson <tejohnson@google.com>
Wed, 13 Jul 2016 03:42:41 +0000 (03:42 +0000)
commit27694571b11b66709192bab87af6b7fd7de0a9f9
treeede6aeaaecc4337f953319b0ff4b7390232390ef
parent17bdf445e42e902dbd97e80facfdeaa7cb6e61f8
[ThinLTO/gold] ThinLTO internalization fixes

Internalization was missing cases where we originally had a local symbol
that was promoted eagerly but not actually exported. This is because we
were only internalizing the set of global (non-local) symbols that were
PREVAILAING_DEF_IRONLY. Instead, collect the set of global symbols that
are referenced outside of a single IR file, and skip internalization for
those.

llvm-svn: 275247
llvm/test/tools/gold/X86/thinlto.ll
llvm/test/tools/gold/X86/thinlto_internalize.ll
llvm/tools/gold/gold-plugin.cpp