[PR27284] Reverse the ownership between DICompileUnit and DISubprogram.
authorAdrian Prantl <aprantl@apple.com>
Fri, 15 Apr 2016 15:57:41 +0000 (15:57 +0000)
committerAdrian Prantl <aprantl@apple.com>
Fri, 15 Apr 2016 15:57:41 +0000 (15:57 +0000)
commit75819aedf6d774a424e35793b266442708e57050
treee4eabf3bd19e9dee6ed3aefc8f4e2cb16d6bb285
parente76bda544bbf52d9ff3b55e6018b494a1e6bbc00
[PR27284] Reverse the ownership between DICompileUnit and DISubprogram.

Currently each Function points to a DISubprogram and DISubprogram has a
scope field. For member functions the scope is a DICompositeType. DIScopes
point to the DICompileUnit to facilitate type uniquing.

Distinct DISubprograms (with isDefinition: true) are not part of the type
hierarchy and cannot be uniqued. This change removes the subprograms
list from DICompileUnit and instead adds a pointer to the owning compile
unit to distinct DISubprograms. This would make it easy for ThinLTO to
strip unneeded DISubprograms and their transitively referenced debug info.

Motivation
----------

Materializing DISubprograms is currently the most expensive operation when
doing a ThinLTO build of clang.

We want the DISubprogram to be stored in a separate Bitcode block (or the
same block as the function body) so we can avoid having to expensively
deserialize all DISubprograms together with the global metadata. If a
function has been inlined into another subprogram we need to store a
reference the block containing the inlined subprogram.

Attached to https://llvm.org/bugs/show_bug.cgi?id=27284 is a python script
that updates LLVM IR testcases to the new format.

http://reviews.llvm.org/D19034
<rdar://problem/25256815>

llvm-svn: 266446
540 files changed:
llvm/include/llvm/IR/DIBuilder.h
llvm/include/llvm/IR/DebugInfoMetadata.h
llvm/lib/AsmParser/LLParser.cpp
llvm/lib/Bitcode/Reader/BitcodeReader.cpp
llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
llvm/lib/IR/AsmWriter.cpp
llvm/lib/IR/DIBuilder.cpp
llvm/lib/IR/DebugInfo.cpp
llvm/lib/IR/DebugInfoMetadata.cpp
llvm/lib/IR/LLVMContextImpl.h
llvm/lib/IR/Verifier.cpp
llvm/lib/Linker/IRMover.cpp
llvm/lib/Transforms/IPO/StripSymbols.cpp
llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
llvm/lib/Transforms/Utils/CloneFunction.cpp
llvm/test/Assembler/2010-02-05-FunctionLocalMetadataBecomesNull.ll
llvm/test/Assembler/dicompileunit.ll
llvm/test/Assembler/diimportedentity.ll
llvm/test/Assembler/dilexicalblock.ll
llvm/test/Assembler/dilocalvariable-arg-large.ll
llvm/test/Assembler/dilocalvariable.ll
llvm/test/Assembler/dilocation.ll
llvm/test/Assembler/disubprogram.ll
llvm/test/Assembler/drop-debug-info.ll
llvm/test/Assembler/metadata.ll
llvm/test/Bitcode/DISubprogram-distinct-definitions.ll
llvm/test/Bitcode/DISubprogram-distinct-definitions.ll.bc
llvm/test/Bitcode/debug-loc-again.ll
llvm/test/Bitcode/upgrade-subprogram.ll
llvm/test/BugPoint/metadata.ll
llvm/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll
llvm/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
llvm/test/CodeGen/ARM/2009-10-16-Scope.ll
llvm/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll
llvm/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
llvm/test/CodeGen/ARM/2010-08-04-StackVariable.ll
llvm/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
llvm/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
llvm/test/CodeGen/ARM/arm-shrink-wrapping.ll
llvm/test/CodeGen/ARM/coalesce-dbgvalue.ll
llvm/test/CodeGen/ARM/debug-frame-vararg.ll
llvm/test/CodeGen/ARM/debug-frame.ll
llvm/test/CodeGen/ARM/debug-info-arg.ll
llvm/test/CodeGen/ARM/debug-info-blocks.ll
llvm/test/CodeGen/ARM/debug-info-branch-folding.ll
llvm/test/CodeGen/ARM/debug-info-d16-reg.ll
llvm/test/CodeGen/ARM/debug-info-no-frame.ll
llvm/test/CodeGen/ARM/debug-info-qreg.ll
llvm/test/CodeGen/ARM/debug-info-s16-reg.ll
llvm/test/CodeGen/ARM/debug-info-sreg2.ll
llvm/test/CodeGen/ARM/debug-segmented-stacks.ll
llvm/test/CodeGen/ARM/vfp-regs-dwarf.ll
llvm/test/CodeGen/Hexagon/cfi-late.ll
llvm/test/CodeGen/Hexagon/hwloop-dbg.ll
llvm/test/CodeGen/Inputs/DbgValueOtherTargets.ll
llvm/test/CodeGen/MIR/ARM/ARMLoadStoreDBG.mir
llvm/test/CodeGen/MIR/ARM/sched-it-debug-nodes.mir
llvm/test/CodeGen/MIR/X86/expected-metadata-node-after-debug-location.mir
llvm/test/CodeGen/MIR/X86/expected-metadata-node-after-exclaim.mir
llvm/test/CodeGen/MIR/X86/instructions-debug-location.mir
llvm/test/CodeGen/MIR/X86/invalid-metadata-node-type.mir
llvm/test/CodeGen/MIR/X86/metadata-operands.mir
llvm/test/CodeGen/MIR/X86/stack-object-debug-info.mir
llvm/test/CodeGen/MIR/X86/unknown-metadata-node.mir
llvm/test/CodeGen/NVPTX/debug-file-loc.ll
llvm/test/CodeGen/PowerPC/dbg.ll
llvm/test/CodeGen/PowerPC/pr17168.ll
llvm/test/CodeGen/PowerPC/pr24546.ll
llvm/test/CodeGen/PowerPC/unwind-dw2-g.ll
llvm/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll
llvm/test/CodeGen/WinEH/wineh-cloning.ll
llvm/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll
llvm/test/CodeGen/X86/2009-10-16-Scope.ll
llvm/test/CodeGen/X86/2010-01-18-DbgValue.ll
llvm/test/CodeGen/X86/2010-02-01-DbgValueCrash.ll
llvm/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll
llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
llvm/test/CodeGen/X86/2010-05-28-Crash.ll
llvm/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll
llvm/test/CodeGen/X86/2010-07-06-DbgCrash.ll
llvm/test/CodeGen/X86/2010-08-04-StackVariable.ll
llvm/test/CodeGen/X86/2010-09-16-EmptyFilename.ll
llvm/test/CodeGen/X86/2010-11-02-DbgParameter.ll
llvm/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll
llvm/test/CodeGen/X86/2012-11-30-handlemove-dbg.ll
llvm/test/CodeGen/X86/2012-11-30-misched-dbg.ll
llvm/test/CodeGen/X86/2012-11-30-regpres-dbg.ll
llvm/test/CodeGen/X86/MachineSink-DbgValue.ll
llvm/test/CodeGen/X86/StackColoring-dbg.ll
llvm/test/CodeGen/X86/bit-piece-comment.ll
llvm/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll
llvm/test/CodeGen/X86/dbg-combine.ll
llvm/test/CodeGen/X86/debugloc-argsize.ll
llvm/test/CodeGen/X86/dwarf-comp-dir.ll
llvm/test/CodeGen/X86/fpstack-debuginstr-kill.ll
llvm/test/CodeGen/X86/loc-remat.ll
llvm/test/CodeGen/X86/machine-trace-metrics-crash.ll
llvm/test/CodeGen/X86/misched-code-difference-with-debug.ll
llvm/test/CodeGen/X86/movpc32-check.ll
llvm/test/CodeGen/X86/null-streamer.ll
llvm/test/CodeGen/X86/push-cfi-debug.ll
llvm/test/CodeGen/X86/stack-protector-dbginfo.ll
llvm/test/CodeGen/X86/unknown-location.ll
llvm/test/CodeGen/XCore/dwarf_debug.ll
llvm/test/DebugInfo/AArch64/big-endian.ll
llvm/test/DebugInfo/AArch64/bitfields.ll
llvm/test/DebugInfo/AArch64/cfi-eof-prologue.ll
llvm/test/DebugInfo/AArch64/coalescing.ll
llvm/test/DebugInfo/AArch64/constant-dbgloc.ll
llvm/test/DebugInfo/AArch64/dwarfdump.ll
llvm/test/DebugInfo/AArch64/frameindices.ll
llvm/test/DebugInfo/AArch64/prologue_end.ll
llvm/test/DebugInfo/AArch64/struct_by_value.ll
llvm/test/DebugInfo/ARM/PR16736.ll
llvm/test/DebugInfo/ARM/PR26163.ll
llvm/test/DebugInfo/ARM/bitfield.ll
llvm/test/DebugInfo/ARM/cfi-eof-prologue.ll
llvm/test/DebugInfo/ARM/constant-dbgloc.ll
llvm/test/DebugInfo/ARM/float-args.ll
llvm/test/DebugInfo/ARM/header.ll
llvm/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
llvm/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
llvm/test/DebugInfo/ARM/prologue_end.ll
llvm/test/DebugInfo/ARM/s-super-register.ll
llvm/test/DebugInfo/ARM/single-constant-use-preserves-dbgloc.ll
llvm/test/DebugInfo/ARM/split-complex.ll
llvm/test/DebugInfo/ARM/sroa-complex.ll
llvm/test/DebugInfo/ARM/tls.ll
llvm/test/DebugInfo/COFF/asan-module-ctor.ll
llvm/test/DebugInfo/COFF/asan-module-without-functions.ll
llvm/test/DebugInfo/COFF/asm.ll
llvm/test/DebugInfo/COFF/cpp-mangling.ll
llvm/test/DebugInfo/COFF/fp-stack.ll
llvm/test/DebugInfo/COFF/inlining-files.ll
llvm/test/DebugInfo/COFF/inlining-levels.ll
llvm/test/DebugInfo/COFF/inlining.ll
llvm/test/DebugInfo/COFF/local-constant.ll
llvm/test/DebugInfo/COFF/local-variables.ll
llvm/test/DebugInfo/COFF/multifile.ll
llvm/test/DebugInfo/COFF/multifunction.ll
llvm/test/DebugInfo/COFF/register-variables.ll
llvm/test/DebugInfo/COFF/simple.ll
llvm/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll
llvm/test/DebugInfo/Generic/2009-11-03-InsertExtractValue.ll
llvm/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll
llvm/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll
llvm/test/DebugInfo/Generic/2009-11-10-CurrentFn.ll
llvm/test/DebugInfo/Generic/2010-01-05-DbgScope.ll
llvm/test/DebugInfo/Generic/2010-03-12-llc-crash.ll
llvm/test/DebugInfo/Generic/2010-03-19-DbgDeclare.ll
llvm/test/DebugInfo/Generic/2010-03-24-MemberFn.ll
llvm/test/DebugInfo/Generic/2010-04-06-NestedFnDbgInfo.ll
llvm/test/DebugInfo/Generic/2010-04-19-FramePtr.ll
llvm/test/DebugInfo/Generic/2010-05-03-DisableFramePtr.ll
llvm/test/DebugInfo/Generic/2010-05-03-OriginDIE.ll
llvm/test/DebugInfo/Generic/2010-05-10-MultipleCU.ll
llvm/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll
llvm/test/DebugInfo/Generic/2010-07-19-Crash.ll
llvm/test/DebugInfo/Generic/2010-10-01-crash.ll
llvm/test/DebugInfo/Generic/Inputs/gmlt.ll
llvm/test/DebugInfo/Generic/PR20038.ll
llvm/test/DebugInfo/Generic/accel-table-hash-collisions.ll
llvm/test/DebugInfo/Generic/array.ll
llvm/test/DebugInfo/Generic/block-asan.ll
llvm/test/DebugInfo/Generic/constant-pointers.ll
llvm/test/DebugInfo/Generic/constant-sdnodes-have-dbg-location.ll
llvm/test/DebugInfo/Generic/constantfp-sdnodes-have-dbg-location.ll
llvm/test/DebugInfo/Generic/cross-cu-inlining.ll
llvm/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll
llvm/test/DebugInfo/Generic/cross-cu-linkonce.ll
llvm/test/DebugInfo/Generic/cu-range-hole.ll
llvm/test/DebugInfo/Generic/cu-ranges.ll
llvm/test/DebugInfo/Generic/dbg-at-specficiation.ll
llvm/test/DebugInfo/Generic/dead-argument-order.ll
llvm/test/DebugInfo/Generic/debug-info-qualifiers.ll
llvm/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
llvm/test/DebugInfo/Generic/debuginfofinder-multiple-cu.ll
llvm/test/DebugInfo/Generic/def-line.ll
llvm/test/DebugInfo/Generic/discriminator.ll
llvm/test/DebugInfo/Generic/dwarf-public-names.ll
llvm/test/DebugInfo/Generic/empty.ll
llvm/test/DebugInfo/Generic/enum-types.ll
llvm/test/DebugInfo/Generic/enum.ll
llvm/test/DebugInfo/Generic/global.ll
llvm/test/DebugInfo/Generic/gvn.ll
llvm/test/DebugInfo/Generic/incorrect-variable-debugloc.ll
llvm/test/DebugInfo/Generic/incorrect-variable-debugloc1.ll
llvm/test/DebugInfo/Generic/inheritance.ll
llvm/test/DebugInfo/Generic/inline-debug-info-multiret.ll
llvm/test/DebugInfo/Generic/inline-debug-info.ll
llvm/test/DebugInfo/Generic/inline-no-debug-info.ll
llvm/test/DebugInfo/Generic/inline-scopes.ll
llvm/test/DebugInfo/Generic/inlined-arguments.ll
llvm/test/DebugInfo/Generic/inlined-vars.ll
llvm/test/DebugInfo/Generic/location-verifier.ll
llvm/test/DebugInfo/Generic/lto-comp-dir.ll
llvm/test/DebugInfo/Generic/member-order.ll
llvm/test/DebugInfo/Generic/member-pointers.ll
llvm/test/DebugInfo/Generic/missing-abstract-variable.ll
llvm/test/DebugInfo/Generic/multiline.ll
llvm/test/DebugInfo/Generic/namespace.ll
llvm/test/DebugInfo/Generic/namespace_function_definition.ll
llvm/test/DebugInfo/Generic/namespace_inline_function_definition.ll
llvm/test/DebugInfo/Generic/nodebug.ll
llvm/test/DebugInfo/Generic/piece-verifier.ll
llvm/test/DebugInfo/Generic/ptrsize.ll [changed mode: 0755->0644]
llvm/test/DebugInfo/Generic/recursive_inlining.ll
llvm/test/DebugInfo/Generic/restrict.ll
llvm/test/DebugInfo/Generic/skeletoncu.ll
llvm/test/DebugInfo/Generic/sugared-constants.ll
llvm/test/DebugInfo/Generic/template-recursive-void.ll
llvm/test/DebugInfo/Generic/tu-composite.ll
llvm/test/DebugInfo/Generic/tu-member-pointer.ll
llvm/test/DebugInfo/Generic/two-cus-from-same-file.ll
llvm/test/DebugInfo/Generic/typedef.ll
llvm/test/DebugInfo/Generic/unconditional-branch.ll
llvm/test/DebugInfo/Generic/varargs.ll
llvm/test/DebugInfo/Generic/version.ll
llvm/test/DebugInfo/Generic/virtual-index.ll
llvm/test/DebugInfo/Inputs/gmlt.ll
llvm/test/DebugInfo/Inputs/line.ll
llvm/test/DebugInfo/MIR/X86/live-debug-values-3preds.mir
llvm/test/DebugInfo/MIR/X86/live-debug-values.mir
llvm/test/DebugInfo/Mips/InlinedFnLocalVar.ll
llvm/test/DebugInfo/Mips/delay-slot.ll
llvm/test/DebugInfo/Mips/dsr-fixed-objects.ll
llvm/test/DebugInfo/Mips/dsr-non-fixed-objects.ll
llvm/test/DebugInfo/Mips/fn-call-line.ll
llvm/test/DebugInfo/Mips/prologue_end.ll
llvm/test/DebugInfo/PowerPC/tls-fission.ll
llvm/test/DebugInfo/PowerPC/tls.ll
llvm/test/DebugInfo/Sparc/gnu-window-save.ll
llvm/test/DebugInfo/Sparc/prologue_end.ll
llvm/test/DebugInfo/SystemZ/prologue_end.ll
llvm/test/DebugInfo/SystemZ/variable-loc.ll
llvm/test/DebugInfo/X86/2010-04-13-PubType.ll
llvm/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
llvm/test/DebugInfo/X86/2011-12-16-BadStructRef.ll
llvm/test/DebugInfo/X86/DIModule.ll
llvm/test/DebugInfo/X86/DW_AT_byte_size.ll
llvm/test/DebugInfo/X86/DW_AT_linkage_name.ll
llvm/test/DebugInfo/X86/DW_AT_location-reference.ll
llvm/test/DebugInfo/X86/DW_AT_object_pointer.ll
llvm/test/DebugInfo/X86/DW_AT_specification.ll
llvm/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll
llvm/test/DebugInfo/X86/DW_TAG_friend.ll
llvm/test/DebugInfo/X86/InlinedFnLocalVar.ll
llvm/test/DebugInfo/X86/PR26148.ll
llvm/test/DebugInfo/X86/aligned_stack_var.ll
llvm/test/DebugInfo/X86/arange-and-stub.ll
llvm/test/DebugInfo/X86/arange.ll
llvm/test/DebugInfo/X86/arguments.ll
llvm/test/DebugInfo/X86/array.ll
llvm/test/DebugInfo/X86/array2.ll
llvm/test/DebugInfo/X86/bbjoin.ll
llvm/test/DebugInfo/X86/bitfields.ll
llvm/test/DebugInfo/X86/block-capture.ll
llvm/test/DebugInfo/X86/byvalstruct.ll
llvm/test/DebugInfo/X86/c-type-units.ll
llvm/test/DebugInfo/X86/coff_debug_info_type.ll
llvm/test/DebugInfo/X86/coff_relative_names.ll
llvm/test/DebugInfo/X86/concrete_out_of_line.ll
llvm/test/DebugInfo/X86/constant-aggregate.ll
llvm/test/DebugInfo/X86/cu-ranges-odr.ll
llvm/test/DebugInfo/X86/cu-ranges.ll
llvm/test/DebugInfo/X86/data_member_location.ll
llvm/test/DebugInfo/X86/dbg-byval-parameter.ll
llvm/test/DebugInfo/X86/dbg-const-int.ll
llvm/test/DebugInfo/X86/dbg-const.ll
llvm/test/DebugInfo/X86/dbg-declare-arg.ll
llvm/test/DebugInfo/X86/dbg-declare.ll
llvm/test/DebugInfo/X86/dbg-file-name.ll
llvm/test/DebugInfo/X86/dbg-i128-const.ll
llvm/test/DebugInfo/X86/dbg-merge-loc-entry.ll
llvm/test/DebugInfo/X86/dbg-prolog-end.ll
llvm/test/DebugInfo/X86/dbg-subrange.ll
llvm/test/DebugInfo/X86/dbg-value-const-byref.ll
llvm/test/DebugInfo/X86/dbg-value-dag-combine.ll
llvm/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
llvm/test/DebugInfo/X86/dbg-value-isel.ll
llvm/test/DebugInfo/X86/dbg-value-location.ll
llvm/test/DebugInfo/X86/dbg-value-range.ll
llvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
llvm/test/DebugInfo/X86/dbg-value-terminator.ll
llvm/test/DebugInfo/X86/dbg_value_direct.ll
llvm/test/DebugInfo/X86/debug-dead-local-var.ll
llvm/test/DebugInfo/X86/debug-info-access.ll
llvm/test/DebugInfo/X86/debug-info-block-captured-self.ll
llvm/test/DebugInfo/X86/debug-info-blocks.ll
llvm/test/DebugInfo/X86/debug-info-packed-struct.ll
llvm/test/DebugInfo/X86/debug-info-static-member.ll
llvm/test/DebugInfo/X86/debug-loc-asan.ll
llvm/test/DebugInfo/X86/debug-loc-offset.ll
llvm/test/DebugInfo/X86/debug-macro.ll
llvm/test/DebugInfo/X86/debug-ranges-offset.ll
llvm/test/DebugInfo/X86/debug_frame.ll
llvm/test/DebugInfo/X86/debugger-tune.ll
llvm/test/DebugInfo/X86/decl-derived-member.ll
llvm/test/DebugInfo/X86/deleted-bit-piece.ll
llvm/test/DebugInfo/X86/discriminator.ll
llvm/test/DebugInfo/X86/dw_op_minus.ll
llvm/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
llvm/test/DebugInfo/X86/dwarf-aranges.ll
llvm/test/DebugInfo/X86/dwarf-linkage-names.ll
llvm/test/DebugInfo/X86/dwarf-public-names.ll
llvm/test/DebugInfo/X86/dwarf-pubnames-split.ll
llvm/test/DebugInfo/X86/earlydup-crash.ll
llvm/test/DebugInfo/X86/elf-names.ll
llvm/test/DebugInfo/X86/empty-and-one-elem-array.ll
llvm/test/DebugInfo/X86/empty-array.ll
llvm/test/DebugInfo/X86/empty.ll
llvm/test/DebugInfo/X86/ending-run.ll
llvm/test/DebugInfo/X86/enum-class.ll
llvm/test/DebugInfo/X86/enum-fwd-decl.ll
llvm/test/DebugInfo/X86/fission-cu.ll
llvm/test/DebugInfo/X86/fission-hash.ll
llvm/test/DebugInfo/X86/fission-inline.ll
llvm/test/DebugInfo/X86/fission-ranges.ll
llvm/test/DebugInfo/X86/float_const.ll
llvm/test/DebugInfo/X86/float_const_loclist.ll
llvm/test/DebugInfo/X86/formal_parameter.ll
llvm/test/DebugInfo/X86/frame-register.ll
llvm/test/DebugInfo/X86/generate-odr-hash.ll
llvm/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll
llvm/test/DebugInfo/X86/gnu-public-names-empty.ll
llvm/test/DebugInfo/X86/gnu-public-names.ll
llvm/test/DebugInfo/X86/header.ll
llvm/test/DebugInfo/X86/inline-asm-locs.ll
llvm/test/DebugInfo/X86/inline-member-function.ll
llvm/test/DebugInfo/X86/inline-seldag-test.ll
llvm/test/DebugInfo/X86/inlined-formal-parameter.ll
llvm/test/DebugInfo/X86/inlined-indirect-value.ll
llvm/test/DebugInfo/X86/instcombine-instrinsics.ll
llvm/test/DebugInfo/X86/lexical_block.ll
llvm/test/DebugInfo/X86/line-info.ll
llvm/test/DebugInfo/X86/linkage-name.ll
llvm/test/DebugInfo/X86/live-debug-values.ll
llvm/test/DebugInfo/X86/low-pc-cu.ll
llvm/test/DebugInfo/X86/memberfnptr.ll
llvm/test/DebugInfo/X86/mi-print.ll
llvm/test/DebugInfo/X86/misched-dbg-value.ll
llvm/test/DebugInfo/X86/missing-file-line.ll
llvm/test/DebugInfo/X86/mixed-nodebug-cu.ll
llvm/test/DebugInfo/X86/multiple-aranges.ll
llvm/test/DebugInfo/X86/multiple-at-const-val.ll
llvm/test/DebugInfo/X86/nodebug_with_debug_loc.ll
llvm/test/DebugInfo/X86/nondefault-subrange-array.ll
llvm/test/DebugInfo/X86/nophysreg.ll
llvm/test/DebugInfo/X86/objc-fwd-decl.ll
llvm/test/DebugInfo/X86/objc-property-void.ll
llvm/test/DebugInfo/X86/op_deref.ll
llvm/test/DebugInfo/X86/parameters.ll
llvm/test/DebugInfo/X86/pieces-1.ll
llvm/test/DebugInfo/X86/pieces-2.ll
llvm/test/DebugInfo/X86/pieces-3.ll
llvm/test/DebugInfo/X86/pointer-type-size.ll
llvm/test/DebugInfo/X86/pr11300.ll
llvm/test/DebugInfo/X86/pr12831.ll
llvm/test/DebugInfo/X86/pr13303.ll
llvm/test/DebugInfo/X86/pr19307.ll
llvm/test/DebugInfo/X86/processes-relocations.ll
llvm/test/DebugInfo/X86/prologue-stack.ll
llvm/test/DebugInfo/X86/ref_addr_relocation.ll
llvm/test/DebugInfo/X86/reference-argument.ll
llvm/test/DebugInfo/X86/rvalue-ref.ll
llvm/test/DebugInfo/X86/safestack-byval.ll
llvm/test/DebugInfo/X86/single-dbg_value.ll
llvm/test/DebugInfo/X86/sret.ll
llvm/test/DebugInfo/X86/sroasplit-1.ll
llvm/test/DebugInfo/X86/sroasplit-2.ll
llvm/test/DebugInfo/X86/sroasplit-3.ll
llvm/test/DebugInfo/X86/sroasplit-4.ll
llvm/test/DebugInfo/X86/sroasplit-5.ll
llvm/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
llvm/test/DebugInfo/X86/stmt-list.ll
llvm/test/DebugInfo/X86/stringpool.ll
llvm/test/DebugInfo/X86/struct-loc.ll
llvm/test/DebugInfo/X86/subrange-type.ll
llvm/test/DebugInfo/X86/subreg.ll
llvm/test/DebugInfo/X86/subregisters.ll
llvm/test/DebugInfo/X86/template.ll
llvm/test/DebugInfo/X86/tls.ll
llvm/test/DebugInfo/X86/type_units_with_addresses.ll
llvm/test/DebugInfo/X86/union-const.ll
llvm/test/DebugInfo/X86/union-template.ll
llvm/test/DebugInfo/X86/vector.ll
llvm/test/DebugInfo/X86/vla.ll
llvm/test/DebugInfo/dwo.ll
llvm/test/DebugInfo/skeletoncu.ll
llvm/test/Instrumentation/AddressSanitizer/debug_info.ll
llvm/test/Instrumentation/DataFlowSanitizer/debug.ll
llvm/test/Instrumentation/MemorySanitizer/store-origin.ll
llvm/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll
llvm/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll
llvm/test/Instrumentation/ThreadSanitizer/atomic.ll
llvm/test/JitListener/multiple.ll
llvm/test/JitListener/simple.ll
llvm/test/Linker/2009-09-03-mdnode.ll
llvm/test/Linker/2009-09-03-mdnode2.ll
llvm/test/Linker/2011-08-04-DebugLoc.ll
llvm/test/Linker/2011-08-04-DebugLoc2.ll
llvm/test/Linker/2011-08-04-Metadata.ll
llvm/test/Linker/2011-08-04-Metadata2.ll
llvm/test/Linker/2011-08-18-unique-class-type.ll
llvm/test/Linker/2011-08-18-unique-class-type2.ll
llvm/test/Linker/2011-08-18-unique-debug-type.ll
llvm/test/Linker/2011-08-18-unique-debug-type2.ll
llvm/test/Linker/DbgDeclare.ll
llvm/test/Linker/DbgDeclare2.ll
llvm/test/Linker/Inputs/mdlocation.ll
llvm/test/Linker/Inputs/only-needed-debug-metadata.ll
llvm/test/Linker/Inputs/pr26037.ll
llvm/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll
llvm/test/Linker/Inputs/subprogram-linkonce-weak.ll
llvm/test/Linker/Inputs/thinlto_funcimport_debug.ll
llvm/test/Linker/Inputs/type-unique-inheritance-a.ll
llvm/test/Linker/Inputs/type-unique-inheritance-b.ll
llvm/test/Linker/Inputs/type-unique-simple2-a.ll
llvm/test/Linker/Inputs/type-unique-simple2-b.ll
llvm/test/Linker/debug-info-version-a.ll
llvm/test/Linker/mdlocation.ll
llvm/test/Linker/only-needed-debug-metadata.ll
llvm/test/Linker/pr26037.ll
llvm/test/Linker/replaced-function-matches-first-subprogram.ll
llvm/test/Linker/subprogram-linkonce-weak.ll
llvm/test/Linker/thinlto_funcimport_debug.ll
llvm/test/Linker/type-unique-odr-a.ll
llvm/test/Linker/type-unique-odr-b.ll
llvm/test/Linker/type-unique-simple-a.ll
llvm/test/Linker/type-unique-simple-b.ll
llvm/test/Linker/type-unique-simple2-a.ll
llvm/test/Linker/type-unique-simple2-b.ll
llvm/test/Linker/type-unique-type-array-a.ll
llvm/test/Linker/type-unique-type-array-b.ll
llvm/test/MC/ARM/coff-debugging-secrel.ll
llvm/test/MC/ELF/cfi-version.ll
llvm/test/MC/X86/i386-darwin-frame-register.ll
llvm/test/Transforms/ADCE/debug-info-intrinsic.ll
llvm/test/Transforms/AddDiscriminators/basic.ll
llvm/test/Transforms/AddDiscriminators/call-nested.ll
llvm/test/Transforms/AddDiscriminators/call.ll
llvm/test/Transforms/AddDiscriminators/dbg-declare-discriminator.ll
llvm/test/Transforms/AddDiscriminators/diamond.ll
llvm/test/Transforms/AddDiscriminators/first-only.ll
llvm/test/Transforms/AddDiscriminators/multiple.ll
llvm/test/Transforms/AddDiscriminators/no-discriminators.ll
llvm/test/Transforms/AddDiscriminators/oneline.ll
llvm/test/Transforms/ArgumentPromotion/dbg.ll
llvm/test/Transforms/CodeGenPrepare/X86/catchpad-phi-cast.ll
llvm/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
llvm/test/Transforms/DeadArgElim/dbginfo.ll
llvm/test/Transforms/DeadStoreElimination/inst-limits.ll
llvm/test/Transforms/FunctionImport/Inputs/funcimport_debug.ll
llvm/test/Transforms/FunctionImport/funcimport_debug.ll
llvm/test/Transforms/GCOVProfiling/function-numbering.ll
llvm/test/Transforms/GCOVProfiling/global-ctor.ll
llvm/test/Transforms/GCOVProfiling/linezero.ll
llvm/test/Transforms/GCOVProfiling/linkagename.ll
llvm/test/Transforms/GCOVProfiling/modules.ll
llvm/test/Transforms/GCOVProfiling/return-block.ll
llvm/test/Transforms/GCOVProfiling/version.ll
llvm/test/Transforms/GVN/load-pre-nonlocal.ll
llvm/test/Transforms/GVN/phi-translate.ll
llvm/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
llvm/test/Transforms/Inline/alloca-dbgdeclare-merge.ll
llvm/test/Transforms/Inline/alloca-dbgdeclare.ll
llvm/test/Transforms/Inline/debug-info-duplicate-calls.ll
llvm/test/Transforms/Inline/debug-invoke.ll
llvm/test/Transforms/Inline/ignore-debug-info.ll
llvm/test/Transforms/Inline/inline_dbg_declare.ll
llvm/test/Transforms/Inline/local-as-metadata-undominated-use.ll
llvm/test/Transforms/InstCombine/debug-line.ll
llvm/test/Transforms/InstCombine/debuginfo.ll
llvm/test/Transforms/InstCombine/lifetime.ll
llvm/test/Transforms/LICM/debug-value.ll
llvm/test/Transforms/LoopIdiom/debug-line.ll
llvm/test/Transforms/LoopReroll/reroll_with_dbg.ll
llvm/test/Transforms/LoopRotate/dbgvalue.ll
llvm/test/Transforms/LoopSimplify/dbg-loc.ll
llvm/test/Transforms/LoopSimplify/single-backedge.ll
llvm/test/Transforms/LoopUnroll/runtime-loop1.ll
llvm/test/Transforms/LoopVectorize/X86/no_fpmath.ll
llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks-profitable.ll
llvm/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll
llvm/test/Transforms/LoopVectorize/conditional-assignment.ll
llvm/test/Transforms/LoopVectorize/control-flow.ll
llvm/test/Transforms/LoopVectorize/dbg.value.ll
llvm/test/Transforms/LoopVectorize/debugloc.ll
llvm/test/Transforms/LoopVectorize/no_array_bounds.ll
llvm/test/Transforms/LoopVectorize/no_switch.ll
llvm/test/Transforms/LoopVectorize/runtime-check.ll
llvm/test/Transforms/Mem2Reg/ConvertDebugInfo.ll
llvm/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll
llvm/test/Transforms/ObjCARC/basic.ll
llvm/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
llvm/test/Transforms/SLPVectorizer/X86/debug_info.ll
llvm/test/Transforms/SROA/dbg-single-piece.ll
llvm/test/Transforms/SafeStack/debug-loc.ll
llvm/test/Transforms/SampleProfile/branch.ll
llvm/test/Transforms/SampleProfile/calls.ll
llvm/test/Transforms/SampleProfile/cov-zero-samples.ll
llvm/test/Transforms/SampleProfile/coverage-warning.ll
llvm/test/Transforms/SampleProfile/discriminator.ll
llvm/test/Transforms/SampleProfile/entry_counts.ll
llvm/test/Transforms/SampleProfile/fnptr.ll
llvm/test/Transforms/SampleProfile/gcc-simple.ll
llvm/test/Transforms/SampleProfile/inline-combine.ll
llvm/test/Transforms/SampleProfile/inline-coverage.ll
llvm/test/Transforms/SampleProfile/inline-hint.ll
llvm/test/Transforms/SampleProfile/inline.ll
llvm/test/Transforms/SampleProfile/nolocinfo.ll
llvm/test/Transforms/SampleProfile/offset.ll
llvm/test/Transforms/SampleProfile/propagate.ll
llvm/test/Transforms/SampleProfile/remarks.ll
llvm/test/Transforms/ScalarRepl/debuginfo-preserved.ll
llvm/test/Transforms/Scalarizer/dbginfo.ll
llvm/test/Transforms/SimplifyCFG/basictest.ll
llvm/test/Transforms/SimplifyCFG/branch-fold-dbg.ll
llvm/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll
llvm/test/Transforms/SimplifyCFG/trap-debugloc.ll
llvm/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
llvm/test/Transforms/StripSymbols/2010-08-25-crash.ll
llvm/test/Transforms/StripSymbols/strip-dead-debug-info.ll
llvm/test/Transforms/Util/simplify-dbg-declare-load.ll
llvm/test/Transforms/Util/split-bit-piece.ll
llvm/test/Transforms/Util/store-first-op.ll
llvm/test/Verifier/dbg-difile-crash.ll
llvm/test/Verifier/dbg-invalid-retaintypes.ll
llvm/test/Verifier/func-dbg.ll
llvm/test/Verifier/metadata-function-dbg.ll
llvm/test/tools/dsymutil/Inputs/frame-dw2.ll
llvm/test/tools/dsymutil/Inputs/frame-dw4.ll
llvm/test/tools/gold/X86/Inputs/linkonce-weak.ll
llvm/test/tools/gold/X86/linkonce-weak.ll
llvm/unittests/IR/MetadataTest.cpp
llvm/unittests/Transforms/Utils/Cloning.cpp