1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 05:23:45 +02:00
llvm-mirror/test/Linker/Inputs
Peter Collingbourne 5b721561aa DI: Reverse direction of subprogram -> function edge.
Previously, subprograms contained a metadata reference to the function they
described. Because most clients need to get or set a subprogram for a given
function rather than the other way around, this created unneeded inefficiency.

For example, many passes needed to call the function llvm::makeSubprogramMap()
to build a mapping from functions to subprograms, and the IR linker needed to
fix up function references in a way that caused quadratic complexity in the IR
linking phase of LTO.

This change reverses the direction of the edge by storing the subprogram as
function-level metadata and removing DISubprogram's function field.

Since this is an IR change, a bitcode upgrade has been provided.

Fixes PR23367. An upgrade script for textual IR for out-of-tree clients is
attached to the PR.

Differential Revision: http://reviews.llvm.org/D14265

llvm-svn: 252219
2015-11-05 22:03:56 +00:00
..
apple-version
2003-01-30-LinkerRename.ll
2003-05-31-LinkerRename.ll
alias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
alignment.ll
basiclink.a.ll
basiclink.b.ll
comdat2.ll
comdat3.ll
comdat4.ll
comdat5.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
comdat8.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
comdat.ll
ConstantGlobals.ll
constructor-comdat.ll
ctors.ll
datalayout-a.ll
datalayout-b.ll
distinct.ll
drop-debug.bc
funcimport.ll Restore "Support for ThinLTO function importing and symbol linking." 2015-11-03 00:14:15 +00:00
ident.a.ll
ident.b.ll
linkage2.ll
linkage.a.ll
linkage.b.ll
linkage.c.ll New bitcode linker flags: 2015-09-01 17:55:55 +00:00
mdlocation.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
metadata-function.ll
module-flags-dont-change-others.ll
module-flags-pic-1-b.ll
module-flags-pic-2-b.ll
old_global_ctors.3.4.bc
opaque.ll
override-different-linkage.ll
override-with-internal-linkage-2.ll
override-with-internal-linkage.ll
override.ll
pr21374.ll
pr22807-1.ll
pr22807-2.ll
PR8300.a.ll
PR8300.b.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
PR11464.a.ll
PR11464.b.ll
redefinition.ll
replaced-function-matches-first-subprogram.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
subprogram-linkonce-weak.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
targettriple-a.ll
targettriple-b.ll
targettriple-c.ll
testlink.ll
type-unique-alias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
type-unique-dst-types2.ll
type-unique-dst-types3.ll
type-unique-inheritance-a.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
type-unique-inheritance-b.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
type-unique-name.ll
type-unique-opaque.ll
type-unique-simple2-a.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
type-unique-simple2-b.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
type-unique-unrelated2.ll
type-unique-unrelated3.ll
unique-fwd-decl-b.ll
unique-fwd-decl-order.ll
visibility.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00