llvm-6502/test/DebugInfo/X86
Manman Ren b8b70e10a2 Debug Info: remove duplication of DIEs when a DIE can be shared across CUs.
We add a map in DwarfDebug to map MDNodes that are shareable across CUs to the
corresponding DIEs: MDTypeNodeToDieMap. These DIEs can be shared across CUs,
that is why we keep the maps in DwarfDebug instead of CompileUnit.

We make the assumption that if a DIE is not added to an owner yet, we assume
it belongs to the current CU. Since DIEs for the type system are added to
their owners immediately after creation, and other DIEs belong to the current
CU, the assumption should be true.

A testing case is added to show that we only create a single DIE for a type
MDNode and we use ref_addr to refer to the type DIE.

We also add a testing case to show ref_addr relocations for non-darwin
platforms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193779 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-31 17:54:35 +00:00
..
2010-04-13-PubType.ll Don't bother emitting the pubtypes section on darwin since there aren't 2013-08-30 00:40:17 +00:00
2010-08-10-DbgConstant.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
2011-09-26-GlobalVarContext.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
2011-12-16-BadStructRef.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
aligned_stack_var.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
arguments.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
block-capture.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
byvalstruct.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
coff_relative_names.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
concrete_out_of_line.ll DebugInfo: Fix ordering of members after r191928 2013-10-04 01:39:59 +00:00
dbg_value_direct.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-at-specficiation.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
dbg-byval-parameter.ll Move some debug testcases to the debug info directory. 2013-08-27 23:48:57 +00:00
dbg-const-int.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-const.ll Move some debug testcases to the debug info directory. 2013-08-27 23:48:57 +00:00
dbg-declare-arg.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
dbg-declare.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
dbg-file-name.ll Move some debug testcases to the debug info directory. 2013-08-27 23:48:57 +00:00
dbg-i128-const.ll Move some debug testcases to the debug info directory. 2013-08-27 23:48:57 +00:00
dbg-large-unsigned-const.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
dbg-merge-loc-entry.ll Move some debug testcases to the debug info directory. 2013-08-27 23:48:57 +00:00
dbg-prolog-end.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-subrange.ll Initialize BSSSection explicitly in InitMachOMCObjectFileInfo() to appease msvc. 2013-09-21 02:34:45 +00:00
dbg-value-dag-combine.ll Enable MI Sched for x86. 2013-10-15 23:33:07 +00:00
dbg-value-inlined-parameter.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-value-isel.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-value-location.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-value-range.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
dbg-value-terminator.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
debug_frame.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
debug-info-block-captured-self.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
debug-info-blocks.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
debug-info-static-member.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
DW_AT_byte_size.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
DW_AT_location-reference.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
DW_AT_object_pointer.ll Debug Info: use createAndAddDIE for newly-created Subprogram DIEs. 2013-10-29 00:58:04 +00:00
DW_AT_specification.ll Debug Info: use createAndAddDIE for newly-created Subprogram DIEs. 2013-10-29 00:58:04 +00:00
DW_AT_stmt_list_sec_offset.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
DW_TAG_friend.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
dwarf-aranges-no-dwarf-labels.ll Remove wild .debug_aranges entries generated from unimportant labels 2013-10-03 08:54:43 +00:00
dwarf-aranges.ll Fixed a bug with section names containing special characters. 2013-10-03 22:07:08 +00:00
dwarf-public-names.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
dwarf-pubnames-split.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
earlydup-crash.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
eh_symbol.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
elf-names.ll Debug Info: use createAndAddDIE for newly-created Subprogram DIEs. 2013-10-29 00:58:04 +00:00
empty-and-one-elem-array.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
empty-array.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
ending-run.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
enum-class.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
enum-fwd-decl.ll Debug Info: add an identifier field to DICompositeType. 2013-08-26 22:39:55 +00:00
fission-cu.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
fission-hash.ll DebugInfo: Hash DW_FORM_GNU_str_index as a string. 2013-10-21 16:37:22 +00:00
fission-ranges.ll Add the DW_AT_GNU_ranges_base attribute if we've emitted any ranges 2013-10-01 00:43:36 +00:00
generate-odr-hash.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
gnu-public-names-empty.ll Make sure we emit a section for pubnames even if that section is 2013-10-03 17:41:20 +00:00
gnu-public-names.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
instcombine-instrinsics.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
line-info.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
linkage-name.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
lit.local.cfg [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
low-pc-cu.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
main-file-name.s Now that llvm-dwarfdump supports flags to specify which DWARF section to dump, 2013-01-25 21:44:53 +00:00
misched-dbg-value.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
multiple-aranges.ll Fixed a bug with section names containing special characters. 2013-10-03 22:07:08 +00:00
multiple-at-const-val.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
nondefault-subrange-array.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
objc-fwd-decl.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
op_deref.ll Debug info: Get rid of the VLA indirection hack in FastISel. 2013-09-18 22:08:59 +00:00
parameters.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
pointer-type-size.ll Debug Info Testing: Updated to use null instead of "i32 0" for containing-type 2013-09-06 18:13:59 +00:00
pr9951.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
pr11300.ll Debug Info: use createAndAddDIE for newly-created Subprogram DIEs. 2013-10-29 00:58:04 +00:00
pr12831.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
pr13303.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
prologue-stack.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
ref_addr_relocation.ll Debug Info: remove duplication of DIEs when a DIE can be shared across CUs. 2013-10-31 17:54:35 +00:00
reference-argument.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
rvalue-ref.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
stmt-list-multiple-compile-units.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
stmt-list.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
stringpool.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
struct-loc.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 05:49:41 +00:00
subrange-type.ll Debug Info: instead of calling addToContextOwner which constructs the context 2013-10-29 22:49:29 +00:00
subreg.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
template.ll Debug Info: use createAndAddDIE for newly-created Subprogram DIEs. 2013-10-29 00:58:04 +00:00
tls-fission.ll PR14728: DebugInfo: TLS variables with -gsplit-dwarf 2013-07-01 23:55:52 +00:00
tls.ll PR16493: DebugInfo with TLS on PPC crashing due to invalid relocation 2013-07-01 21:45:25 +00:00
union-template.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
vector.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
vla.ll Debug info: Get rid of the VLA indirection hack in FastISel. 2013-09-18 22:08:59 +00:00