llvm-project/llvm/test/tools/dsymutil/Inputs
Peter Collingbourne d4bff30370 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
..
dead-stripped [dsymutil] Discard useless location attributes. 2015-09-11 04:17:30 +00:00
empty_range [dsymutil] Do not crash on empty debug_range range. 2015-08-31 05:09:32 +00:00
inlined-low_pc [dsymutil] Fix handling of inlined_subprogram low_pcs 2015-08-31 01:43:14 +00:00
mismatch Fix this dsymutil testcase by not passing in a path to the modulemap file, 2015-09-23 19:53:10 +00:00
modules dsymutil: Also ignore the ByteSize when building the DeclContext cache for 2015-10-02 00:27:08 +00:00
odr-anon-namespace [dsymutil] Refactor ODR uniquing tests to be more readable. 2015-08-23 02:38:29 +00:00
odr-member-functions [dsymutil] Refactor ODR uniquing tests to be more readable. 2015-08-23 02:38:29 +00:00
odr-uniquing [dsymutil] Fix testcase. 2015-08-31 05:16:30 +00:00
submodules dsymutil: Don't prune forward declarations inside of an imported TAG_module 2015-10-05 23:11:20 +00:00
basic-archive.macho.x86_64 [dsymutil] Implement the BinaryHolder object and gain archive support. 2015-01-05 21:29:28 +00:00
basic-lto-dw4.macho.x86_64 [dsymutil] Fix location cloning for newer dwarf versions. 2015-03-13 18:35:39 +00:00
basic-lto-dw4.macho.x86_64.o [dsymutil] Fix location cloning for newer dwarf versions. 2015-03-13 18:35:39 +00:00
basic-lto.macho.x86_64 Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic-lto.macho.x86_64.o Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic.macho.i386 Reapply r246012 [dsymutil] Emit real dSYM companion binaries. 2015-09-02 16:49:13 +00:00
basic.macho.x86_64 Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic1.c [dsymutil] Implement the BinaryHolder object and gain archive support. 2015-01-05 21:29:28 +00:00
basic1.macho.x86_64.o Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic2-custom-linetable.macho.x86_64.o [dsymutil] Use the new MCDwarfLineTableParams customization to emit linetables 2015-08-07 15:14:13 +00:00
basic2.c [dsymutil] Use the new MCDwarfLineTableParams customization to emit linetables 2015-08-07 15:14:13 +00:00
basic2.macho.x86_64.o Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic3.c Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
basic3.macho.x86_64.o Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
fat-test.arm.dylib [dsymutil] Add support for the -arch option. 2015-08-05 22:33:28 +00:00
fat-test.arm.o [dsymutil] Add support for the -arch option. 2015-08-05 22:33:28 +00:00
fat-test.c [dsymutil] Update source used to generate test binary. 2015-08-05 23:33:45 +00:00
fat-test.dylib [dsymutil] Implement support for handling mach-o universal binaries as main input/output. 2015-08-05 18:27:44 +00:00
fat-test.o [dsymutil] Implement support for universal mach-o object files. 2015-07-24 06:41:11 +00:00
frame-dw2.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
frame-dw4.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
frame.c [dsymutil] Add support for linking the debug_frame section. 2015-06-05 23:06:11 +00:00
libbasic.a [dsymutil] Implement the BinaryHolder object and gain archive support. 2015-01-05 21:29:28 +00:00
libfat-test.a [dsymutil] Implement support for universal mach-o object files. 2015-07-24 06:41:11 +00:00