forked from OSchip/llvm-project
b247ffbaed
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 llvm-svn: 306826 |
||
---|---|---|
.. | ||
Inputs | ||
alias.ll | ||
asm-output.ll | ||
comdat-mixed-lto.ll | ||
comdat.ll | ||
common2.ll | ||
commons.ll | ||
dead-strip-fulllto.ll | ||
diagnostic-handler-remarks-with-hotness.ll | ||
diagnostic-handler-remarks.ll | ||
empty-bitcode.test | ||
ifunc.ll | ||
intrinsic.ll | ||
link-odr-availextern.ll | ||
linker-redef.ll | ||
linkonce.ll | ||
lit.local.cfg | ||
lowertypetests.ll | ||
mixed_lto.ll | ||
mod-asm-used.ll | ||
multi-thinlto.ll | ||
symtab-elf.ll | ||
symtab.ll | ||
type-checked-load.ll |