llvm-6502/test/DebugInfo/X86
David Blaikie 254d093f99 DebugInfo: Lazily construct subprogram definition DIEs.
A further step to correctly emitting concrete out of line definitions
preceeding inlined instances of the same program.

To do this, emission of subprograms must be delayed until required since
we don't know which (abstract only (if there's no out of line
definition), concrete only (if there are no inlined instances), or both)
DIEs are required at the start of the module.

To reduce the test churn in the following commit that actually fixes the
bug, this commit introduces the lazy DIE construction and cleans up test
cases that are impacted by the changes in the resulting DIE ordering.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209675 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-27 18:37:48 +00:00
..
2010-04-13-PubType.ll
2010-08-10-DbgConstant.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
2011-09-26-GlobalVarContext.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
2011-12-16-BadStructRef.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
aligned_stack_var.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
arange.ll Disable emission of aranges by default and add a command line 2014-02-14 01:26:55 +00:00
arguments.ll DebugInfo: Generalize some tests to handle variations in attribute ordering. 2014-05-23 21:11:46 +00:00
array2.ll Unbreak the gdb buildbot by not lowering dbg.declare intrinsics for arrays. 2014-04-25 23:00:25 +00:00
array.ll This reapplies r207235 with an additional bugfixes caught by the msan 2014-04-25 20:49:25 +00:00
block-capture.ll DebugInfo: Generalize a test case to not depend on abbreviation numbering. 2014-05-23 21:07:01 +00:00
byvalstruct.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
c-type-units.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
coff_debug_info_type.ll MC: honour IMAGE_SCN_CNT_INITIALIZED_DATA 2014-04-23 21:29:34 +00:00
coff_relative_names.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
concrete_out_of_line.ll DebugInfo: Lazily construct subprogram definition DIEs. 2014-05-27 18:37:48 +00:00
cu-ranges-odr.ll If we're only emitting line tables for a particular CU then don't add 2014-02-27 01:25:00 +00:00
cu-ranges.ll Move the function and data section flags into the options struct and 2014-05-20 21:25:34 +00:00
data_member_location.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
dbg_value_direct.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
dbg-at-specficiation.ll DebugInfo: Assert that a CU's subprogram list contains only subprograms. 2014-05-14 21:52:37 +00:00
dbg-byval-parameter.ll
dbg-const-int.ll
dbg-const.ll Debug info: Store the DIVariable in DebugLocEntry also for constants, 2014-04-11 17:49:47 +00:00
dbg-declare-arg.ll DebugInfo: Assume the CU's Subprogram list only contains definitions. 2014-05-16 18:26:53 +00:00
dbg-declare.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
dbg-file-name.ll
dbg-i128-const.ll
dbg-merge-loc-entry.ll Add a DIELoc class to cover the DW_FORM_exprloc set of expressions 2014-02-16 08:46:55 +00:00
dbg-prolog-end.ll
dbg-subrange.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
dbg-value-const-byref.ll This reapplies r207235 with an additional bugfixes caught by the msan 2014-04-25 20:49:25 +00:00
dbg-value-dag-combine.ll
dbg-value-inlined-parameter.ll DebugInfo: Lazily attach definition attributes to definitions. 2014-05-27 18:37:43 +00:00
dbg-value-isel.ll
dbg-value-location.ll DebugInfo: Assume all subprogram DIEs have been created before any abstract subprograms are constructed. 2014-05-19 23:16:19 +00:00
dbg-value-range.ll
dbg-value-terminator.ll
debug_frame.ll
debug-dead-local-var.ll Add a comment here. 2014-05-21 00:02:50 +00:00
debug-info-block-captured-self.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
debug-info-blocks.ll DebugInfo: Lazily construct subprogram definition DIEs. 2014-05-27 18:37:48 +00:00
debug-info-static-member.ll DwarfUnit: Share common constant value emission between APInts of small (<= 64 bit) and MCOperand immediates. 2014-05-11 15:47:39 +00:00
debug-loc-offset.ll DebugInfo: Generalize some tests to handle variations in attribute ordering. 2014-05-23 21:11:46 +00:00
debug-ranges-offset.ll Make sure that rangelists are also relative to the compile unit 2014-04-25 22:23:54 +00:00
decl-derived-member.ll decl-derived-member.ll: Try to unbreak. Don't add -mtriple to %llc_dwarf. 2014-03-12 23:08:19 +00:00
discriminator.ll Use a fixed subtarget for test so atom scheduling can't change the addresses this test relies on. 2014-03-15 23:01:29 +00:00
DW_AT_byte_size.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
DW_AT_linkage_name.ll DebugInfo: Generalize some tests to handle variations in attribute ordering. 2014-05-23 21:11:46 +00:00
DW_AT_location-reference.ll Fix llvm-objdump crash. 2014-04-03 23:20:02 +00:00
DW_AT_object_pointer.ll Revert "Emit DW_AT_object_pointer once, on the declaration, for each function." 2014-04-30 22:58:19 +00:00
DW_AT_specification.ll DebugInfo: Simplify subprogram declaration creation/references and accidentally refix PR11300. 2014-05-21 18:04:33 +00:00
DW_AT_stmt_list_sec_offset.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
DW_TAG_friend.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
dwarf-aranges-no-dwarf-labels.ll Disable emission of aranges by default and add a command line 2014-02-14 01:26:55 +00:00
dwarf-aranges.ll DebugInfo: Improve test to not depend on the specific naming of temporary symbols 2014-03-07 00:23:38 +00:00
dwarf-public-names.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
dwarf-pubnames-split.ll DebugInfo: Refactor emitDebugPubNames/Types into a common implementation 2014-03-11 23:18:15 +00:00
earlydup-crash.ll
elf-names.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
empty-and-one-elem-array.ll DebugInfo: Lazily attach definition attributes to definitions. 2014-05-27 18:37:43 +00:00
empty-array.ll DebugInfo: Use a 64 bit type for the subrange 2014-04-03 06:28:20 +00:00
ending-run.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
enum-class.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
enum-fwd-decl.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
fission-cu.ll DebugInfo: Add GNU_addr_base and GNU_ranges_base only when there are addresses or ranges 2014-03-25 05:34:24 +00:00
fission-hash.ll Turn on hashing by default for split dwarf compile units. 2014-03-12 17:14:43 +00:00
fission-ranges.ll Debug info: Store the DIVariable in DebugLocEntry also for constants, 2014-04-11 17:49:47 +00:00
formal_parameter.ll This reapplies r207235 with an additional bugfixes caught by the msan 2014-04-25 20:49:25 +00:00
generate-odr-hash.ll Revert "DebugInfo: Don't put fission type units in comdat sections." 2014-05-21 23:27:41 +00:00
gnu-public-names-empty.ll DebugInfo: Tag units as having been indexed in GNU pubnames by using a DW_AT_GNU_pubnames of DW_FORM_flag(_present) rather than sec_offsets to the pubnames/types sections 2014-03-06 05:47:39 +00:00
gnu-public-names.ll DebugInfo: Generalize some tests to handle variations in attribute ordering. 2014-05-23 21:11:46 +00:00
inline-member-function.ll DebugInfo: Lazily construct subprogram definition DIEs. 2014-05-27 18:37:48 +00:00
inline-seldag-test.ll DebugInfo: Lazily construct subprogram definition DIEs. 2014-05-27 18:37:48 +00:00
instcombine-instrinsics.ll This reapplies r207235 with an additional bugfixes caught by the msan 2014-04-25 20:49:25 +00:00
lexical_block.ll DebugInfo: Use DW_FORM_data4 for DW_AT_high_pc in DW_TAG_lexical_blocks 2014-03-08 00:58:20 +00:00
line-info.ll Support DWARF discriminators in object streamer. 2014-02-14 19:27:53 +00:00
linkage-name.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
lit.local.cfg
low-pc-cu.ll Reapply DW_AT_low/high_pc patch: 2014-03-20 19:16:16 +00:00
main-file-name.s
misched-dbg-value.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
multiple-aranges.ll Disable emission of aranges by default and add a command line 2014-02-14 01:26:55 +00:00
multiple-at-const-val.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
nondefault-subrange-array.ll DebugInfo: Use a 64 bit type for the subrange 2014-04-03 06:28:20 +00:00
objc-fwd-decl.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
objc-property-void.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
op_deref.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
parameters.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
pointer-type-size.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
pr11300.ll DebugInfo: Generalize some tests to handle variations in attribute ordering. 2014-05-23 21:11:46 +00:00
pr12831.ll DebugInfo: Sure up subprogram variable list handling with more assertions and fewer conditionals. 2014-05-14 21:52:46 +00:00
pr13303.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
prologue-stack.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
ref_addr_relocation.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
reference-argument.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
rvalue-ref.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
sret.ll DebugInfo: Lazily construct subprogram definition DIEs. 2014-05-27 18:37:48 +00:00
stmt-list-multiple-compile-units.ll DebugInfo: Avoid creating unnecessary/empty line tables and remove the special case of '0' in DwarfCompileUnit::initStmtList by just always using a label difference 2014-04-01 08:07:52 +00:00
stmt-list.ll DebugInfo: Avoid creating unnecessary/empty line tables and remove the special case of '0' in DwarfCompileUnit::initStmtList by just always using a label difference 2014-04-01 08:07:52 +00:00
stringpool.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
struct-loc.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
subrange-type.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
subreg.ll Debug info: Remove ARMAsmPrinter::EmitDwarfRegOp(). AsmPrinter can now 2014-02-27 17:56:08 +00:00
subregisters.ll Debug info: Bugfix for r201190: DW_OP_piece takes bytes, not bits. 2014-02-12 19:34:44 +00:00
template.ll Add a DIELoc class to cover the DW_FORM_exprloc set of expressions 2014-02-16 08:46:55 +00:00
tls.ll DebugInfo: Deduplicate entries in the fission address table 2014-02-15 19:34:03 +00:00
type_units_with_addresses.ll Include C++ source for debug info test case committed in r207323 2014-04-26 18:25:07 +00:00
union-template.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
vector.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00
vla.ll DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer emits zero-length arrays as {i32 0} 2014-02-04 01:23:52 +00:00