6c475a7595
Summary: Using the linker-supplied list of "preserved" symbols, we can compute the list of "dead" symbols, i.e. the one that are not reachable from a "preserved" symbol transitively on the reference graph. Right now we are using this information to mark these functions as non-eligible for import. The impact is two folds: - Reduction of compile time: we don't import these functions anywhere or import the function these symbols are calling. - The limited number of import/export leads to better internalization. Patch originally by Mehdi Amini. Reviewers: mehdi_amini, pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D23488 llvm-svn: 291177 |
||
---|---|---|
.. | ||
alias_import.ll | ||
alias_resolution.ll | ||
autoupgrade.bc | ||
cache.ll | ||
crash_debuginfo.ll | ||
deadstrip.ll | ||
debuginfo-compositetype-import.ll | ||
debuginfo-cu-import.ll | ||
diagnostic-handler-remarks.ll | ||
dicompositetype-unique.ll | ||
distributed_import.ll | ||
distributed_indexes.ll | ||
drop-debug-info.bc | ||
drop-debug-info.ll | ||
emit_imports.ll | ||
empty.ll | ||
empty_module_with_cache.ll | ||
export.ll | ||
funcimport.ll | ||
funcimport2.ll | ||
import_opaque_type.ll | ||
lazyload_metadata.ll | ||
linkonce_aliasee_ref_import.ll | ||
linkonce_resolution_comdat.ll | ||
llvm.used.ll | ||
module_asm.ll | ||
module_asm2.ll | ||
reference_non_importable.ll | ||
referenced_by_constant.ll | ||
section.ll | ||
select_right_alias_definition1.ll | ||
select_right_alias_definition2.ll | ||
weak_resolution.ll |