OSDN Git Service

[ThinLTO] Drop non-prevailing non-ODR weak to declarations
authorTeresa Johnson <tejohnson@google.com>
Fri, 20 Jan 2017 21:54:58 +0000 (21:54 +0000)
committerTeresa Johnson <tejohnson@google.com>
Fri, 20 Jan 2017 21:54:58 +0000 (21:54 +0000)
commit1f32b341a8f28fe4c51acf182df7a1d6228e2790
tree3b8055a4f1d00c6c0373239b343d56ec5d57a5b5
parent7d5b56cb3ecf29591e8c54b7230fdb0da09f7b35
[ThinLTO] Drop non-prevailing non-ODR weak to declarations

Summary:
Allow non-ODR weak/linkonce non-prevailing copies to be marked
as available_externally in the index. Add support for dropping these to
declarations in the backend.

Reviewers: mehdi_amini, pcc

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D28806

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@292656 91177308-0d34-0410-b5e6-96231b3b80d8
lib/LTO/LTO.cpp
lib/Transforms/IPO/FunctionImport.cpp
test/ThinLTO/X86/weak_resolution.ll
test/tools/gold/X86/Inputs/thinlto_weak_library1.ll [new file with mode: 0644]
test/tools/gold/X86/Inputs/thinlto_weak_library2.ll [new file with mode: 0644]
test/tools/gold/X86/thinlto_weak_library.ll [new file with mode: 0644]
test/tools/gold/X86/thinlto_weak_resolution.ll