llvm-project/llvm/test/ThinLTO/X86/Inputs
Teresa Johnson 81bbf74265 [ThinLTO] Enable importing of aliases as copy of aliasee
Summary:
This implements a missing feature to allow importing of aliases, which
was previously disabled because alias cannot be available_externally.
We instead import an alias as a copy of its aliasee.

Some additional work was required in the IndexBitcodeWriter for the
distributed build case, to ensure that the aliasee has a value id
in the distributed index file (i.e. even when it is not being
imported directly).

This is a performance win in codes that have many aliases, e.g. C++
applications that have many constructor and destructor aliases.

Reviewers: pcc

Subscribers: mehdi_amini, inglorion, eraman, llvm-commits

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

llvm-svn: 320895
2017-12-16 00:18:12 +00:00
..
alias_import.ll
alias_resolution.ll
autoupgrade.bc
cache-icall.ll Fix thinlto cache key computation for cfi-icall. 2017-08-09 23:24:07 +00:00
cache-import-lists1.ll
cache-import-lists2.ll
cache-typeid-resolutions-import.ll LTO: Hash type identifier resolutions for WholeProgramDevirt. 2017-03-10 21:37:10 +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.ll
crash_debuginfo.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
deadstrip.ll
debuginfo-compositetype-import.ll
debuginfo-cu-import.ll
diagnostic-handler-remarks.ll
dicompositetype-unique.ll
distributed_import.ll [ThinLTO] Enable importing of aliases as copy of aliasee 2017-12-16 00:18:12 +00:00
distributed_indexes.ll [ThinLTO] Enable importing of aliases as copy of aliasee 2017-12-16 00:18:12 +00:00
drop-debug-info.bc
drop-debug-info.ll
emit_imports.ll
empty.ll
empty_module_with_cache.ll
export.ll
funcimport-tbaa.ll
funcimport.ll
funcimport2.ll
import_opaque_type.ll
lazyload_metadata.ll
linkonce_aliasee_ref_import.ll
linkonce_resolution_comdat.ll
llvm.used.ll
local_name_conflict1.ll
local_name_conflict2.ll
merge-triple.ll [ThinLTO] Do not assert when adding a module with a different but 2017-05-18 03:52:29 +00:00
module_asm.ll
module_asm2.ll
personality-local.ll [lib/Analysis] - Mark personality functions as live. 2017-08-22 08:50:56 +00:00
personality.ll ModuleSummaryAnalysis: Correctly handle all function operand references. 2017-09-07 05:35:35 +00:00
reference_non_importable.ll
referenced_by_constant.ll
section.ll
select_right_alias_definition1.ll
select_right_alias_definition2.ll
weak_resolution.ll