1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test/ThinLTO/X86
Peter Collingbourne 70e4a61c17 ModuleSummaryAnalysis: Correctly handle all function operand references.
The current code that handles personality functions when creating a
module summary does not correctly handle the case where a function's
personality function operand refers to the function indirectly
(e.g. via a bitcast). This patch handles such cases by treating
personality function references like any other reference, i.e. by
adding them to the function's reference list. This has the minor side
benefit of allowing personality functions to participate in early
dead stripping.

We do this by calling findRefEdges on the function itself. This way
we also end up handling other function operands (specifically prefix
data and prologue data) for free.

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

llvm-svn: 312698
2017-09-07 05:35:35 +00:00
..
Inputs ModuleSummaryAnalysis: Correctly handle all function operand references. 2017-09-07 05:35:35 +00:00
alias_import.ll ThinLTO: Don't import aliases of any kind (even linkonce_odr) 2017-07-27 15:09:06 +00:00
alias_resolution.ll
autoupgrade.ll Bitcode: Write the irsymtab to disk. 2017-06-27 23:50:11 +00:00
cache-config.ll
cache-icall.ll Fix thinlto cache key computation for cfi-icall. 2017-08-09 23:24:07 +00:00
cache-import-lists.ll
cache-typeid-resolutions.ll
cache.ll
cfi-icall.ll [cfi] CFI-ICall for ThinLTO. 2017-06-16 00:18:29 +00:00
crash_debuginfo.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
deadstrip.ll Move summary dead stripping before regular LTO. 2017-06-02 18:24:17 +00:00
debuginfo-compositetype-import.ll
debuginfo-cu-import.ll Canonicalize the representation of empty an expression in DIGlobalVariableExpression 2017-08-30 18:06:51 +00:00
diagnostic-handler-remarks-with-hotness.ll Emit only A Single Opt Remark When Inlining 2017-08-21 16:45:47 +00:00
diagnostic-handler-remarks.ll Emit only A Single Opt Remark When Inlining 2017-08-21 16:45:47 +00:00
dicompositetype-unique.ll
distributed_import.ll ThinLTO Minimized Bitcode File Size Reduction 2017-07-21 17:25:20 +00:00
distributed_indexes.ll
drop-debug-info.ll
emit_imports.ll
empty_module_with_cache.ll
export.ll
funcimport2.ll
funcimport-tbaa.ll
funcimport.ll
import_opaque_type.ll
internalize.ll
lazyload_metadata.ll
linkonce_aliasee_ref_import.ll
linkonce_resolution_comdat.ll
lit.local.cfg
llvm.used.ll
local_name_conflict.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_asm2.ll
module_asm_glob.ll
newpm-basic.ll [ThinLTO] Move -lto-use-new-pm to llvm-lto2, and change it to -use-new-pm. 2017-06-01 23:13:44 +00:00
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
prefix_replace.ll [llvm] Get rid of "%T" expansions 2017-08-15 20:29:24 +00:00
reference_non_importable.ll
referenced_by_constant.ll
save_objects.ll
section.ll
tli-nobuiltin.ll
weak_resolution_single.ll
weak_resolution.ll