1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/DebugInfo
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
..
AArch64 DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
ARM DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
COFF DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Generic DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Inputs DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
Mips DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
PDB s/NumFiles/NumStreams/ 2015-10-15 01:39:00 +00:00
PowerPC DI: Disallow uniquable DICompileUnits 2015-08-03 17:26:41 +00:00
Sparc DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
SystemZ DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
X86 DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
arm-relocs.test
debuglineinfo-macho.test [DWARF] Fix a bug in line info handling 2015-05-31 23:37:04 +00:00
debuglineinfo.test [DWARF] Fix a bug in line info handling 2015-05-31 23:37:04 +00:00
dwarfdump-64-bit-dwarf.test DebugInfo: .debug_line DWARF64 support 2015-05-28 15:38:17 +00:00
dwarfdump-accel.test Fix a bunch of trivial cases of 'CHECK[^:]*$' in the tests. NFCI 2015-08-10 19:01:27 +00:00
dwarfdump-debug-frame-simple.test
dwarfdump-debug-loc-simple.test
dwarfdump-dump-flags.test [dwarfdump] Ignore scattered relocations for mach-o. 2015-07-31 20:22:50 +00:00
dwarfdump-invalid.test Make llvm-dwarfdump exit with non-zero exit code if error was occured. 2015-06-25 23:40:15 +00:00
dwarfdump-line-dwo.test
dwarfdump-macho-relocs.test [dwarfdump] Do not apply relocations in mach-o files if there is no LoadedObjectInfo. 2015-08-23 04:44:21 +00:00
dwarfdump-macho-universal.test Don't use test inputs from other directories. 2015-08-03 11:59:45 +00:00
dwarfdump-objc.test
dwarfdump-pubnames.test
dwarfdump-ranges.test
dwarfdump-type-units.test
dwarfdump-zlib.test
dwo.ll Add REQUIRES: default_triple to these testcases. 2015-09-24 00:35:14 +00:00
llvm-symbolizer-zlib.test
llvm-symbolizer.test Fix the test case for Windows. 2015-11-04 01:09:37 +00:00
member-pointers.o
missing-abstract-variable.o
skeletoncu.ll [Hexagon] XFAILing test while diagnosing backend error. 2015-10-01 22:14:05 +00:00