llvm/test/LTO
Teresa Johnson ae8374b553 [LTO] Remove values from non-prevailing comdats
Summary:
When linking a regular LTO module, if it has any non-prevailing values
(dropped to available_externally) in comdats, we need to do more than
just remove those values from their comdat. We also remove all values
from that comdat, so as to avoid leaving an incomplete comdat.

This is necessary in case we are compiling in mixed regular and ThinLTO
mode, since the resulting regularLTO native object is always linked into
the final binary first. We need to prevent the linker from selecting an
incomplete comdat that was not the prevailing copy.

Fixes PR32980.

Reviewers: pcc, rafael

Subscribers: mehdi_amini, david2050, llvm-commits, inglorion

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@306826 91177308-0d34-0410-b5e6-96231b3b80d8
2017-06-30 14:03:24 +00:00
..
ARM [Linker] Remove warning when linking ARM and Thumb IR modules. 2017-06-07 09:17:01 +00:00
Resolution/X86 [LTO] Remove values from non-prevailing comdats 2017-06-30 14:03:24 +00:00
X86 Revert "Revert "ThinLTO: Verify bitcode before lauching the ThinLTOCodeGenerator."" 2017-05-20 00:00:08 +00:00