llvm/test/ThinLTO/X86/Inputs
George Rimar 95a4133b77 [lib/Analysis] - Mark personality functions as live.
This is PR33245.

Case I am fixing is next:
Imagine we have 2 BC files, one defines and uses personality routine,
second has only declaration and also uses it.

Previously algorithm computing dead symbols (llvm::computeDeadSymbols) did
not know about personality routines and leaved them dead even if function that
has routine was live.

As a result thinLTOInternalizeAndPromoteGUID() method changed binding for
such symbol to local. Later when LLD tried to link these objects it failed
because one object had undefined global symbol for routine and second
object contained local definition instead of global.

Patch set the live root flag on the corresponding FunctionSummary
for personality routines when we build the per-module summaries
during the compile step.

Differential revision: https://reviews.llvm.org/D36834

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@311432 91177308-0d34-0410-b5e6-96231b3b80d8
2017-08-22 08:50:56 +00:00
..
alias_import.ll ThinLTO: Resolve linkonce_odr aliases just like functions 2016-04-21 05:47:17 +00:00
alias_resolution.ll ThinLTO: Resolve linkonce_odr aliases just like functions 2016-04-21 05:47:17 +00:00
autoupgrade.bc Fix bitcode auto-upgrade when using bitcode lazy loading 2016-08-14 00:01:27 +00:00
cache-icall.ll Fix thinlto cache key computation for cfi-icall. 2017-08-09 23:24:07 +00:00
cache-import-lists1.ll LTO: Hash the set of imported symbols for each module. 2017-03-03 20:25:30 +00:00
cache-import-lists2.ll LTO: Hash the set of imported symbols for each module. 2017-03-03 20:25:30 +00:00
cache-typeid-resolutions1.ll LTO: Hash type identifier resolutions for LowerTypeTests. 2017-03-10 21:35:17 +00:00
cache-typeid-resolutions2.ll LTO: Hash type identifier resolutions for WholeProgramDevirt. 2017-03-10 21:37:10 +00:00
cache-typeid-resolutions3.ll LTO: Hash type identifier resolutions for WholeProgramDevirt. 2017-03-10 21:37:10 +00:00
cache-typeid-resolutions-import.ll LTO: Hash type identifier resolutions for WholeProgramDevirt. 2017-03-10 21:37:10 +00:00
cache.ll Add testing in llvm-lto for ThinLTO caching. 2016-05-14 05:16:41 +00:00
crash_debuginfo.ll Renumber testcase metadata nodes after r290153. 2016-12-22 00:45:21 +00:00
deadstrip.ll ThinLTO: add early "dead-stripping" on the Index 2017-01-05 21:34:18 +00:00
debuginfo-compositetype-import.ll Temporarily revert "For X86-64 linux and PPC64 linux align int128 to 16 bytes." 2017-02-10 04:35:32 +00:00
debuginfo-cu-import.ll [ThinLTO] Import only necessary DICompileUnit fields 2016-12-12 16:09:30 +00:00
diagnostic-handler-remarks.ll [ThinLTO] Implement -pass-remarks-output in ThinLTOCodeGenerator 2016-11-19 18:20:05 +00:00
dicompositetype-unique.ll [ThinLTO] Add a llvm-lto2 test to check that ODR type uniquing is enabled (NFC) 2016-08-23 18:39:15 +00:00
distributed_import.ll [LTO] Reject modules without datalayout. 2016-12-14 21:57:04 +00:00
distributed_indexes.ll Restore "[ThinLTO] Emit individual index files for distributed backends" 2016-05-10 13:48:23 +00:00
drop-debug-info.bc Refactor stripDebugInfo(Function) to handle intrinsic 2016-05-07 04:10:52 +00:00
drop-debug-info.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
emit_imports.ll [ThinLTO] Always emit a summary when compiling in ThinLTO mode 2016-09-20 23:07:17 +00:00
empty_module_with_cache.ll ThinLTO: handles modules with empty summaries 2016-10-08 04:44:18 +00:00
empty.ll [ThinLTO] Always emit a summary when compiling in ThinLTO mode 2016-09-20 23:07:17 +00:00
export.ll [ThinLTO] Thin link efficiency improvement: don't re-export globals (NFC) 2016-12-15 23:50:06 +00:00
funcimport2.ll [ThinLTO] Disable importing and other cross-module optis at -O0 2016-10-31 22:12:21 +00:00
funcimport-tbaa.ll [ThinLTO] Fix assertions on lazy-loading of Metadata TBAA attachments 2017-01-07 20:24:23 +00:00
funcimport.ll
import_opaque_type.ll [ThinLTO] Fix crash when importing an opaque type 2016-11-19 18:44:16 +00:00
lazyload_metadata.ll Use lazy-loading of Metadata in MetadataLoader when importing is enabled (NFC) 2017-01-04 22:54:33 +00:00
linkonce_aliasee_ref_import.ll Temporarily revert "For X86-64 linux and PPC64 linux align int128 to 16 bytes." 2017-02-10 04:35:32 +00:00
linkonce_resolution_comdat.ll Temporarily revert "For X86-64 linux and PPC64 linux align int128 to 16 bytes." 2017-02-10 04:35:32 +00:00
llvm.used.ll ThinLTO: fix assertion and refactor check for hidden use from inline ASM in a helper function 2016-05-06 08:25:33 +00:00
local_name_conflict1.ll [ThinLTO] Handle conflicting local names gracefully 2017-01-06 23:38:41 +00:00
local_name_conflict2.ll [ThinLTO] Handle conflicting local names gracefully 2017-01-06 23:38:41 +00:00
merge-triple.ll [ThinLTO] Do not assert when adding a module with a different but 2017-05-18 03:52:29 +00:00
module_asm2.ll Temporarily revert "For X86-64 linux and PPC64 linux align int128 to 16 bytes." 2017-02-10 04:35:32 +00:00
module_asm.ll Temporarily revert "For X86-64 linux and PPC64 linux align int128 to 16 bytes." 2017-02-10 04:35:32 +00:00
personality-local.ll [lib/Analysis] - Mark personality functions as live. 2017-08-22 08:50:56 +00:00
personality.ll [lib/Analysis] - Mark personality functions as live. 2017-08-22 08:50:56 +00:00
reference_non_importable.ll [ThinLTO] Stop importing constant global vars as copies in the backend 2016-12-02 01:02:30 +00:00
referenced_by_constant.ll [ThinLTO] Stop importing constant global vars as copies in the backend 2016-12-02 01:02:30 +00:00
section.ll ThinLTO: do not promote GlobalVariable that have a specific section. 2016-04-27 00:32:13 +00:00
select_right_alias_definition1.ll FunctionImport: make sure we always select the right callee in presence of alias 2016-04-20 04:17:36 +00:00
select_right_alias_definition2.ll FunctionImport: make sure we always select the right callee in presence of alias 2016-04-20 04:17:36 +00:00
weak_resolution.ll [ThinLTO] Resolve LinkOnceAny 2016-05-26 14:16:52 +00:00