llvm-project/llvm/test/Transforms/ThinLTOBitcodeWriter
Peter Collingbourne 1f03422610 ThinLTOBitcodeWriter: Try harder to discard unused references to the merged module.
If the thin module has no references to an internal global in the
merged module, we need to make sure to preserve that property if the
global is a member of a comdat group, as otherwise promotion can end
up adding global symbols to the comdat, which is not allowed.

This situation can arise if the external global in the thin module
has dead constant users, which would cause use_empty() to return
false and would cause us to try to promote it. To prevent this from
happening, discard the dead constant users before asking whether a
global is empty.

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

llvm-svn: 319494
2017-11-30 23:05:52 +00:00
..
circular-reference.ll ThinLTOBitcodeWriter: Do not follow operand edges of type GlobalValue when looking for virtual functions. 2017-03-02 23:10:17 +00:00
comdat.ll ThinLTOBitcodeWriter: keep comdats together, rename if leader is renamed 2017-04-12 01:43:07 +00:00
filter-alias.ll ThinLTOBitcodeWriter: Try harder to discard unused references to the merged module. 2017-11-30 23:05:52 +00:00
new-pm.ll [ThinLTO] Migrate ThinLTOBitcodeWriter to the new PM. 2017-06-01 01:02:12 +00:00
no-type-md.ll ThinLTO Minimized Bitcode File Size Reduction 2017-07-21 17:25:20 +00:00
pr33536.ll [PM/ThinLTO] Fix PR33536, a bug where the ThinLTO bitcode writer was 2017-07-11 05:39:20 +00:00
split-internal-typeid.ll
split-internal1.ll
split-internal2.ll
split-vfunc-internal.ll ThinLTOBitcodeWriter: Write available_externally copies of VCP eligible functions to merged module. 2017-02-14 03:42:38 +00:00
split-vfunc.ll ThinLTOBitcodeWriter: Do not rewrite intrinsic functions when splitting modules. 2017-07-19 17:54:29 +00:00
split.ll ThinLTO Minimized Bitcode File Size Reduction 2017-07-21 17:25:20 +00:00
unsplittable.ll ModuleUtils: Stop using comdat members to generate unique module ids. 2017-10-05 21:54:53 +00:00