[llvm] r226048 - IR: Move MDLocation into place

David Blaikie dblaikie at gmail.com
Wed Jan 14 14:35:19 PST 2015


On Wed, Jan 14, 2015 at 2:27 PM, Duncan P. N. Exon Smith <
dexonsmith at apple.com> wrote:

> Author: dexonsmith
> Date: Wed Jan 14 16:27:36 2015
> New Revision: 226048
>
> URL: http://llvm.org/viewvc/llvm-project?rev=226048&view=rev
> Log:
> IR: Move MDLocation into place
>
> This commit moves `MDLocation`, finishing off PR21433.  There's an
> accompanying clang commit for frontend testcases.  I'll attach the
> testcase upgrade script I used to PR21433 to help out-of-tree
> frontends/backends.
>
> This changes the schema for `DebugLoc` and `DILocation` from:
>
>     !{i32 3, i32 7, !7, !8}
>
> to:
>
>     !MDLocation(line: 3, column: 7, scope: !7, inlinedAt: !8)
>
> Note that empty fields (line/column: 0 and inlinedAt: null) don't get
> printed by the assembly writer.
>
> Modified:
>     llvm/trunk/include/llvm/IR/DebugInfo.h
>     llvm/trunk/lib/IR/DebugInfo.cpp
>     llvm/trunk/lib/IR/DebugLoc.cpp
>     llvm/trunk/test/Assembler/functionlocal-metadata.ll
>     llvm/trunk/test/Assembler/metadata.ll
>     llvm/trunk/test/Bindings/OCaml/core.ml
>     llvm/trunk/test/Bitcode/drop-debug-info.ll
>     llvm/trunk/test/BugPoint/metadata.ll
>
> llvm/trunk/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll
>     llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
>     llvm/trunk/test/CodeGen/ARM/2009-10-16-Scope.ll
>     llvm/trunk/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll
>     llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
>     llvm/trunk/test/CodeGen/ARM/2010-08-04-StackVariable.ll
>     llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
>     llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
>     llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll
>     llvm/trunk/test/CodeGen/ARM/debug-frame-vararg.ll
>     llvm/trunk/test/CodeGen/ARM/debug-frame.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-arg.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-branch-folding.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-d16-reg.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-qreg.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-s16-reg.ll
>     llvm/trunk/test/CodeGen/ARM/debug-info-sreg2.ll
>     llvm/trunk/test/CodeGen/ARM/debug-segmented-stacks.ll
>     llvm/trunk/test/CodeGen/Hexagon/hwloop-dbg.ll
>     llvm/trunk/test/CodeGen/Inputs/DbgValueOtherTargets.ll
>     llvm/trunk/test/CodeGen/PowerPC/dbg.ll
>     llvm/trunk/test/CodeGen/PowerPC/pr17168.ll
>     llvm/trunk/test/CodeGen/PowerPC/unwind-dw2-g.ll
>     llvm/trunk/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll
>     llvm/trunk/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll
>     llvm/trunk/test/CodeGen/X86/2009-10-16-Scope.ll
>     llvm/trunk/test/CodeGen/X86/2010-01-18-DbgValue.ll
>     llvm/trunk/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll
>     llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
>     llvm/trunk/test/CodeGen/X86/2010-05-28-Crash.ll
>     llvm/trunk/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll
>     llvm/trunk/test/CodeGen/X86/2010-07-06-DbgCrash.ll
>     llvm/trunk/test/CodeGen/X86/2010-08-04-StackVariable.ll
>     llvm/trunk/test/CodeGen/X86/2010-09-16-EmptyFilename.ll
>     llvm/trunk/test/CodeGen/X86/2010-11-02-DbgParameter.ll
>     llvm/trunk/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll
>     llvm/trunk/test/CodeGen/X86/MachineSink-DbgValue.ll
>     llvm/trunk/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll
>     llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
>     llvm/trunk/test/CodeGen/X86/stack-protector-dbginfo.ll
>     llvm/trunk/test/CodeGen/X86/unknown-location.ll
>     llvm/trunk/test/CodeGen/XCore/dwarf_debug.ll
>     llvm/trunk/test/DebugInfo/2009-11-05-DeadGlobalVariable.ll
>     llvm/trunk/test/DebugInfo/2009-11-10-CurrentFn.ll
>     llvm/trunk/test/DebugInfo/2010-01-05-DbgScope.ll
>     llvm/trunk/test/DebugInfo/2010-03-19-DbgDeclare.ll
>     llvm/trunk/test/DebugInfo/2010-03-24-MemberFn.ll
>     llvm/trunk/test/DebugInfo/2010-04-06-NestedFnDbgInfo.ll
>     llvm/trunk/test/DebugInfo/2010-04-19-FramePtr.ll
>     llvm/trunk/test/DebugInfo/2010-05-03-DisableFramePtr.ll
>     llvm/trunk/test/DebugInfo/2010-05-03-OriginDIE.ll
>     llvm/trunk/test/DebugInfo/2010-05-10-MultipleCU.ll
>     llvm/trunk/test/DebugInfo/2010-06-29-InlinedFnLocalVar.ll
>     llvm/trunk/test/DebugInfo/2010-07-19-Crash.ll
>     llvm/trunk/test/DebugInfo/2010-10-01-crash.ll
>     llvm/trunk/test/DebugInfo/AArch64/cfi-eof-prologue.ll
>     llvm/trunk/test/DebugInfo/AArch64/coalescing.ll
>     llvm/trunk/test/DebugInfo/AArch64/dwarfdump.ll
>     llvm/trunk/test/DebugInfo/AArch64/struct_by_value.ll
>     llvm/trunk/test/DebugInfo/ARM/PR16736.ll
>     llvm/trunk/test/DebugInfo/ARM/cfi-eof-prologue.ll
>     llvm/trunk/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
>     llvm/trunk/test/DebugInfo/ARM/s-super-register.ll
>     llvm/trunk/test/DebugInfo/COFF/asan-module-ctor.ll
>     llvm/trunk/test/DebugInfo/COFF/asm.ll
>     llvm/trunk/test/DebugInfo/COFF/cpp-mangling.ll
>     llvm/trunk/test/DebugInfo/COFF/multifile.ll
>     llvm/trunk/test/DebugInfo/COFF/multifunction.ll
>     llvm/trunk/test/DebugInfo/COFF/simple.ll
>     llvm/trunk/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll
>     llvm/trunk/test/DebugInfo/Inputs/gmlt.ll
>     llvm/trunk/test/DebugInfo/Mips/delay-slot.ll
>     llvm/trunk/test/DebugInfo/PR20038.ll
>     llvm/trunk/test/DebugInfo/Sparc/gnu-window-save.ll
>     llvm/trunk/test/DebugInfo/SystemZ/variable-loc.ll
>     llvm/trunk/test/DebugInfo/X86/2010-04-13-PubType.ll
>     llvm/trunk/test/DebugInfo/X86/2010-08-10-DbgConstant.ll
>     llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
>     llvm/trunk/test/DebugInfo/X86/2011-12-16-BadStructRef.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_byte_size.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_linkage_name.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_location-reference.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_object_pointer.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll
>     llvm/trunk/test/DebugInfo/X86/aligned_stack_var.ll
>     llvm/trunk/test/DebugInfo/X86/arguments.ll
>     llvm/trunk/test/DebugInfo/X86/array.ll
>     llvm/trunk/test/DebugInfo/X86/array2.ll
>     llvm/trunk/test/DebugInfo/X86/block-capture.ll
>     llvm/trunk/test/DebugInfo/X86/byvalstruct.ll
>     llvm/trunk/test/DebugInfo/X86/coff_debug_info_type.ll
>     llvm/trunk/test/DebugInfo/X86/coff_relative_names.ll
>     llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll
>     llvm/trunk/test/DebugInfo/X86/constant-aggregate.ll
>     llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll
>     llvm/trunk/test/DebugInfo/X86/cu-ranges.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-byval-parameter.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-const-int.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-const.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-declare-arg.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-declare.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-i128-const.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-merge-loc-entry.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-prolog-end.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-const-byref.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-dag-combine.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-isel.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-location.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-range.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-terminator.ll
>     llvm/trunk/test/DebugInfo/X86/dbg_value_direct.ll
>     llvm/trunk/test/DebugInfo/X86/debug-dead-local-var.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-access.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-block-captured-self.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-blocks.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll
>     llvm/trunk/test/DebugInfo/X86/debug-loc-asan.ll
>     llvm/trunk/test/DebugInfo/X86/debug-loc-offset.ll
>     llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll
>     llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll
>     llvm/trunk/test/DebugInfo/X86/discriminator.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-pubnames-split.ll
>     llvm/trunk/test/DebugInfo/X86/elf-names.ll
>     llvm/trunk/test/DebugInfo/X86/empty-and-one-elem-array.ll
>     llvm/trunk/test/DebugInfo/X86/ending-run.ll
>     llvm/trunk/test/DebugInfo/X86/fission-inline.ll
>     llvm/trunk/test/DebugInfo/X86/fission-ranges.ll
>     llvm/trunk/test/DebugInfo/X86/formal_parameter.ll
>     llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll
>     llvm/trunk/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll
>     llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll
>     llvm/trunk/test/DebugInfo/X86/inline-member-function.ll
>     llvm/trunk/test/DebugInfo/X86/inline-seldag-test.ll
>     llvm/trunk/test/DebugInfo/X86/instcombine-instrinsics.ll
>     llvm/trunk/test/DebugInfo/X86/lexical_block.ll
>     llvm/trunk/test/DebugInfo/X86/line-info.ll
>     llvm/trunk/test/DebugInfo/X86/linkage-name.ll
>     llvm/trunk/test/DebugInfo/X86/low-pc-cu.ll
>     llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll
>     llvm/trunk/test/DebugInfo/X86/nodebug_with_debug_loc.ll
>     llvm/trunk/test/DebugInfo/X86/objc-property-void.ll
>     llvm/trunk/test/DebugInfo/X86/op_deref.ll
>     llvm/trunk/test/DebugInfo/X86/parameters.ll
>     llvm/trunk/test/DebugInfo/X86/pieces-1.ll
>     llvm/trunk/test/DebugInfo/X86/pieces-2.ll
>     llvm/trunk/test/DebugInfo/X86/pieces-3.ll
>     llvm/trunk/test/DebugInfo/X86/pr11300.ll
>     llvm/trunk/test/DebugInfo/X86/pr12831.ll
>     llvm/trunk/test/DebugInfo/X86/pr13303.ll
>     llvm/trunk/test/DebugInfo/X86/pr19307.ll
>     llvm/trunk/test/DebugInfo/X86/prologue-stack.ll
>     llvm/trunk/test/DebugInfo/X86/recursive_inlining.ll
>     llvm/trunk/test/DebugInfo/X86/reference-argument.ll
>     llvm/trunk/test/DebugInfo/X86/rvalue-ref.ll
>     llvm/trunk/test/DebugInfo/X86/sret.ll
>     llvm/trunk/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
>     llvm/trunk/test/DebugInfo/X86/subrange-type.ll
>     llvm/trunk/test/DebugInfo/X86/subreg.ll
>     llvm/trunk/test/DebugInfo/X86/subregisters.ll
>     llvm/trunk/test/DebugInfo/X86/template.ll
>     llvm/trunk/test/DebugInfo/X86/tls.ll
>     llvm/trunk/test/DebugInfo/X86/union-template.ll
>     llvm/trunk/test/DebugInfo/X86/vla.ll
>     llvm/trunk/test/DebugInfo/array.ll
>     llvm/trunk/test/DebugInfo/block-asan.ll
>     llvm/trunk/test/DebugInfo/constant-pointers.ll
>     llvm/trunk/test/DebugInfo/cross-cu-inlining.ll
>     llvm/trunk/test/DebugInfo/cross-cu-linkonce-distinct.ll
>     llvm/trunk/test/DebugInfo/cross-cu-linkonce.ll
>     llvm/trunk/test/DebugInfo/cu-range-hole.ll
>     llvm/trunk/test/DebugInfo/cu-ranges.ll
>     llvm/trunk/test/DebugInfo/dead-argument-order.ll
>     llvm/trunk/test/DebugInfo/debug-info-always-inline.ll
>     llvm/trunk/test/DebugInfo/debug-info-qualifiers.ll
>     llvm/trunk/test/DebugInfo/debuginfofinder-multiple-cu.ll
>     llvm/trunk/test/DebugInfo/duplicate_inline.ll
>     llvm/trunk/test/DebugInfo/dwarf-public-names.ll
>     llvm/trunk/test/DebugInfo/enum-types.ll
>     llvm/trunk/test/DebugInfo/enum.ll
>     llvm/trunk/test/DebugInfo/global.ll
>     llvm/trunk/test/DebugInfo/incorrect-variable-debugloc.ll
>     llvm/trunk/test/DebugInfo/incorrect-variable-debugloc1.ll
>     llvm/trunk/test/DebugInfo/inheritance.ll
>     llvm/trunk/test/DebugInfo/inline-debug-info-multiret.ll
>     llvm/trunk/test/DebugInfo/inline-debug-info.ll
>     llvm/trunk/test/DebugInfo/inline-no-debug-info.ll
>     llvm/trunk/test/DebugInfo/inline-scopes.ll
>     llvm/trunk/test/DebugInfo/inlined-arguments.ll
>     llvm/trunk/test/DebugInfo/inlined-vars.ll
>     llvm/trunk/test/DebugInfo/lto-comp-dir.ll
>     llvm/trunk/test/DebugInfo/member-order.ll
>     llvm/trunk/test/DebugInfo/missing-abstract-variable.ll
>     llvm/trunk/test/DebugInfo/multiline.ll
>     llvm/trunk/test/DebugInfo/namespace.ll
>     llvm/trunk/test/DebugInfo/namespace_function_definition.ll
>     llvm/trunk/test/DebugInfo/namespace_inline_function_definition.ll
>     llvm/trunk/test/DebugInfo/nodebug.ll
>     llvm/trunk/test/DebugInfo/restrict.ll
>     llvm/trunk/test/DebugInfo/sugared-constants.ll
>     llvm/trunk/test/DebugInfo/tu-composite.ll
>     llvm/trunk/test/DebugInfo/two-cus-from-same-file.ll
>     llvm/trunk/test/DebugInfo/unconditional-branch.ll
>     llvm/trunk/test/DebugInfo/varargs.ll
>     llvm/trunk/test/DebugInfo/version.ll
>     llvm/trunk/test/Feature/md_on_instruction.ll
>     llvm/trunk/test/Instrumentation/AddressSanitizer/debug_info.ll
>     llvm/trunk/test/Instrumentation/DataFlowSanitizer/debug.ll
>     llvm/trunk/test/Instrumentation/MemorySanitizer/store-origin.ll
>     llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll
>     llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll
>     llvm/trunk/test/JitListener/multiple.ll
>     llvm/trunk/test/JitListener/simple.ll
>     llvm/trunk/test/Linker/2011-08-04-DebugLoc.ll
>     llvm/trunk/test/Linker/2011-08-04-DebugLoc2.ll
>     llvm/trunk/test/Linker/2011-08-04-Metadata.ll
>     llvm/trunk/test/Linker/2011-08-04-Metadata2.ll
>     llvm/trunk/test/Linker/2011-08-18-unique-class-type.ll
>     llvm/trunk/test/Linker/2011-08-18-unique-class-type2.ll
>     llvm/trunk/test/Linker/2011-08-18-unique-debug-type.ll
>     llvm/trunk/test/Linker/2011-08-18-unique-debug-type2.ll
>     llvm/trunk/test/Linker/DbgDeclare.ll
>     llvm/trunk/test/Linker/DbgDeclare2.ll
>
> llvm/trunk/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll
>     llvm/trunk/test/Linker/Inputs/type-unique-inheritance-a.ll
>     llvm/trunk/test/Linker/Inputs/type-unique-inheritance-b.ll
>     llvm/trunk/test/Linker/Inputs/type-unique-simple2-a.ll
>     llvm/trunk/test/Linker/Inputs/type-unique-simple2-b.ll
>     llvm/trunk/test/Linker/replaced-function-matches-first-subprogram.ll
>     llvm/trunk/test/Linker/type-unique-odr-a.ll
>     llvm/trunk/test/Linker/type-unique-odr-b.ll
>     llvm/trunk/test/Linker/type-unique-simple-a.ll
>     llvm/trunk/test/Linker/type-unique-simple-b.ll
>     llvm/trunk/test/Linker/type-unique-simple2-a.ll
>     llvm/trunk/test/Linker/type-unique-simple2-b.ll
>     llvm/trunk/test/Linker/type-unique-type-array-a.ll
>     llvm/trunk/test/Linker/type-unique-type-array-b.ll
>     llvm/trunk/test/MC/ARM/coff-debugging-secrel.ll
>     llvm/trunk/test/MC/ELF/cfi-version.ll
>     llvm/trunk/test/Transforms/AddDiscriminators/basic.ll
>     llvm/trunk/test/Transforms/AddDiscriminators/first-only.ll
>     llvm/trunk/test/Transforms/AddDiscriminators/multiple.ll
>     llvm/trunk/test/Transforms/AddDiscriminators/no-discriminators.ll
>     llvm/trunk/test/Transforms/ArgumentPromotion/dbg.ll
>     llvm/trunk/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
>     llvm/trunk/test/Transforms/DeadArgElim/dbginfo.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/function-numbering.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/global-ctor.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/linezero.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/linkagename.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/version.ll
>     llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
>     llvm/trunk/test/Transforms/Inline/debug-invoke.ll
>     llvm/trunk/test/Transforms/Inline/inline_dbg_declare.ll
>     llvm/trunk/test/Transforms/InstCombine/debug-line.ll
>     llvm/trunk/test/Transforms/InstCombine/debuginfo.ll
>     llvm/trunk/test/Transforms/LICM/debug-value.ll
>     llvm/trunk/test/Transforms/LoopIdiom/debug-line.ll
>     llvm/trunk/test/Transforms/LoopRotate/dbgvalue.ll
>
> llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
>     llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll
>     llvm/trunk/test/Transforms/LoopVectorize/conditional-assignment.ll
>     llvm/trunk/test/Transforms/LoopVectorize/control-flow.ll
>     llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll
>     llvm/trunk/test/Transforms/LoopVectorize/debugloc.ll
>     llvm/trunk/test/Transforms/LoopVectorize/no_array_bounds.ll
>     llvm/trunk/test/Transforms/LoopVectorize/no_switch.ll
>     llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo.ll
>     llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll
>
> llvm/trunk/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
>     llvm/trunk/test/Transforms/SLPVectorizer/X86/debug_info.ll
>     llvm/trunk/test/Transforms/SampleProfile/branch.ll
>     llvm/trunk/test/Transforms/SampleProfile/calls.ll
>     llvm/trunk/test/Transforms/SampleProfile/discriminator.ll
>     llvm/trunk/test/Transforms/SampleProfile/fnptr.ll
>     llvm/trunk/test/Transforms/SampleProfile/propagate.ll
>     llvm/trunk/test/Transforms/ScalarRepl/debuginfo-preserved.ll
>     llvm/trunk/test/Transforms/Scalarizer/dbginfo.ll
>     llvm/trunk/test/Transforms/SimplifyCFG/branch-fold-dbg.ll
>     llvm/trunk/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll
>     llvm/trunk/test/Transforms/SimplifyCFG/trap-debugloc.ll
>     llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
>     llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll
>     llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll
>
> Modified: llvm/trunk/include/llvm/IR/DebugInfo.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/DebugInfo.h?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/IR/DebugInfo.h (original)
> +++ llvm/trunk/include/llvm/IR/DebugInfo.h Wed Jan 14 16:27:36 2015
> @@ -877,10 +877,26 @@ class DILocation : public DIDescriptor {
>  public:
>    explicit DILocation(const MDNode *N) : DIDescriptor(N) {}
>
> -  unsigned getLineNumber() const { return getUnsignedField(0); }
> -  unsigned getColumnNumber() const { return getUnsignedField(1); }
> -  DIScope getScope() const { return getFieldAs<DIScope>(2); }
> -  DILocation getOrigLocation() const { return getFieldAs<DILocation>(3); }
> +  unsigned getLineNumber() const {
> +    if (auto *L = dyn_cast_or_null<MDLocation>(DbgNode))
>

What else can this be other than an MDLocation? Should it just be
cast_or_null?


> +      return L->getLine();
> +    return 0;
> +  }
> +  unsigned getColumnNumber() const {
> +    if (auto *L = dyn_cast_or_null<MDLocation>(DbgNode))
> +      return L->getColumn();
> +    return 0;
> +  }
> +  DIScope getScope() const {
> +    if (auto *L = dyn_cast_or_null<MDLocation>(DbgNode))
> +      return DIScope(dyn_cast_or_null<MDNode>(L->getScope()));
> +    return DIScope(nullptr);
> +  }
> +  DILocation getOrigLocation() const {
> +    if (auto *L = dyn_cast_or_null<MDLocation>(DbgNode))
> +      return DILocation(dyn_cast_or_null<MDNode>(L->getInlinedAt()));
> +    return DILocation(nullptr);
> +  }
>    StringRef getFilename() const { return getScope().getFilename(); }
>    StringRef getDirectory() const { return getScope().getDirectory(); }
>    bool Verify() const;
> @@ -901,7 +917,9 @@ public:
>      // sure this location is a lexical block before retrieving its
>      // value.
>      return getScope().isLexicalBlockFile()
> -               ? getFieldAs<DILexicalBlockFile>(2).getDiscriminator()
> +               ? DILexicalBlockFile(
> +                     cast<MDNode>(cast<MDLocation>(DbgNode)->getScope()))
> +                     .getDiscriminator()
>                 : 0;
>    }
>
>
> Modified: llvm/trunk/lib/IR/DebugInfo.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/DebugInfo.cpp?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/IR/DebugInfo.cpp (original)
> +++ llvm/trunk/lib/IR/DebugInfo.cpp Wed Jan 14 16:27:36 2015
> @@ -592,10 +592,7 @@ bool DIExpression::Verify() const {
>  }
>
>  bool DILocation::Verify() const {
> -  if (!DbgNode)
> -    return false;
> -
> -  return DbgNode->getNumOperands() == 4;
> +  return DbgNode && isa<MDLocation>(DbgNode);
>  }
>
>  bool DINameSpace::Verify() const {
> @@ -830,16 +827,12 @@ void DICompileUnit::replaceGlobalVariabl
>
>  DILocation DILocation::copyWithNewScope(LLVMContext &Ctx,
>                                          DILexicalBlockFile NewScope) {
> -  SmallVector<Metadata *, 10> Elts;
>    assert(Verify());
> -  for (unsigned I = 0; I < DbgNode->getNumOperands(); ++I) {
> -    if (I != 2)
> -      Elts.push_back(DbgNode->getOperand(I));
> -    else
> -      Elts.push_back(NewScope);
> -  }
> -  MDNode *NewDIL = MDNode::get(Ctx, Elts);
> -  return DILocation(NewDIL);
> +  assert(NewScope && "Expected valid scope");
> +
> +  const auto *Old = cast<MDLocation>(DbgNode);
> +  return DILocation(MDLocation::get(Ctx, Old->getLine(), Old->getColumn(),
> +                                    NewScope, Old->getInlinedAt()));
>  }
>
>  unsigned DILocation::computeNewDiscriminator(LLVMContext &Ctx) {
>
> Modified: llvm/trunk/lib/IR/DebugLoc.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/DebugLoc.cpp?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/IR/DebugLoc.cpp (original)
> +++ llvm/trunk/lib/IR/DebugLoc.cpp Wed Jan 14 16:27:36 2015
> @@ -58,12 +58,8 @@ DebugLoc DebugLoc::get(unsigned Line, un
>    if (Col > 255) Col = 0;
>    if (Line >= (1 << 24)) Line = 0;
>
> -  LLVMContext &Context = Scope->getContext();
> -  Type *Int32 = Type::getInt32Ty(Context);
> -  Metadata *Elts[] = {ConstantAsMetadata::get(ConstantInt::get(Int32,
> Line)),
> -                      ConstantAsMetadata::get(ConstantInt::get(Int32,
> Col)),
> -                      Scope, InlinedAt};
> -  return getFromDILocation(MDNode::get(Context, Elts));
> +  return getFromDILocation(
> +      MDLocation::get(Scope->getContext(), Line, Col, Scope, InlinedAt));
>  }
>
>  /// getAsMDNode - This method converts the compressed DebugLoc node into a
>
> Modified: llvm/trunk/test/Assembler/functionlocal-metadata.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Assembler/functionlocal-metadata.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Assembler/functionlocal-metadata.ll (original)
> +++ llvm/trunk/test/Assembler/functionlocal-metadata.ll Wed Jan 14
> 16:27:36 2015
> @@ -35,7 +35,7 @@ entry:
>
>  !llvm.module.flags = !{!4}
>
> -!0 = !{i32 662302, i32 26, !1, null}
> +!0 = !MDLocation(line: 662302, column: 26, scope: !1)
>  !1 = !{i32 4, !"foo"}
>  !2 = !{!"bar"}
>  !3 = !{!"foo"}
> @@ -49,7 +49,7 @@ declare void @llvm.dbg.value(metadata, i
>
>  ; CHECK: !foo = !{![[FOO]]}
>  ; CHECK: !bar = !{![[BAR]]}
> -; CHECK: ![[ID0]] = !{i32 662302, i32 26, ![[ID1]], null}
> +; CHECK: ![[ID0]] = !MDLocation(line: 662302, column: 26, scope: ![[ID1]])
>  ; CHECK: ![[ID1]] = !{i32 4, !"foo"}
>  ; CHECK: ![[ID2]] = !{!"bar"}
>  ; CHECK: ![[ID3]] = !{!"foo"}
>
> Modified: llvm/trunk/test/Assembler/metadata.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Assembler/metadata.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Assembler/metadata.ll (original)
> +++ llvm/trunk/test/Assembler/metadata.ll Wed Jan 14 16:27:36 2015
> @@ -11,7 +11,7 @@ define void @test() {
>    ret void, !foo !0, !bar !1
>  }
>
> -!0 = !{i32 662302, i32 26, !1, null}
> +!0 = !MDLocation(line: 662302, column: 26, scope: !1)
>  !1 = !{i32 4, !"foo"}
>
>  declare void @llvm.dbg.func.start(metadata) nounwind readnone
>
> Modified: llvm/trunk/test/Bindings/OCaml/core.ml
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Bindings/OCaml/core.ml?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Bindings/OCaml/core.ml (original)
> +++ llvm/trunk/test/Bindings/OCaml/core.ml Wed Jan 14 16:27:36 2015
> @@ -1436,7 +1436,7 @@ let test_builder () =
>   * CHECK: !llvm.module.flags = !{!0}
>   * CHECK: !0 = !{i32 1, !"Debug Info Version", i32 2}
>   * CHECK: !1 = !{i32 1, !"metadata test"}
> - * CHECK: !2 = !{i32 2, i32 3, !3, !3}
> + * CHECK: !2 = !MDLocation(line: 2, column: 3, scope: !3, inlinedAt: !3)
>   *)
>
>  (*===-- Pass Managers
> -----------------------------------------------------===*)
>
> Modified: llvm/trunk/test/Bitcode/drop-debug-info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Bitcode/drop-debug-info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Bitcode/drop-debug-info.ll (original)
> +++ llvm/trunk/test/Bitcode/drop-debug-info.ll Wed Jan 14 16:27:36 2015
> @@ -22,7 +22,7 @@ entry:
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 2}
> -!12 = !{i32 4, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
>
>  ; WARN: warning: ignoring debug info with an invalid version (0)
>  ; CHECK-NOT: !dbg
>
> Modified: llvm/trunk/test/BugPoint/metadata.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/BugPoint/metadata.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/BugPoint/metadata.ll (original)
> +++ llvm/trunk/test/BugPoint/metadata.ll Wed Jan 14 16:27:36 2015
> @@ -5,7 +5,7 @@
>  ; Bugpoint should keep the call's metadata attached to the call.
>
>  ; CHECK: call void @foo(), !dbg ![[LOC:[0-9]+]], !attach ![[CALL:[0-9]+]]
> -; CHECK: ![[LOC]] = !{i32 104, i32 105, ![[SCOPE:[0-9]+]], ![[SCOPE]]}
> +; CHECK: ![[LOC]] = !MDLocation(line: 104, column: 105, scope:
> ![[SCOPE:[0-9]+]], inlinedAt: ![[SCOPE]])
>  ; CHECK: ![[SCOPE]] = !{!"0x11\000\00me\001\00\000\00\000",
> ![[FILE:[0-9]+]], ![[LIST:[0-9]+]], ![[LIST]], null, null, null}
>  ; CHECK: ![[FILE]] = !{!"source.c", !"/dir"}
>  ; CHECK: ![[LIST]] = !{i32 0}
> @@ -32,11 +32,11 @@ declare void @foo()
>  !4 = !{!"filler"}
>
>  !9 = !{!"0x11\000\00me\001\00\000\00\000", !15, !16, !16, null, null,
> null} ; [ DW_TAG_compile_unit ]
> -!10 = !{i32 100, i32 101, !9, !9}
> -!11 = !{i32 102, i32 103, !9, !9}
> -!12 = !{i32 104, i32 105, !9, !9}
> -!13 = !{i32 106, i32 107, !9, !9}
> -!14 = !{i32 108, i32 109, !9, !9}
> +!10 = !MDLocation(line: 100, column: 101, scope: !9, inlinedAt: !9)
> +!11 = !MDLocation(line: 102, column: 103, scope: !9, inlinedAt: !9)
> +!12 = !MDLocation(line: 104, column: 105, scope: !9, inlinedAt: !9)
> +!13 = !MDLocation(line: 106, column: 107, scope: !9, inlinedAt: !9)
> +!14 = !MDLocation(line: 108, column: 109, scope: !9, inlinedAt: !9)
>  !15 = !{!"source.c", !"/dir"}
>  !16 = !{i32 0}
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified:
> llvm/trunk/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> ---
> llvm/trunk/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll
> (original)
> +++
> llvm/trunk/test/CodeGen/AArch64/aarch64-2014-08-11-MachineCombinerCrash.ll
> Wed Jan 14 16:27:36 2015
> @@ -83,24 +83,24 @@ attributes #1 = { nounwind readnone }
>  !36 = !{i32 2, !"Dwarf Version", i32 4}
>  !37 = !{i32 2, !"Debug Info Version", i32 2}
>  !38 = !{!"clang version 3.6.0 "}
> -!39 = !{i32 154, i32 8, !40, null}
> +!39 = !MDLocation(line: 154, column: 8, scope: !40)
>  !40 = !{!"0xb\00154\008\002", !1, !41} ; [ DW_TAG_lexical_block ] [  ] []
>  !41 = !{!"0xb\00154\008\001", !1, !42} ; [ DW_TAG_lexical_block ] [  ] []
>  !42 = !{!"0xb\00154\003\000", !1, !4} ; [ DW_TAG_lexical_block ] [  ] []
> -!43 = !{i32 157, i32 5, !44, null}
> +!43 = !MDLocation(line: 157, column: 5, scope: !44)
>  !44 = !{!"0xb\00154\0042\000", !1, !42} ; [ DW_TAG_lexical_block ] [  ] []
> -!45 = !{i32 159, i32 5, !44, null}
> +!45 = !MDLocation(line: 159, column: 5, scope: !44)
>  !46 = !{!47, !47, i64 0}
>  !47 = !{!"int", !48, i64 0}
>  !48 = !{!"omnipotent char", !49, i64 0}
>  !49 = !{!"Simple C/C++ TBAA"}
> -!50 = !{i32 160, i32 5, !44, null}
> -!51 = !{i32 161, i32 5, !44, null}
> -!52 = !{i32 188, i32 5, !44, null}
> -!53 = !{i32 190, i32 5, !44, null}
> -!54 = !{i32 198, i32 5, !44, null}
> -!55 = !{i32 144, i32 13, !4, null}
> -!56 = !{i32 200, i32 5, !44, null}
> -!57 = !{i32 203, i32 5, !44, null}
> -!58 = !{i32 207, i32 5, !44, null}
> -!59 = !{i32 208, i32 5, !44, null}
> +!50 = !MDLocation(line: 160, column: 5, scope: !44)
> +!51 = !MDLocation(line: 161, column: 5, scope: !44)
> +!52 = !MDLocation(line: 188, column: 5, scope: !44)
> +!53 = !MDLocation(line: 190, column: 5, scope: !44)
> +!54 = !MDLocation(line: 198, column: 5, scope: !44)
> +!55 = !MDLocation(line: 144, column: 13, scope: !4)
> +!56 = !MDLocation(line: 200, column: 5, scope: !44)
> +!57 = !MDLocation(line: 203, column: 5, scope: !44)
> +!58 = !MDLocation(line: 207, column: 5, scope: !44)
> +!59 = !MDLocation(line: 208, column: 5, scope: !44)
>
> Modified:
> llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> (original)
> +++ llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> Wed Jan 14 16:27:36 2015
> @@ -34,12 +34,12 @@ declare void @llvm.dbg.declare(metadata,
>  !10 =
> !{!"0x2e\00print_double\00print_double\00\00203\001\001\000\006\00256\000\000",
> !20, !2, !4, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !11 =
> !{!"0x2e\00print_number\00print_number\00\0075\001\001\000\006\00256\000\000",
> !20, !2, !4, i32 0, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !12 =
> !{!"0x2e\00get_flags\00get_flags\00\00508\001\001\000\006\00256\000\000",
> !20, !2, !8, null, null, null, null, null} ; [ DW_TAG_subprogram ]
> -!13 = !{i32 653, i32 5, !14, null}
> +!13 = !MDLocation(line: 653, column: 5, scope: !14)
>  !14 = !{!"0xb\00652\0035\002", !20, !15} ; [ DW_TAG_lexical_block ]
>  !15 = !{!"0xb\00616\001\000", !20, !1} ; [ DW_TAG_lexical_block ]
>  !16 = !{!"0x100\00do_tab_convert\00853\000", !17, !2, !6} ; [
> DW_TAG_auto_variable ]
>  !17 = !{!"0xb\00850\0012\0033", !20, !14} ; [ DW_TAG_lexical_block ]
> -!18 = !{i32 853, i32 11, !17, null}
> -!19 = !{i32 853, i32 29, !17, null}
> +!18 = !MDLocation(line: 853, column: 11, scope: !17)
> +!19 = !MDLocation(line: 853, column: 29, scope: !17)
>  !20 = !{!"print.i", !"/Volumes/Ebi/echeng/radars/r9146594"}
>  !21 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2009-10-16-Scope.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2009-10-16-Scope.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2009-10-16-Scope.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2009-10-16-Scope.ll Wed Jan 14 16:27:36
> 2015
> @@ -22,13 +22,13 @@ declare void @llvm.dbg.declare(metadata,
>
>  declare i32 @foo(i32) ssp
>
> -!0 = !{i32 5, i32 2, !1, null}
> +!0 = !MDLocation(line: 5, column: 2, scope: !1)
>  !1 = !{!"0xb\001\001\000", null, !2}; [DW_TAG_lexical_block ]
>  !2 = !{!"0x2e\00bar\00bar\00bar\004\000\001\000\006\000\000\000", i32 0,
> !3, null, null, null, null, null, null}; [DW_TAG_subprogram ]
>  !3 = !{!"0x11\0012\00clang 1.1\001\00\000\00\000", !8, null, !9, null,
> null, null}; [DW_TAG_compile_unit ]
>  !4 = !{!"0x100\00count_\005\000", !5, !3, !6}; [ DW_TAG_auto_variable ]
>  !5 = !{!"0xb\001\001\000", null, !1}; [DW_TAG_lexical_block ]
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !3};
> [DW_TAG_base_type ]
> -!7 = !{i32 6, i32 1, !2, null}
> +!7 = !MDLocation(line: 6, column: 1, scope: !2)
>  !8 = !{!"genmodes.i", !"/Users/yash/Downloads"}
>  !9 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll
> (original)
> +++ llvm/trunk/test/CodeGen/ARM/2010-04-15-ScavengerDebugValue.ll Wed Jan
> 14 16:27:36 2015
> @@ -24,9 +24,9 @@ declare void @llvm.dbg.value(metadata, i
>  !6 = !{!"0x16\00SItype\00152\000\000\000\000", !12, null, !8} ; [
> DW_TAG_typedef ]
>  !7 = !{!"0x29", !"libgcc2.h",
> !"/Users/bwilson/local/nightly/test-2010-04-14/build/llvmgcc.roots/llvmgcc~obj/src/gcc",
> !3} ; [ DW_TAG_file_type ]
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", !12, !2} ; [
> DW_TAG_base_type ]
> -!9 = !{i32 95, i32 0, !10, null}
> +!9 = !MDLocation(line: 95, scope: !10)
>  !10 = !{!"0xb\0094\000\000", !12, !1} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 100, i32 0, !10, null}
> +!11 = !MDLocation(line: 100, scope: !10)
>  !13 = !{i32 0}
>  !14 = !{!1}
>  !15 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
> (original)
> +++ llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll Wed
> Jan 14 16:27:36 2015
> @@ -62,15 +62,15 @@ declare void @llvm.dbg.value(metadata, i
>  !12 = !{!"0x100\00c\007\000", !11, !2, !13} ; [ DW_TAG_auto_variable ]
>  !13 = !{!"0x24\00int\000\0032\0032\000\000\005", !26, !2} ; [
> DW_TAG_base_type ]
>  !14 = !{!"0x34\00length\00length\00length\001\000\001", !2, !2, !13, i32*
> @length} ; [ DW_TAG_variable ]
> -!15 = !{i32 4, i32 24, !1, null}
> -!16 = !{i32 4, i32 43, !1, null}
> -!17 = !{i32 9, i32 2, !11, null}
> +!15 = !MDLocation(line: 4, column: 24, scope: !1)
> +!16 = !MDLocation(line: 4, column: 43, scope: !1)
> +!17 = !MDLocation(line: 9, column: 2, scope: !11)
>  !18 = !{i32 0}
> -!19 = !{i32 10, i32 2, !11, null}
> -!20 = !{i32 11, i32 2, !11, null}
> -!21 = !{i32 12, i32 3, !22, null}
> +!19 = !MDLocation(line: 10, column: 2, scope: !11)
> +!20 = !MDLocation(line: 11, column: 2, scope: !11)
> +!21 = !MDLocation(line: 12, column: 3, scope: !22)
>  !22 = !{!"0xb\0011\0045\000", !26, !11} ; [ DW_TAG_lexical_block ]
> -!23 = !{i32 13, i32 3, !22, null}
> -!24 = !{i32 14, i32 2, !22, null}
> -!25 = !{i32 15, i32 1, !11, null}
> +!23 = !MDLocation(line: 13, column: 3, scope: !22)
> +!24 = !MDLocation(line: 14, column: 2, scope: !22)
> +!25 = !MDLocation(line: 15, column: 1, scope: !11)
>  !26 = !{!"t.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2010-08-04-StackVariable.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2010-08-04-StackVariable.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2010-08-04-StackVariable.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2010-08-04-StackVariable.ll Wed Jan 14
> 16:27:36 2015
> @@ -101,28 +101,28 @@ declare void @llvm.dbg.value(metadata, i
>  !21 = !{!"0x15\00\000\000\000\000\000\000", !48, null, null, !22, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !22 = !{!13}
>  !23 = !{!"0x101\00i\0016\000", !17, !2, !13} ; [ DW_TAG_arg_variable ]
> -!24 = !{i32 16, i32 0, !17, null}
> +!24 = !MDLocation(line: 16, scope: !17)
>  !25 = !{!"0x101\00location\0016\000", !17, !2, !26} ; [
> DW_TAG_arg_variable ]
>  !26 = !{!"0x10\00SVal\000\0064\0064\000\000", !48, !2, !1} ; [
> DW_TAG_reference_type ]
> -!27 = !{i32 17, i32 0, !28, null}
> +!27 = !MDLocation(line: 17, scope: !28)
>  !28 = !{!"0xb\0016\000\002", !2, !17} ; [ DW_TAG_lexical_block ]
> -!29 = !{i32 18, i32 0, !28, null}
> -!30 = !{i32 20, i32 0, !28, null}
> +!29 = !MDLocation(line: 18, scope: !28)
> +!30 = !MDLocation(line: 20, scope: !28)
>  !31 = !{!"0x101\00this\0011\000", !16, !2, !32} ; [ DW_TAG_arg_variable ]
>  !32 = !{!"0x26\00\000\0064\0064\000\0064", !48, !2, !33} ; [
> DW_TAG_const_type ]
>  !33 = !{!"0xf\00\000\0064\0064\000\000", !48, !2, !1} ; [
> DW_TAG_pointer_type ]
> -!34 = !{i32 11, i32 0, !16, null}
> -!35 = !{i32 11, i32 0, !36, null}
> +!34 = !MDLocation(line: 11, scope: !16)
> +!35 = !MDLocation(line: 11, scope: !36)
>  !36 = !{!"0xb\0011\000\001", !48, !37} ; [ DW_TAG_lexical_block ]
>  !37 = !{!"0xb\0011\000\000", !48, !16} ; [ DW_TAG_lexical_block ]
>  !38 = !{!"0x100\00v\0024\000", !39, !2, !1} ; [ DW_TAG_auto_variable ]
>  !39 = !{!"0xb\0023\000\004", !48, !40} ; [ DW_TAG_lexical_block ]
>  !40 = !{!"0xb\0023\000\003", !48, !20} ; [ DW_TAG_lexical_block ]
> -!41 = !{i32 24, i32 0, !39, null}
> -!42 = !{i32 25, i32 0, !39, null}
> -!43 = !{i32 26, i32 0, !39, null}
> +!41 = !MDLocation(line: 24, scope: !39)
> +!42 = !MDLocation(line: 25, scope: !39)
> +!43 = !MDLocation(line: 26, scope: !39)
>  !44 = !{!"0x100\00k\0026\000", !39, !2, !13} ; [ DW_TAG_auto_variable ]
> -!45 = !{i32 27, i32 0, !39, null}
> +!45 = !MDLocation(line: 27, scope: !39)
>  !46 = !{!16, !17, !20}
>  !47 = !{}
>  !48 = !{!"small.cc", !"/Users/manav/R8248330"}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll Wed Jan 14
> 16:27:36 2015
> @@ -108,16 +108,16 @@ entry:
>  !27 = !{!"0x101\00a\0016\000", !9, !1, !5} ; [ DW_TAG_arg_variable ]
>  !28 = !{!"0x100\00b\0016\000", !29, !1, !5} ; [ DW_TAG_auto_variable ]
>  !29 = !{!"0xb\0016\000\004", !47, !9} ; [ DW_TAG_lexical_block ]
> -!30 = !{i32 4, i32 0, !0, null}
> -!31 = !{i32 4, i32 0, !12, null}
> -!32 = !{i32 7, i32 0, !6, null}
> -!33 = !{i32 7, i32 0, !20, null}
> -!34 = !{i32 10, i32 0, !7, null}
> -!35 = !{i32 10, i32 0, !23, null}
> -!36 = !{i32 13, i32 0, !8, null}
> -!37 = !{i32 13, i32 0, !26, null}
> -!38 = !{i32 16, i32 0, !9, null}
> -!39 = !{i32 16, i32 0, !29, null}
> +!30 = !MDLocation(line: 4, scope: !0)
> +!31 = !MDLocation(line: 4, scope: !12)
> +!32 = !MDLocation(line: 7, scope: !6)
> +!33 = !MDLocation(line: 7, scope: !20)
> +!34 = !MDLocation(line: 10, scope: !7)
> +!35 = !MDLocation(line: 10, scope: !23)
> +!36 = !MDLocation(line: 13, scope: !8)
> +!37 = !MDLocation(line: 13, scope: !26)
> +!38 = !MDLocation(line: 16, scope: !9)
> +!39 = !MDLocation(line: 16, scope: !29)
>  !40 = !{!0, !6, !7, !8, !9}
>  !41 = !{!13, !14, !15, !16, !17}
>  !42 = !{!10, !11}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll Wed Jan 14
> 16:27:36 2015
> @@ -100,16 +100,16 @@ declare void @llvm.dbg.value(metadata, i
>  !27 = !{!"0x101\00a\0016777233\000", !9, !2, !5} ; [ DW_TAG_arg_variable ]
>  !28 = !{!"0x100\00b\0017\000", !29, !2, !5} ; [ DW_TAG_auto_variable ]
>  !29 = !{!"0xb\0017\0019\004", !47, !9} ; [ DW_TAG_lexical_block ]
> -!30 = !{i32 5, i32 16, !1, null}
> -!31 = !{i32 5, i32 32, !12, null}
> -!32 = !{i32 8, i32 14, !6, null}
> -!33 = !{i32 8, i32 29, !15, null}
> -!34 = !{i32 11, i32 16, !7, null}
> -!35 = !{i32 11, i32 32, !18, null}
> -!36 = !{i32 14, i32 16, !8, null}
> -!37 = !{i32 14, i32 32, !21, null}
> -!38 = !{i32 17, i32 16, !9, null}
> -!39 = !{i32 17, i32 32, !29, null}
> +!30 = !MDLocation(line: 5, column: 16, scope: !1)
> +!31 = !MDLocation(line: 5, column: 32, scope: !12)
> +!32 = !MDLocation(line: 8, column: 14, scope: !6)
> +!33 = !MDLocation(line: 8, column: 29, scope: !15)
> +!34 = !MDLocation(line: 11, column: 16, scope: !7)
> +!35 = !MDLocation(line: 11, column: 32, scope: !18)
> +!36 = !MDLocation(line: 14, column: 16, scope: !8)
> +!37 = !MDLocation(line: 14, column: 32, scope: !21)
> +!38 = !MDLocation(line: 17, column: 16, scope: !9)
> +!39 = !MDLocation(line: 17, column: 32, scope: !29)
>  !40 = !{!1, !6, !7, !8, !9}
>  !41 = !{!25, !26}
>  !42 = !{!10, !11}
>
> Modified: llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll Wed Jan 14 16:27:36
> 2015
> @@ -100,12 +100,12 @@ attributes #3 = { nounwind }
>  !18 = !{!"0x34\00b\00b\00\002\000\001", null, !5, !8, i32* @b, null} ; [
> DW_TAG_variable ] [b] [line 2] [def]
>  !19 = !{!"0x34\00c\00c\00\003\000\001", null, !5, !8, i32* @c, null} ; [
> DW_TAG_variable ] [c] [line 3] [def]
>  !20 = !{!"0x34\00d\00d\00\004\000\001", null, !5, !8, i32* @d, null} ; [
> DW_TAG_variable ] [d] [line 4] [def]
> -!21 = !{i32 10, i32 0, !22, null}
> +!21 = !MDLocation(line: 10, scope: !22)
>  !22 = !{!"0xb\0010\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/d/b/pr16110.c]
> -!26 = !{i32 12, i32 0, !13, null}
> +!26 = !MDLocation(line: 12, scope: !13)
>  !27 = !{i32* null}
> -!28 = !{i32 13, i32 0, !12, null}
> -!29 = !{i32 14, i32 0, !12, null}
> -!31 = !{i32 16, i32 0, !4, null}
> -!32 = !{i32 18, i32 0, !4, null}
> +!28 = !MDLocation(line: 13, scope: !12)
> +!29 = !MDLocation(line: 14, scope: !12)
> +!31 = !MDLocation(line: 16, scope: !4)
> +!32 = !MDLocation(line: 18, scope: !4)
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-frame-vararg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-frame-vararg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-frame-vararg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-frame-vararg.ll Wed Jan 14 16:27:36
> 2015
> @@ -38,7 +38,7 @@
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 "}
>  !12 = !{!"0x101\00count\0016777221\000", !4, !5, !8} ; [
> DW_TAG_arg_variable ] [count] [line 5]
> -!13 = !{i32 5, i32 0, !4, null}
> +!13 = !MDLocation(line: 5, scope: !4)
>  !14 = !{!"0x100\00vl\006\000", !4, !5, !15} ; [ DW_TAG_auto_variable ]
> [vl] [line 6]
>  !15 = !{!"0x16\00va_list\0030\000\000\000\000", !16, null, !17} ; [
> DW_TAG_typedef ] [va_list] [line 30, size 0, align 0, offset 0] [from
> __builtin_va_list]
>  !16 =
> !{!"/linux-x86_64-high/gcc_4.7.2/dbg/llvm/bin/../lib/clang/3.5/include/stdarg.h",
> !"/tmp"}
> @@ -47,18 +47,18 @@
>  !19 = !{!20}
>  !20 = !{!"0xd\00__ap\006\0032\0032\000\000", !1, !18, !21} ; [
> DW_TAG_member ] [__ap] [line 6, size 32, align 32, offset 0] [from ]
>  !21 = !{!"0xf\00\000\0032\0032\000\000", null, null, null} ; [
> DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from ]
> -!22 = !{i32 6, i32 0, !4, null}
> -!23 = !{i32 7, i32 0, !4, null}
> +!22 = !MDLocation(line: 6, scope: !4)
> +!23 = !MDLocation(line: 7, scope: !4)
>  !24 = !{!"0x100\00sum\008\000", !4, !5, !8} ; [ DW_TAG_auto_variable ]
> [sum] [line 8]
> -!25 = !{i32 8, i32 0, !4, null}
> +!25 = !MDLocation(line: 8, scope: !4)
>  !26 = !{!"0x100\00i\009\000", !27, !5, !8} ; [ DW_TAG_auto_variable ] [i]
> [line 9]
>  !27 = !{!"0xb\009\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/var.c]
> -!28 = !{i32 9, i32 0, !27, null}
> -!29 = !{i32 10, i32 0, !30, null}
> +!28 = !MDLocation(line: 9, scope: !27)
> +!29 = !MDLocation(line: 10, scope: !30)
>  !30 = !{!"0xb\009\000\001", !1, !27} ; [ DW_TAG_lexical_block ]
> [/tmp/var.c]
> -!31 = !{i32 11, i32 0, !30, null}
> -!32 = !{i32 12, i32 0, !4, null}
> -!33 = !{i32 13, i32 0, !4, null}
> +!31 = !MDLocation(line: 11, scope: !30)
> +!32 = !MDLocation(line: 12, scope: !4)
> +!33 = !MDLocation(line: 13, scope: !4)
>
>  ; CHECK-FP-LABEL: sum
>  ; CHECK-FP: .cfi_startproc
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-frame.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-frame.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-frame.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-frame.ll Wed Jan 14 16:27:36 2015
> @@ -142,27 +142,27 @@ declare void @_ZSt9terminatev()
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5 "}
>  !13 = !{!"0x101\00a\0016777220\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [a] [line 4]
> -!14 = !{i32 4, i32 0, !4, null}
> +!14 = !MDLocation(line: 4, scope: !4)
>  !15 = !{!"0x101\00b\0033554436\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [b] [line 4]
>  !16 = !{!"0x101\00c\0050331652\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [c] [line 4]
>  !17 = !{!"0x101\00d\0067108868\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [d] [line 4]
>  !18 = !{!"0x101\00e\0083886084\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [e] [line 4]
>  !19 = !{!"0x101\00m\00100663301\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [m] [line 5]
> -!20 = !{i32 5, i32 0, !4, null}
> +!20 = !MDLocation(line: 5, scope: !4)
>  !21 = !{!"0x101\00n\00117440517\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [n] [line 5]
>  !22 = !{!"0x101\00p\00134217733\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [p] [line 5]
>  !23 = !{!"0x101\00q\00150994949\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [q] [line 5]
>  !24 = !{!"0x101\00r\00167772165\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [r] [line 5]
> -!25 = !{i32 7, i32 0, !26, null}
> +!25 = !MDLocation(line: 7, scope: !26)
>  !26 = !{!"0xb\006\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/exp.cpp]
> -!27 = !{i32 8, i32 0, !26, null}
> -!28 = !{i32 11, i32 0, !26, null}
> -!29 = !{i32 9, i32 0, !30, null}
> +!27 = !MDLocation(line: 8, scope: !26)
> +!28 = !MDLocation(line: 11, scope: !26)
> +!29 = !MDLocation(line: 9, scope: !30)
>  !30 = !{!"0xb\008\000\001", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/exp.cpp]
> -!31 = !{i32 10, i32 0, !30, null}
> -!32 = !{i32 10, i32 0, !4, null}
> -!33 = !{i32 11, i32 0, !4, null}
> -!34 = !{i32 11, i32 0, !30, null}
> +!31 = !MDLocation(line: 10, scope: !30)
> +!32 = !MDLocation(line: 10, scope: !4)
> +!33 = !MDLocation(line: 11, scope: !4)
> +!34 = !MDLocation(line: 11, scope: !30)
>
>  ; CHECK-FP-LABEL: _Z4testiiiiiddddd:
>  ; CHECK-FP:   .cfi_startproc
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-arg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-arg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-arg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-arg.ll Wed Jan 14 16:27:36 2015
> @@ -52,16 +52,16 @@ declare void @llvm.dbg.value(metadata, i
>  !17 = !{!"0x101\00y\0067108875\000", !1, !2, !15} ; [ DW_TAG_arg_variable
> ]
>  !18 = !{!"0x101\00ptr1\0083886091\000", !1, !2, !6} ; [
> DW_TAG_arg_variable ]
>  !19 = !{!"0x101\00ptr2\00100663307\000", !1, !2, !6} ; [
> DW_TAG_arg_variable ]
> -!20 = !{i32 11, i32 24, !1, null}
> -!21 = !{i32 11, i32 44, !1, null}
> -!22 = !{i32 11, i32 54, !1, null}
> -!23 = !{i32 11, i32 64, !1, null}
> -!24 = !{i32 11, i32 81, !1, null}
> -!25 = !{i32 11, i32 101, !1, null}
> -!26 = !{i32 12, i32 3, !27, null}
> +!20 = !MDLocation(line: 11, column: 24, scope: !1)
> +!21 = !MDLocation(line: 11, column: 44, scope: !1)
> +!22 = !MDLocation(line: 11, column: 54, scope: !1)
> +!23 = !MDLocation(line: 11, column: 64, scope: !1)
> +!24 = !MDLocation(line: 11, column: 81, scope: !1)
> +!25 = !MDLocation(line: 11, column: 101, scope: !1)
> +!26 = !MDLocation(line: 12, column: 3, scope: !27)
>  !27 = !{!"0xb\0011\00107\000", !2, !1} ; [ DW_TAG_lexical_block ]
> -!28 = !{i32 13, i32 5, !27, null}
> -!29 = !{i32 14, i32 1, !27, null}
> +!28 = !MDLocation(line: 13, column: 5, scope: !27)
> +!29 = !MDLocation(line: 14, column: 1, scope: !27)
>  !30 = !{!1}
>  !31 = !{!5, !13, !14, !17, !18, !19}
>  !32 = !{!"one.c", !"/Volumes/Athwagate/R10048772"}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-blocks.ll Wed Jan 14 16:27:36
> 2015
> @@ -224,24 +224,24 @@ define hidden void @foobar_func_block_in
>  !126 = !{!"0xf\00\000\0032\0032\000\000", null, !0, !127} ; [
> DW_TAG_pointer_type ]
>  !127 = !{!"0x13\00my_struct\0049\000\000\000\004\000", !159, !0, null,
> null, null, null, null} ; [ DW_TAG_structure_type ] [my_struct] [line 49,
> size 0, align 0, offset 0] [decl] [from ]
>  !128 = !{!"0x29", !159} ; [ DW_TAG_file_type ]
> -!129 = !{i32 609, i32 144, !23, null}
> +!129 = !MDLocation(line: 609, column: 144, scope: !23)
>  !130 = !{!"0x101\00loadedMydata\0033555041\000", !23, !24, !59} ; [
> DW_TAG_arg_variable ]
> -!131 = !{i32 609, i32 155, !23, null}
> +!131 = !MDLocation(line: 609, column: 155, scope: !23)
>  !132 = !{!"0x101\00bounds\0050332257\000", !23, !24, !108} ; [
> DW_TAG_arg_variable ]
> -!133 = !{i32 609, i32 175, !23, null}
> +!133 = !MDLocation(line: 609, column: 175, scope: !23)
>  !134 = !{!"0x101\00data\0067109473\000", !23, !24, !108} ; [
> DW_TAG_arg_variable ]
> -!135 = !{i32 609, i32 190, !23, null}
> +!135 = !MDLocation(line: 609, column: 190, scope: !23)
>  !136 = !{!"0x100\00mydata\00604\000", !23, !24, !50} ; [
> DW_TAG_auto_variable ]
> -!137 = !{i32 604, i32 49, !23, null}
> +!137 = !MDLocation(line: 604, column: 49, scope: !23)
>  !138 = !{!"0x100\00self\00604\000", !23, !40, !90} ; [
> DW_TAG_auto_variable ]
>  !139 = !{!"0x100\00semi\00607\000", !23, !24, !125} ; [
> DW_TAG_auto_variable ]
> -!140 = !{i32 607, i32 30, !23, null}
> -!141 = !{i32 610, i32 17, !142, null}
> +!140 = !MDLocation(line: 607, column: 30, scope: !23)
> +!141 = !MDLocation(line: 610, column: 17, scope: !142)
>  !142 = !{!"0xb\00609\00200\0094", !152, !23} ; [ DW_TAG_lexical_block ]
> -!143 = !{i32 611, i32 17, !142, null}
> -!144 = !{i32 612, i32 17, !142, null}
> -!145 = !{i32 613, i32 17, !142, null}
> -!146 = !{i32 615, i32 13, !142, null}
> +!143 = !MDLocation(line: 611, column: 17, scope: !142)
> +!144 = !MDLocation(line: 612, column: 17, scope: !142)
> +!145 = !MDLocation(line: 613, column: 17, scope: !142)
> +!146 = !MDLocation(line: 615, column: 13, scope: !142)
>  !147 = !{!1, !1, !5, !5, !9, !14, !19, !19, !14, !14, !14, !19, !19, !19}
>  !148 = !{!23}
>  !149 = !{!"header3.h", !"/Volumes/Sandbox/llvm"}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-branch-folding.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-branch-folding.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-branch-folding.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-branch-folding.ll Wed Jan 14
> 16:27:36 2015
> @@ -81,17 +81,17 @@ declare void @llvm.dbg.value(metadata, i
>  !36 = !{!"0x16\00v4sf\003\000\000\000\000", !55, !2, !6} ; [
> DW_TAG_typedef ]
>  !37 = !{!"0xd\00A\0024\00128\0032\000\000", !55, !15, !38} ; [
> DW_TAG_member ]
>  !38 = !{!"0x1\00\000\00128\0032\000\000", null, !2, !7, !8, i32 0, i32 0}
> ; [ DW_TAG_array_type ]
> -!39 = !{i32 79, i32 7, !40, null}
> +!39 = !MDLocation(line: 79, column: 7, scope: !40)
>  !40 = !{!"0xb\0075\0035\0018", !1, !41} ; [ DW_TAG_lexical_block ]
>  !41 = !{!"0xb\0075\005\0017", !1, !42} ; [ DW_TAG_lexical_block ]
>  !42 = !{!"0xb\0071\0032\0016", !1, !43} ; [ DW_TAG_lexical_block ]
>  !43 = !{!"0xb\0071\003\0015", !1, !25} ; [ DW_TAG_lexical_block ]
> -!44 = !{i32 75, i32 5, !42, null}
> -!45 = !{i32 42, i32 2, !46, !48}
> +!44 = !MDLocation(line: 75, column: 5, scope: !42)
> +!45 = !MDLocation(line: 42, column: 2, scope: !46, inlinedAt: !48)
>  !46 = !{!"0xb\0042\002\0020", !15, !47} ; [ DW_TAG_lexical_block ]
>  !47 = !{!"0xb\0041\0028\0019", !15, !14} ; [ DW_TAG_lexical_block ]
> -!48 = !{i32 95, i32 3, !25, null}
> -!49 = !{i32 99, i32 3, !25, null}
> +!48 = !MDLocation(line: 95, column: 3, scope: !25)
> +!49 = !MDLocation(line: 99, column: 3, scope: !25)
>  !50 = !{!0, !10, !14}
>  !51 = !{!18}
>  !52 = !{!19, !20, !24, !26, !27, !28, !29}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-d16-reg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-d16-reg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-d16-reg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-d16-reg.ll Wed Jan 14 16:27:36
> 2015
> @@ -85,22 +85,22 @@ declare i32 @puts(i8* nocapture) nounwin
>  !23 = !{!"0x101\00argv\0017\000", !10, !1, !13} ; [ DW_TAG_arg_variable ]
>  !24 = !{!"0x100\00dval\0019\000", !25, !1, !7} ; [ DW_TAG_auto_variable ]
>  !25 = !{!"0xb\0018\000\002", !46, !10} ; [ DW_TAG_lexical_block ]
> -!26 = !{i32 4, i32 0, !9, null}
> -!27 = !{i32 6, i32 0, !28, null}
> +!26 = !MDLocation(line: 4, scope: !9)
> +!27 = !MDLocation(line: 6, scope: !28)
>  !28 = !{!"0xb\005\000\001", !46, !9} ; [ DW_TAG_lexical_block ]
> -!29 = !{i32 7, i32 0, !28, null}
> -!30 = !{i32 11, i32 0, !0, null}
> -!31 = !{i32 13, i32 0, !32, null}
> +!29 = !MDLocation(line: 7, scope: !28)
> +!30 = !MDLocation(line: 11, scope: !0)
> +!31 = !MDLocation(line: 13, scope: !32)
>  !32 = !{!"0xb\0012\000\000", !46, !0} ; [ DW_TAG_lexical_block ]
> -!33 = !{i32 14, i32 0, !32, null}
> -!34 = !{i32 17, i32 0, !10, null}
> -!35 = !{i32 19, i32 0, !25, null}
> -!36 = !{i32 20, i32 0, !25, null}
> -!37 = !{i32 21, i32 0, !25, null}
> -!38 = !{i32 4, i32 0, !9, !37}
> -!39 = !{i32 6, i32 0, !28, !37}
> -!40 = !{i32 22, i32 0, !25, null}
> -!41 = !{i32 23, i32 0, !25, null}
> +!33 = !MDLocation(line: 14, scope: !32)
> +!34 = !MDLocation(line: 17, scope: !10)
> +!35 = !MDLocation(line: 19, scope: !25)
> +!36 = !MDLocation(line: 20, scope: !25)
> +!37 = !MDLocation(line: 21, scope: !25)
> +!38 = !MDLocation(line: 4, scope: !9, inlinedAt: !37)
> +!39 = !MDLocation(line: 6, scope: !28, inlinedAt: !37)
> +!40 = !MDLocation(line: 22, scope: !25)
> +!41 = !MDLocation(line: 23, scope: !25)
>  !42 = !{!0, !9, !10}
>  !43 = !{!16, !17, !18}
>  !44 = !{!19, !20, !21}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-qreg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-qreg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-qreg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-qreg.ll Wed Jan 14 16:27:36 2015
> @@ -77,17 +77,17 @@ declare void @llvm.dbg.value(metadata, i
>  !36 = !{!"0x16\00v4sf\003\000\000\000\000", !55, !2, !6} ; [
> DW_TAG_typedef ]
>  !37 = !{!"0xd\00A\0024\00128\0032\000\000", !55, !15, !38} ; [
> DW_TAG_member ]
>  !38 = !{!"0x1\00\000\00128\0032\000\000", null, !2, !7, !8, i32 0, i32 0}
> ; [ DW_TAG_array_type ]
> -!39 = !{i32 79, i32 7, !40, null}
> +!39 = !MDLocation(line: 79, column: 7, scope: !40)
>  !40 = !{!"0xb\0075\0035\0018", !54, !41} ; [ DW_TAG_lexical_block ]
>  !41 = !{!"0xb\0075\005\0017", !54, !42} ; [ DW_TAG_lexical_block ]
>  !42 = !{!"0xb\0071\0032\0016", !54, !43} ; [ DW_TAG_lexical_block ]
>  !43 = !{!"0xb\0071\003\0015", !54, !25} ; [ DW_TAG_lexical_block ]
> -!44 = !{i32 75, i32 5, !42, null}
> -!45 = !{i32 42, i32 2, !46, !48}
> +!44 = !MDLocation(line: 75, column: 5, scope: !42)
> +!45 = !MDLocation(line: 42, column: 2, scope: !46, inlinedAt: !48)
>  !46 = !{!"0xb\0042\002\0020", !55, !47} ; [ DW_TAG_lexical_block ]
>  !47 = !{!"0xb\0041\0028\0019", !55, !14} ; [ DW_TAG_lexical_block ]
> -!48 = !{i32 95, i32 3, !25, null}
> -!49 = !{i32 99, i32 3, !25, null}
> +!48 = !MDLocation(line: 95, column: 3, scope: !25)
> +!49 = !MDLocation(line: 99, column: 3, scope: !25)
>  !50 = !{!0, !10, !14}
>  !51 = !{!18}
>  !52 = !{!19, !20, !24, !26, !27, !28, !29}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-s16-reg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-s16-reg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-s16-reg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-s16-reg.ll Wed Jan 14 16:27:36
> 2015
> @@ -89,29 +89,29 @@ declare void @llvm.dbg.value(metadata, i
>  !21 = !{!"0x24\00char\000\008\008\000\000\006", null, !2} ; [
> DW_TAG_base_type ]
>  !22 = !{!"0x100\00dval\0019\000", !23, !1, !11} ; [ DW_TAG_auto_variable ]
>  !23 = !{!"0xb\0018\001\002", !51, !7} ; [ DW_TAG_lexical_block ]
> -!24 = !{i32 4, i32 22, !0, null}
> -!25 = !{i32 4, i32 33, !0, null}
> -!26 = !{i32 4, i32 52, !0, null}
> -!27 = !{i32 6, i32 3, !28, null}
> +!24 = !MDLocation(line: 4, column: 22, scope: !0)
> +!25 = !MDLocation(line: 4, column: 33, scope: !0)
> +!26 = !MDLocation(line: 4, column: 52, scope: !0)
> +!27 = !MDLocation(line: 6, column: 3, scope: !28)
>  !28 = !{!"0xb\005\001\000", !51, !0} ; [ DW_TAG_lexical_block ]
> -!29 = !{i32 7, i32 3, !28, null}
> -!30 = !{i32 11, i32 42, !6, null}
> -!31 = !{i32 11, i32 53, !6, null}
> -!32 = !{i32 11, i32 72, !6, null}
> -!33 = !{i32 13, i32 3, !34, null}
> +!29 = !MDLocation(line: 7, column: 3, scope: !28)
> +!30 = !MDLocation(line: 11, column: 42, scope: !6)
> +!31 = !MDLocation(line: 11, column: 53, scope: !6)
> +!32 = !MDLocation(line: 11, column: 72, scope: !6)
> +!33 = !MDLocation(line: 13, column: 3, scope: !34)
>  !34 = !{!"0xb\0012\001\001", !51, !6} ; [ DW_TAG_lexical_block ]
> -!35 = !{i32 14, i32 3, !34, null}
> -!36 = !{i32 17, i32 15, !7, null}
> -!37 = !{i32 17, i32 28, !7, null}
> -!38 = !{i32 19, i32 31, !23, null}
> -!39 = !{i32 20, i32 3, !23, null}
> -!40 = !{i32 21, i32 3, !23, null}
> -!41 = !{i32 4, i32 22, !0, !40}
> -!42 = !{i32 4, i32 33, !0, !40}
> -!43 = !{i32 4, i32 52, !0, !40}
> -!44 = !{i32 6, i32 3, !28, !40}
> -!45 = !{i32 22, i32 3, !23, null}
> -!46 = !{i32 23, i32 1, !23, null}
> +!35 = !MDLocation(line: 14, column: 3, scope: !34)
> +!36 = !MDLocation(line: 17, column: 15, scope: !7)
> +!37 = !MDLocation(line: 17, column: 28, scope: !7)
> +!38 = !MDLocation(line: 19, column: 31, scope: !23)
> +!39 = !MDLocation(line: 20, column: 3, scope: !23)
> +!40 = !MDLocation(line: 21, column: 3, scope: !23)
> +!41 = !MDLocation(line: 4, column: 22, scope: !0, inlinedAt: !40)
> +!42 = !MDLocation(line: 4, column: 33, scope: !0, inlinedAt: !40)
> +!43 = !MDLocation(line: 4, column: 52, scope: !0, inlinedAt: !40)
> +!44 = !MDLocation(line: 6, column: 3, scope: !28, inlinedAt: !40)
> +!45 = !MDLocation(line: 22, column: 3, scope: !23)
> +!46 = !MDLocation(line: 23, column: 1, scope: !23)
>  !47 = !{!0, !6, !7}
>  !48 = !{!8, !10, !12}
>  !49 = !{!14, !15, !16}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-info-sreg2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-info-sreg2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-info-sreg2.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-info-sreg2.ll Wed Jan 14 16:27:36
> 2015
> @@ -54,11 +54,11 @@ declare void @llvm.dbg.value(metadata, i
>  !8 = !{!"0x100\00y\008\000", !9, !2, !7} ; [ DW_TAG_auto_variable ]
>  !9 = !{!"0xb\007\0025\002", !18, !10} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"0xb\007\003\001", !18, !6} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 6, i32 18, !6, null}
> -!12 = !{i32 7, i32 3, !6, null}
> -!13 = !{i32 8, i32 20, !9, null}
> -!14 = !{i32 7, i32 20, !10, null}
> -!15 = !{i32 10, i32 1, !6, null}
> +!11 = !MDLocation(line: 6, column: 18, scope: !6)
> +!12 = !MDLocation(line: 7, column: 3, scope: !6)
> +!13 = !MDLocation(line: 8, column: 20, scope: !9)
> +!14 = !MDLocation(line: 7, column: 20, scope: !10)
> +!15 = !MDLocation(line: 10, column: 1, scope: !6)
>  !16 = !{!1}
>  !17 = !{!5, !8}
>  !18 = !{!"k.cc", !"/private/tmp"}
>
> Modified: llvm/trunk/test/CodeGen/ARM/debug-segmented-stacks.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/debug-segmented-stacks.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/debug-segmented-stacks.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/debug-segmented-stacks.ll Wed Jan 14
> 16:27:36 2015
> @@ -52,7 +52,7 @@ define void @test_basic() #0 {
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 "}
>  !12 = !{!"0x101\00count\0016777221\000", !4, !5, !8} ; [
> DW_TAG_arg_variable ] [count] [line 5]
> -!13 = !{i32 5, i32 0, !4, null}
> +!13 = !MDLocation(line: 5, scope: !4)
>  !14 = !{!"0x100\00vl\006\000", !4, !5, !15} ; [ DW_TAG_auto_variable ]
> [vl] [line 6]
>  !15 = !{!"0x16\00va_list\0030\000\000\000\000", !16, null, !17} ; [
> DW_TAG_typedef ] [va_list] [line 30, size 0, align 0, offset 0] [from
> __builtin_va_list]
>  !16 =
> !{!"/linux-x86_64-high/gcc_4.7.2/dbg/llvm/bin/../lib/clang/3.5/include/stdarg.h",
> !"/tmp"}
> @@ -61,18 +61,18 @@ define void @test_basic() #0 {
>  !19 = !{!20}
>  !20 = !{!"0xd\00__ap\006\0032\0032\000\000", !1, !18, !21} ; [
> DW_TAG_member ] [__ap] [line 6, size 32, align 32, offset 0] [from ]
>  !21 = !{!"0xf\00\000\0032\0032\000\000", null, null, null} ; [
> DW_TAG_pointer_type ] [line 0, size 32, align 32, offset 0] [from ]
> -!22 = !{i32 6, i32 0, !4, null}
> -!23 = !{i32 7, i32 0, !4, null}
> +!22 = !MDLocation(line: 6, scope: !4)
> +!23 = !MDLocation(line: 7, scope: !4)
>  !24 = !{!"0x100\00test_basic\008\000", !4, !5, !8} ; [
> DW_TAG_auto_variable ] [sum] [line 8]
> -!25 = !{i32 8, i32 0, !4, null}
> +!25 = !MDLocation(line: 8, scope: !4)
>  !26 = !{!"0x100\00i\009\000", !27, !5, !8} ; [ DW_TAG_auto_variable ] [i]
> [line 9]
>  !27 = !{!"0xb\009\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/var.c]
> -!28 = !{i32 9, i32 0, !27, null}
> -!29 = !{i32 10, i32 0, !30, null}
> +!28 = !MDLocation(line: 9, scope: !27)
> +!29 = !MDLocation(line: 10, scope: !30)
>  !30 = !{!"0xb\009\000\001", !1, !27} ; [ DW_TAG_lexical_block ]
> [/tmp/var.c]
> -!31 = !{i32 11, i32 0, !30, null}
> -!32 = !{i32 12, i32 0, !4, null}
> -!33 = !{i32 13, i32 0, !4, null}
> +!31 = !MDLocation(line: 11, scope: !30)
> +!32 = !MDLocation(line: 12, scope: !4)
> +!33 = !MDLocation(line: 13, scope: !4)
>
>  ; Just to prevent the alloca from being optimized away
>  declare void @dummy_use(i32*, i32)
>
> Modified: llvm/trunk/test/CodeGen/Hexagon/hwloop-dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Hexagon/hwloop-dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/Hexagon/hwloop-dbg.ll (original)
> +++ llvm/trunk/test/CodeGen/Hexagon/hwloop-dbg.ll Wed Jan 14 16:27:36 2015
> @@ -51,14 +51,14 @@ declare void @llvm.dbg.value(metadata, i
>  !14 = !{!"0x101\00b\0033554433\000", !5, !6, !9} ; [ DW_TAG_arg_variable
> ] [b] [line 1]
>  !15 = !{!"0x100\00i\002\000", !16, !6, !10} ; [ DW_TAG_auto_variable ]
> [i] [line 2]
>  !16 = !{!"0xb\001\0026\000", !28, !5} ; [ DW_TAG_lexical_block ]
> [/usr2/kparzysz/s.hex/t/hwloop-dbg.c]
> -!17 = !{i32 1, i32 15, !5, null}
> -!18 = !{i32 1, i32 23, !5, null}
> -!19 = !{i32 3, i32 8, !20, null}
> +!17 = !MDLocation(line: 1, column: 15, scope: !5)
> +!18 = !MDLocation(line: 1, column: 23, scope: !5)
> +!19 = !MDLocation(line: 3, column: 8, scope: !20)
>  !20 = !{!"0xb\003\003\001", !28, !16} ; [ DW_TAG_lexical_block ]
> [/usr2/kparzysz/s.hex/t/hwloop-dbg.c]
> -!21 = !{i32 4, i32 5, !22, null}
> +!21 = !MDLocation(line: 4, column: 5, scope: !22)
>  !22 = !{!"0xb\003\0028\002", !28, !20} ; [ DW_TAG_lexical_block ]
> [/usr2/kparzysz/s.hex/t/hwloop-dbg.c]
> -!26 = !{i32 3, i32 23, !20, null}
> -!27 = !{i32 6, i32 1, !16, null}
> +!26 = !MDLocation(line: 3, column: 23, scope: !20)
> +!27 = !MDLocation(line: 6, column: 1, scope: !16)
>  !28 = !{!"hwloop-dbg.c", !"/usr2/kparzysz/s.hex/t"}
>  !29 = !{i32 1, !"Debug Info Version", i32 2}
>  !30 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/Inputs/DbgValueOtherTargets.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Inputs/DbgValueOtherTargets.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/Inputs/DbgValueOtherTargets.ll (original)
> +++ llvm/trunk/test/CodeGen/Inputs/DbgValueOtherTargets.ll Wed Jan 14
> 16:27:36 2015
> @@ -23,8 +23,8 @@ declare void @llvm.dbg.value(metadata, i
>  !6 = !{i32 0}
>  !7 = !{!"0x100\00i\003\000", !8, !1, !5} ; [ DW_TAG_auto_variable ]
>  !8 = !{!"0xb\002\0012\000", !12, !0} ; [ DW_TAG_lexical_block ]
> -!9 = !{i32 3, i32 11, !8, null}
> -!10 = !{i32 4, i32 2, !8, null}
> +!9 = !MDLocation(line: 3, column: 11, scope: !8)
> +!10 = !MDLocation(line: 4, column: 2, scope: !8)
>  !11 = !{!0}
>  !12 = !{!"/tmp/x.c", !"/Users/manav"}
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/PowerPC/dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/PowerPC/dbg.ll (original)
> +++ llvm/trunk/test/CodeGen/PowerPC/dbg.ll Wed Jan 14 16:27:36 2015
> @@ -31,9 +31,9 @@ declare void @llvm.dbg.value(metadata, i
>  !13 = !{!15, !16}
>  !15 = !{!"0x101\00argc\0016777217\000", !5, !6, !9} ; [
> DW_TAG_arg_variable ]
>  !16 = !{!"0x101\00argv\0033554433\000", !5, !6, !10} ; [
> DW_TAG_arg_variable ]
> -!17 = !{i32 1, i32 14, !5, null}
> -!18 = !{i32 1, i32 26, !5, null}
> -!19 = !{i32 2, i32 3, !20, null}
> +!17 = !MDLocation(line: 1, column: 14, scope: !5)
> +!18 = !MDLocation(line: 1, column: 26, scope: !5)
> +!19 = !MDLocation(line: 2, column: 3, scope: !20)
>  !20 = !{!"0xb\001\0034\000", !21, !5} ; [ DW_TAG_lexical_block ]
>  !21 = !{!"dbg.c", !"/src"}
>  !22 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/PowerPC/pr17168.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/pr17168.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/PowerPC/pr17168.ll (original)
> +++ llvm/trunk/test/CodeGen/PowerPC/pr17168.ll Wed Jan 14 16:27:36 2015
> @@ -493,26 +493,26 @@ attributes #1 = { nounwind readnone }
>  !436 = !{!"0x34\00tmp2\00tmp2\00\0088\001\001", null, !300, !20, null,
> null} ; [ DW_TAG_variable ] [tmp2] [line 88] [local] [def]
>  !437 = !{!"0x34\00tmp1\00tmp1\00\0088\001\001", null, !300, !20, null,
> null} ; [ DW_TAG_variable ] [tmp1] [line 88] [local] [def]
>  !438 = !{i32 2, !"Dwarf Version", i32 4}
> -!439 = !{i32 1898, i32 0, !440, null}
> +!439 = !MDLocation(line: 1898, scope: !440)
>  !440 = !{!"0xb\001898\000\00107", !1, !114} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!441 = !{i32 1913, i32 0, !442, null}
> +!441 = !MDLocation(line: 1913, scope: !442)
>  !442 = !{!"0xb\001913\000\00115", !1, !114} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!443 = !{i32 1923, i32 0, !114, null}
> +!443 = !MDLocation(line: 1923, scope: !114)
>  !444 = !{!"int", !445}
>  !445 = !{!"omnipotent char", !446}
>  !446 = !{!"Simple C/C++ TBAA"}
>  !447 = !{i32 1}
> -!448 = !{i32 1925, i32 0, !449, null}
> +!448 = !MDLocation(line: 1925, scope: !449)
>  !449 = !{!"0xb\001925\000\00121", !1, !114} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!450 = !{i32 1939, i32 0, !451, null}
> +!450 = !MDLocation(line: 1939, scope: !451)
>  !451 = !{!"0xb\001939\000\00127", !1, !114} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!452 = !{i32 1940, i32 0, !453, null}
> +!452 = !MDLocation(line: 1940, scope: !453)
>  !453 = !{!"0xb\001940\000\00129", !1, !454} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
>  !454 = !{!"0xb\001939\000\00128", !1, !451} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!455 = !{i32 1941, i32 0, !456, null}
> +!455 = !MDLocation(line: 1941, scope: !456)
>  !456 = !{!"0xb\001941\000\00131", !1, !457} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
>  !457 = !{!"0xb\001940\000\00130", !1, !453} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
> -!458 = !{i32 2020, i32 0, !459, null}
> +!458 = !MDLocation(line: 2020, scope: !459)
>  !459 = !{!"0xb\002020\000\00149", !1, !460} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
>  !460 = !{!"0xb\002019\000\00148", !1, !461} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
>  !461 = !{!"0xb\002019\000\00147", !1, !462} ; [ DW_TAG_lexical_block ]
> [/home/hfinkel/src/NPB2.3-omp-C/BT/bt.c]
>
> Modified: llvm/trunk/test/CodeGen/PowerPC/unwind-dw2-g.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/unwind-dw2-g.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/PowerPC/unwind-dw2-g.ll (original)
> +++ llvm/trunk/test/CodeGen/PowerPC/unwind-dw2-g.ll Wed Jan 14 16:27:36
> 2015
> @@ -30,6 +30,6 @@ attributes #0 = { nounwind }
>  !6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !7 = !{null}
>  !8 = !{i32 2, !"Dwarf Version", i32 3}
> -!9 = !{i32 2, i32 0, !4, null}
> -!10 = !{i32 3, i32 0, !4, null}
> +!9 = !MDLocation(line: 2, scope: !4)
> +!10 = !MDLocation(line: 3, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll (original)
> +++ llvm/trunk/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll Wed Jan 14
> 16:27:36 2015
> @@ -48,7 +48,7 @@ declare void @llvm.dbg.value(metadata, i
>
>  !llvm.dbg.cu = !{!5}
>  !llvm.module.flags = !{!104}
> -!0 = !{i32 46, i32 0, !1, null}
> +!0 = !MDLocation(line: 46, scope: !1)
>  !1 = !{!"0xb\0044\000\000", !101, !2} ; [ DW_TAG_lexical_block ]
>  !2 = !{!"0xb\0044\000\000", !101, !3} ; [ DW_TAG_lexical_block ]
>  !3 =
> !{!"0x2e\00getClosestDiagonal3\00getClosestDiagonal3\00_Z19getClosestDiagonal3ii\0044\000\001\000\006\000\000\000",
> !101, null, !6, null, null, null, null, null} ; [ DW_TAG_subprogram ]
> @@ -142,13 +142,13 @@ declare void @llvm.dbg.value(metadata, i
>  !89 =
> !{!"0x2e\00indexOfMaxComponent\00indexOfMaxComponent\00_ZNK9ggVector319indexOfMaxComponentEv\00146\000\000\000\006\000\000\000",
> !9, !8, !86, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !90 =
> !{!"0x2e\00indexOfMaxAbsComponent\00indexOfMaxAbsComponent\00_ZNK9ggVector322indexOfMaxAbsComponentEv\00150\000\000\000\006\000\000\000",
> !9, !8, !86, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !91 = !{!"0x100\00vx\0046\000", !1, !4, !13} ; [ DW_TAG_auto_variable ]
> -!92 = !{i32 48, i32 0, !1, null}
> -!93 = !{i32 218, i32 0, !94, !96}
> +!92 = !MDLocation(line: 48, scope: !1)
> +!93 = !MDLocation(line: 218, scope: !94, inlinedAt: !96)
>  !94 = !{!"0xb\00217\000\000", !101, !95} ; [ DW_TAG_lexical_block ]
>  !95 = !{!"0xb\00217\000\000", !101, !77} ; [ DW_TAG_lexical_block ]
> -!96 = !{i32 51, i32 0, !1, null}
> -!97 = !{i32 227, i32 0, !94, !96}
> -!98 = !{i32 52, i32 0, !1, null}
> +!96 = !MDLocation(line: 51, scope: !1)
> +!97 = !MDLocation(line: 227, scope: !94, inlinedAt: !96)
> +!98 = !MDLocation(line: 52, scope: !1)
>  !101 = !{!"ggEdgeDiscrepancy.cc",
> !"/Volumes/Home/grosbaj/sources/llvm-externals/speccpu2000/benchspec/CINT2000/252.eon/src"}
>  !102 = !{i32 0}
>  !103 = !{!3, !77}
>
> Modified: llvm/trunk/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2009-02-12-DebugInfoVLA.ll Wed Jan 14
> 16:27:36 2015
> @@ -73,15 +73,15 @@ declare void @llvm.stackrestore(i8*) nou
>  !4 = !{!5, !6}
>  !5 = !{!"0x24\00char\000\008\008\000\000\006", null, !2} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0xf\00\000\0064\0064\000\000", null, !2, !5} ; [
> DW_TAG_pointer_type ]
> -!7 = !{i32 2, i32 0, !1, null}
> +!7 = !MDLocation(line: 2, scope: !1)
>  !8 = !{!"0x100\00str.0\003\000", !1, !2, !9} ; [ DW_TAG_auto_variable ]
>  !9 = !{!"0xf\00\000\0064\0064\000\0064", null, !2, !10} ; [
> DW_TAG_pointer_type ]
>  !10 = !{!"0x1\00\000\008\008\000\000", null, !2, !5, !11, i32 0, null,
> null, null} ; [ DW_TAG_array_type ] [line 0, size 8, align 8, offset 0]
> [from char]
>  !11 = !{!12}
>  !12 = !{!"0x21\000\001"}        ; [ DW_TAG_subrange_type ]
> -!13 = !{i32 3, i32 0, !14, null}
> +!13 = !MDLocation(line: 3, scope: !14)
>  !14 = !{!"0xb\000\000\000", !17, !1} ; [ DW_TAG_lexical_block ]
> -!15 = !{i32 4, i32 0, !14, null}
> -!16 = !{i32 5, i32 0, !14, null}
> +!15 = !MDLocation(line: 4, scope: !14)
> +!16 = !MDLocation(line: 5, scope: !14)
>  !17 = !{!"vla.c", !"/tmp/"}
>  !18 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/X86/2009-10-16-Scope.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2009-10-16-Scope.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2009-10-16-Scope.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2009-10-16-Scope.ll Wed Jan 14 16:27:36
> 2015
> @@ -22,13 +22,13 @@ declare void @llvm.dbg.declare(metadata,
>
>  declare i32 @foo(i32) ssp
>
> -!0 = !{i32 5, i32 2, !1, null}
> +!0 = !MDLocation(line: 5, column: 2, scope: !1)
>  !1 = !{!"0xb\001\001\000", null, !2}; [DW_TAG_lexical_block ]
>  !2 = !{!"0x2e\00bar\00bar\00bar\004\000\001\000\006\000\000\000", i32 0,
> !3, null, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !3 = !{!"0x11\0012\00clang 1.1\001\00\000\00\000", !8, null, !9, null,
> null, null}; [DW_TAG_compile_unit ]
>  !4 = !{!"0x100\00count_\005\000", !5, !3, !6}; [ DW_TAG_auto_variable ]
>  !5 = !{!"0xb\001\001\000", null, !1}; [DW_TAG_lexical_block ]
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !3};
> [DW_TAG_base_type ]
> -!7 = !{i32 6, i32 1, !2, null}
> +!7 = !MDLocation(line: 6, column: 1, scope: !2)
>  !8 = !{!"genmodes.i", !"/Users/yash/Downloads"}
>  !9 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-01-18-DbgValue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-01-18-DbgValue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-01-18-DbgValue.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-01-18-DbgValue.ll Wed Jan 14 16:27:36
> 2015
> @@ -46,8 +46,8 @@ declare void @llvm.dbg.declare(metadata,
>  !12 = !{!"0xd\00x\002\0064\0064\000\000", !19, !10, !6} ; [ DW_TAG_member
> ]
>  !13 = !{!"0xd\00y\003\0064\0064\0064\000", !19, !10, !6} ; [
> DW_TAG_member ]
>  !14 = !{!"0xd\00P2\008\00128\0064\00128\000", !19, !7, !10} ; [
> DW_TAG_member ]
> -!15 = !{i32 11, i32 0, !1, null}
> -!16 = !{i32 12, i32 0, !17, null}
> +!15 = !MDLocation(line: 11, scope: !1)
> +!16 = !MDLocation(line: 12, scope: !17)
>  !17 = !{!"0xb\0011\000\000", !19, !1} ; [ DW_TAG_lexical_block ]
>  !18 = !{!1}
>  !19 = !{!"b2.c", !"/tmp/"}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-05-25-DotDebugLoc.ll Wed Jan 14
> 16:27:36 2015
> @@ -219,30 +219,30 @@ declare void @llvm.dbg.value(metadata, i
>  !16 = !{!"0x100\00ratio\001923\000", !15, !2, !9} ; [
> DW_TAG_auto_variable ]
>  !17 = !{!"0x100\00x\001923\000", !15, !2, !9} ; [ DW_TAG_auto_variable ]
>  !18 = !{!"0x100\00y\001923\000", !15, !2, !9} ; [ DW_TAG_auto_variable ]
> -!19 = !{i32 1929, i32 0, !15, null}
> -!20 = !{i32 1931, i32 0, !15, null}
> -!21 = !{i32 1932, i32 0, !15, null}
> -!22 = !{i32 1933, i32 0, !15, null}
> -!23 = !{i32 1934, i32 0, !15, null}
> -!24 = !{i32 1938, i32 0, !15, null}
> -!25 = !{i32 1939, i32 0, !15, null}
> -!26 = !{i32 1940, i32 0, !15, null}
> -!27 = !{i32 1941, i32 0, !15, null}
> -!28 = !{i32 1946, i32 0, !15, null}
> -!29 = !{i32 1948, i32 0, !15, null}
> -!30 = !{i32 1950, i32 0, !15, null}
> -!31 = !{i32 1951, i32 0, !15, null}
> -!32 = !{i32 1953, i32 0, !15, null}
> -!33 = !{i32 1955, i32 0, !15, null}
> -!34 = !{i32 1956, i32 0, !15, null}
> -!35 = !{i32 1957, i32 0, !15, null}
> -!36 = !{i32 1958, i32 0, !15, null}
> -!37 = !{i32 1960, i32 0, !15, null}
> -!38 = !{i32 1962, i32 0, !15, null}
> -!39 = !{i32 1963, i32 0, !15, null}
> -!40 = !{i32 1964, i32 0, !15, null}
> -!41 = !{i32 1965, i32 0, !15, null}
> -!42 = !{i32 1969, i32 0, !15, null}
> +!19 = !MDLocation(line: 1929, scope: !15)
> +!20 = !MDLocation(line: 1931, scope: !15)
> +!21 = !MDLocation(line: 1932, scope: !15)
> +!22 = !MDLocation(line: 1933, scope: !15)
> +!23 = !MDLocation(line: 1934, scope: !15)
> +!24 = !MDLocation(line: 1938, scope: !15)
> +!25 = !MDLocation(line: 1939, scope: !15)
> +!26 = !MDLocation(line: 1940, scope: !15)
> +!27 = !MDLocation(line: 1941, scope: !15)
> +!28 = !MDLocation(line: 1946, scope: !15)
> +!29 = !MDLocation(line: 1948, scope: !15)
> +!30 = !MDLocation(line: 1950, scope: !15)
> +!31 = !MDLocation(line: 1951, scope: !15)
> +!32 = !MDLocation(line: 1953, scope: !15)
> +!33 = !MDLocation(line: 1955, scope: !15)
> +!34 = !MDLocation(line: 1956, scope: !15)
> +!35 = !MDLocation(line: 1957, scope: !15)
> +!36 = !MDLocation(line: 1958, scope: !15)
> +!37 = !MDLocation(line: 1960, scope: !15)
> +!38 = !MDLocation(line: 1962, scope: !15)
> +!39 = !MDLocation(line: 1963, scope: !15)
> +!40 = !MDLocation(line: 1964, scope: !15)
> +!41 = !MDLocation(line: 1965, scope: !15)
> +!42 = !MDLocation(line: 1969, scope: !15)
>  !43 = !{!0, !11, !12, !13, !14, !16, !17, !18}
>  !44 = !{!1}
>  !45 = !{!"libgcc2.c", !"/Users/yash/clean/LG.D/gcc/../../llvmgcc/gcc"}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll Wed Jan 14
> 16:27:36 2015
> @@ -52,9 +52,9 @@ declare void @llvm.dbg.value(metadata, i
>  !25 = !{!"0x101\00argv\0022\000", !19, !1, !22} ; [ DW_TAG_arg_variable ]
>  !26 = !{!"0x100\00e\0023\000", !27, !1, !14} ; [ DW_TAG_auto_variable ]
>  !27 = !{!"0xb\0022\000\000", !36, !19} ; [ DW_TAG_lexical_block ]
> -!28 = !{i32 18, i32 0, !29, null}
> +!28 = !MDLocation(line: 18, scope: !29)
>  !29 = !{!"0xb\0017\000\001", !36, !9} ; [ DW_TAG_lexical_block ]
> -!30 = !{i32 19, i32 0, !29, null}
> +!30 = !MDLocation(line: 19, scope: !29)
>  !31 = !{!0}
>  !32 = !{!5, !9, !19}
>  !33 = !{!4}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-05-28-Crash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-05-28-Crash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-05-28-Crash.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-05-28-Crash.ll Wed Jan 14 16:27:36
> 2015
> @@ -34,11 +34,11 @@ entry:
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", !18, !2} ; [
> DW_TAG_base_type ]
>  !7 = !{!"0x101\00x\006\000", !8, !2, !6} ; [ DW_TAG_arg_variable ]
>  !8 = !{!"0x2e\00bar\00bar\00bar\006\000\001\000\006\000\001\006", !18,
> !2, !4, null, i32 (i32)* @bar, null, null, !16} ; [ DW_TAG_subprogram ]
> -!9 = !{i32 3, i32 0, !10, null}
> +!9 = !MDLocation(line: 3, scope: !10)
>  !10 = !{!"0xb\002\000\000", !18, !1} ; [ DW_TAG_lexical_block ]
>  !11 = !{i32 1}
> -!12 = !{i32 3, i32 0, !10, !13}
> -!13 = !{i32 7, i32 0, !14, null}
> +!12 = !MDLocation(line: 3, scope: !10, inlinedAt: !13)
> +!13 = !MDLocation(line: 7, scope: !14)
>  !14 = !{!"0xb\006\000\000", !18, !8} ; [ DW_TAG_lexical_block ]
>  !15 = !{!0}
>  !16 = !{!7}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-06-01-DeadArg-DbgInfo.ll Wed Jan 14
> 16:27:36 2015
> @@ -52,7 +52,7 @@ declare void @llvm.dbg.value(metadata, i
>  !26 = !{!"0xb\0019\000\000", !31, !27} ; [ DW_TAG_lexical_block ]
>  !27 = !{!"0xb\0019\000\000", !31, !18} ; [ DW_TAG_lexical_block ]
>  !28 = !{!"0x100\00b\0021\000", !26, !3, !7} ; [ DW_TAG_auto_variable ]
> -!29 = !{i32 16, i32 0, !30, null}
> +!29 = !MDLocation(line: 16, scope: !30)
>  !30 = !{!"0xb\0015\000\000", !31, !8} ; [ DW_TAG_lexical_block ]
>  !31 = !{!"foo.cp", !"/tmp/"}
>  !32 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-07-06-DbgCrash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-07-06-DbgCrash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-07-06-DbgCrash.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-07-06-DbgCrash.ll Wed Jan 14 16:27:36
> 2015
> @@ -17,7 +17,7 @@
>  !104 = !{!"0x1\00\000\0085312\0064\000\000", !109, null, !46, !105, i32
> 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 85312, align 64,
> offset 0] [from ]
>  !105 = !{!106}
>  !106 = !{!"0x21\000\001333"}    ; [ DW_TAG_subrange_type ]
> -!107 = !{i32 73, i32 0, !103, null}
> +!107 = !MDLocation(line: 73, scope: !103)
>  !108 = !{i32 0}
>  !109 = !{!"pbmsrch.c",
> !"/Users/grawp/LLVM/test-suite/MultiSource/Benchmarks/MiBench/office-stringsearch"}
>
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-08-04-StackVariable.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-08-04-StackVariable.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-08-04-StackVariable.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-08-04-StackVariable.ll Wed Jan 14
> 16:27:36 2015
> @@ -102,28 +102,28 @@ declare void @llvm.dbg.value(metadata, i
>  !21 = !{!"0x15\00\000\000\000\000\000\000", !47, !2, null, !22, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !22 = !{!13}
>  !23 = !{!"0x101\00i\0016\000", !17, !2, !13} ; [ DW_TAG_arg_variable ]
> -!24 = !{i32 16, i32 0, !17, null}
> +!24 = !MDLocation(line: 16, scope: !17)
>  !25 = !{!"0x101\00location\0016\000", !17, !2, !26} ; [
> DW_TAG_arg_variable ]
>  !26 = !{!"0x10\00SVal\000\0064\0064\000\000", !47, !2, !1} ; [
> DW_TAG_reference_type ]
> -!27 = !{i32 17, i32 0, !28, null}
> +!27 = !MDLocation(line: 17, scope: !28)
>  !28 = !{!"0xb\0016\000\002", !47, !17} ; [ DW_TAG_lexical_block ]
> -!29 = !{i32 18, i32 0, !28, null}
> -!30 = !{i32 20, i32 0, !28, null}
> +!29 = !MDLocation(line: 18, scope: !28)
> +!30 = !MDLocation(line: 20, scope: !28)
>  !31 = !{!"0x101\00this\0011\000", !16, !2, !32} ; [ DW_TAG_arg_variable ]
>  !32 = !{!"0x26\00\000\0064\0064\000\0064", !47, !2, !33} ; [
> DW_TAG_const_type ]
>  !33 = !{!"0xf\00\000\0064\0064\000\000", !47, !2, !1} ; [
> DW_TAG_pointer_type ]
> -!34 = !{i32 11, i32 0, !16, null}
> -!35 = !{i32 11, i32 0, !36, null}
> +!34 = !MDLocation(line: 11, scope: !16)
> +!35 = !MDLocation(line: 11, scope: !36)
>  !36 = !{!"0xb\0011\000\001", !47, !37} ; [ DW_TAG_lexical_block ]
>  !37 = !{!"0xb\0011\000\000", !47, !16} ; [ DW_TAG_lexical_block ]
>  !38 = !{!"0x100\00v\0024\000", !39, !2, !1} ; [ DW_TAG_auto_variable ]
>  !39 = !{!"0xb\0023\000\004", !47, !40} ; [ DW_TAG_lexical_block ]
>  !40 = !{!"0xb\0023\000\003", !47, !20} ; [ DW_TAG_lexical_block ]
> -!41 = !{i32 24, i32 0, !39, null}
> -!42 = !{i32 25, i32 0, !39, null}
> -!43 = !{i32 26, i32 0, !39, null}
> +!41 = !MDLocation(line: 24, scope: !39)
> +!42 = !MDLocation(line: 25, scope: !39)
> +!43 = !MDLocation(line: 26, scope: !39)
>  !44 = !{!"0x100\00k\0026\000", !39, !2, !13} ; [ DW_TAG_auto_variable ]
> -!45 = !{i32 27, i32 0, !39, null}
> +!45 = !MDLocation(line: 27, scope: !39)
>  !47 = !{!"small.cc", !"/Users/manav/R8248330"}
>  !48 = !{i32 0}
>  !49 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-09-16-EmptyFilename.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-09-16-EmptyFilename.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-09-16-EmptyFilename.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-09-16-EmptyFilename.ll Wed Jan 14
> 16:27:36 2015
> @@ -23,9 +23,9 @@ entry:
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", !14, !1} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x2e\00bar\00bar\00bar\004\000\001\000\006\000\000\000", !15,
> !7, !3, null, i32 ()* @bar, null, null, null} ; [ DW_TAG_subprogram ]
>  !7 = !{!"0x29", !15} ; [ DW_TAG_file_type ]
> -!8 = !{i32 53, i32 13, !9, null}
> +!8 = !MDLocation(line: 53, column: 13, scope: !9)
>  !9 = !{!"0xb\0053\0011\000", !14, !0} ; [ DW_TAG_lexical_block ]
> -!10 = !{i32 4, i32 13, !11, null}
> +!10 = !MDLocation(line: 4, column: 13, scope: !11)
>  !11 = !{!"0xb\004\0013\002", !15, !12} ; [ DW_TAG_lexical_block ]
>  !12 = !{!"0xb\004\0011\001", !15, !6} ; [ DW_TAG_lexical_block ]
>  !13 = !{!0, !6}
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-11-02-DbgParameter.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-11-02-DbgParameter.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-11-02-DbgParameter.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-11-02-DbgParameter.ll Wed Jan 14
> 16:27:36 2015
> @@ -30,8 +30,8 @@ declare void @llvm.dbg.value(metadata, i
>  !9 = !{!10, !11}
>  !10 = !{!"0xd\00x\002\0032\0032\000\000", !17,  !1, !5} ; [ DW_TAG_member
> ]
>  !11 = !{!"0xd\00y\002\0032\0032\0032\000", !17, !1, !5} ; [ DW_TAG_member
> ]
> -!12 = !{i32 3, i32 47, !0, null}
> -!13 = !{i32 4, i32 2, !14, null}
> +!12 = !MDLocation(line: 3, column: 47, scope: !0)
> +!13 = !MDLocation(line: 4, column: 2, scope: !14)
>  !14 = !{!"0xb\003\0050\000", !17, !0} ; [ DW_TAG_lexical_block ]
>  !15 = !{!0}
>  !16 = !{!6}
>
> Modified: llvm/trunk/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll
> (original)
> +++ llvm/trunk/test/CodeGen/X86/2011-01-24-DbgValue-Before-Use.ll Wed Jan
> 14 16:27:36 2015
> @@ -96,16 +96,16 @@ declare i32 @puts(i8* nocapture) nounwin
>  !15 = !{!"0xb\0025\0012\002", !31, !6} ; [ DW_TAG_lexical_block ]
>  !16 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", null, !2} ; [
> DW_TAG_base_type ]
>  !17 = !{!"0x100\00z_s\0027\000", !15, !1, !9} ; [ DW_TAG_auto_variable ]
> -!18 = !{i32 5, i32 41, !0, null}
> -!19 = !{i32 5, i32 49, !0, null}
> -!20 = !{i32 7, i32 5, !13, null}
> -!21 = !{i32 8, i32 9, !22, null}
> +!18 = !MDLocation(line: 5, column: 41, scope: !0)
> +!19 = !MDLocation(line: 5, column: 49, scope: !0)
> +!20 = !MDLocation(line: 7, column: 5, scope: !13)
> +!21 = !MDLocation(line: 8, column: 9, scope: !22)
>  !22 = !{!"0xb\007\0014\001", !31, !13} ; [ DW_TAG_lexical_block ]
> -!23 = !{i32 9, i32 9, !22, null}
> -!24 = !{i32 26, i32 38, !15, null}
> -!25 = !{i32 27, i32 38, !15, null}
> -!26 = !{i32 28, i32 9, !15, null}
> -!27 = !{i32 30, i32 1, !15, null}
> +!23 = !MDLocation(line: 9, column: 9, scope: !22)
> +!24 = !MDLocation(line: 26, column: 38, scope: !15)
> +!25 = !MDLocation(line: 27, column: 38, scope: !15)
> +!26 = !MDLocation(line: 28, column: 9, scope: !15)
> +!27 = !MDLocation(line: 30, column: 1, scope: !15)
>  !28 = !{!0, !6}
>  !29 = !{!10, !11, !12}
>  !30 = !{!14, !17}
>
> Modified: llvm/trunk/test/CodeGen/X86/MachineSink-DbgValue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/MachineSink-DbgValue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/MachineSink-DbgValue.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/MachineSink-DbgValue.ll Wed Jan 14
> 16:27:36 2015
> @@ -40,12 +40,12 @@ declare void @llvm.dbg.value(metadata, i
>  !9 = !{!"0x24\00char\000\008\008\000\000\006", null, !0} ; [
> DW_TAG_base_type ]
>  !10 = !{!"0x100\00a\003\000", !11, !2, !9} ; [ DW_TAG_auto_variable ]
>  !11 = !{!"0xb\002\0025\000", !20, !1} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 2, i32 13, !1, null}
> -!13 = !{i32 2, i32 22, !1, null}
> -!14 = !{i32 3, i32 14, !11, null}
> -!15 = !{i32 4, i32 3, !11, null}
> -!16 = !{i32 5, i32 5, !11, null}
> -!17 = !{i32 7, i32 1, !11, null}
> +!12 = !MDLocation(line: 2, column: 13, scope: !1)
> +!13 = !MDLocation(line: 2, column: 22, scope: !1)
> +!14 = !MDLocation(line: 3, column: 14, scope: !11)
> +!15 = !MDLocation(line: 4, column: 3, scope: !11)
> +!16 = !MDLocation(line: 5, column: 5, scope: !11)
> +!17 = !MDLocation(line: 7, column: 1, scope: !11)
>  !18 = !{!1}
>  !19 = !{!6, !7, !10}
>  !20 = !{!"a.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll
> (original)
> +++ llvm/trunk/test/CodeGen/X86/dbg-changes-codegen-branch-folding.ll Wed
> Jan 14 16:27:36 2015
> @@ -160,45 +160,45 @@ attributes #2 = { nounwind readnone }
>  !44 = !{i32 2, !"Dwarf Version", i32 4}
>  !45 = !{i32 2, !"Debug Info Version", i32 2}
>  !46 = !{!"clang version 3.5.0 "}
> -!47 = !{i32 11, i32 0, !24, null}
> +!47 = !MDLocation(line: 11, scope: !24)
>  !48 = !{i8* null}
> -!49 = !{i32 12, i32 0, !24, null}
> -!50 = !{i32 14, i32 0, !51, null}
> +!49 = !MDLocation(line: 12, scope: !24)
> +!50 = !MDLocation(line: 14, scope: !51)
>  !51 = !{!"0xb\0014\000\000", !1, !24} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/dbg-changes-codegen-branch-folding.cpp]
> -!52 = !{i32 15, i32 0, !53, null}
> +!52 = !MDLocation(line: 15, scope: !53)
>  !53 = !{!"0xb\0014\000\000", !1, !51} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/dbg-changes-codegen-branch-folding.cpp]
> -!54 = !{i32 16, i32 0, !53, null}
> -!55 = !{i32 17, i32 0, !24, null}
> +!54 = !MDLocation(line: 16, scope: !53)
> +!55 = !MDLocation(line: 17, scope: !24)
>  !56 = !{!"0x101\00this\0016777216\001088", !40, null, !38, !55} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!57 = !{i32 0, i32 0, !40, !55}
> +!57 = !MDLocation(line: 0, scope: !40, inlinedAt: !55)
>  !58 = !{i8* getelementptr inbounds ([1 x i8]* @.str, i64 0, i64 0)}
>  !59 = !{!"0x101\00value\0033554437\000", !40, !25, !15, !55} ; [
> DW_TAG_arg_variable ] [value] [line 5]
> -!60 = !{i32 5, i32 0, !40, !55}
> -!61 = !{i32 5, i32 0, !62, !55}
> +!60 = !MDLocation(line: 5, scope: !40, inlinedAt: !55)
> +!61 = !MDLocation(line: 5, scope: !62, inlinedAt: !55)
>  !62 = !{!"0xb\005\000\000", !1, !40} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/dbg-changes-codegen-branch-folding.cpp]
> -!63 = !{i32 18, i32 0, !24, null}
> +!63 = !MDLocation(line: 18, scope: !24)
>  !64 = !{!"0x101\00this\0016777216\001088", !40, null, !38, !63} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!65 = !{i32 0, i32 0, !40, !63}
> +!65 = !MDLocation(line: 0, scope: !40, inlinedAt: !63)
>  !66 = !{!"0x101\00value\0033554437\000", !40, !25, !15, !63} ; [
> DW_TAG_arg_variable ] [value] [line 5]
> -!67 = !{i32 5, i32 0, !40, !63}
> -!68 = !{i32 5, i32 0, !62, !63}
> -!69 = !{i32 20, i32 0, !70, null}
> +!67 = !MDLocation(line: 5, scope: !40, inlinedAt: !63)
> +!68 = !MDLocation(line: 5, scope: !62, inlinedAt: !63)
> +!69 = !MDLocation(line: 20, scope: !70)
>  !70 = !{!"0xb\0020\000\000", !1, !24} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/dbg-changes-codegen-branch-folding.cpp]
>  !71 = !{!"0x101\00this\0016777216\001088", !35, null, !38, !72} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!72 = !{i32 21, i32 0, !70, null}
> -!73 = !{i32 0, i32 0, !35, !72}
> +!72 = !MDLocation(line: 21, scope: !70)
> +!73 = !MDLocation(line: 0, scope: !35, inlinedAt: !72)
>  !74 = !{i8* getelementptr inbounds ([2 x i8]* @.str1, i64 0, i64 0)}
>  !75 = !{!"0x101\00value\0033554438\000", !35, !25, !15, !72} ; [
> DW_TAG_arg_variable ] [value] [line 6]
> -!76 = !{i32 6, i32 0, !35, !72}
> +!76 = !MDLocation(line: 6, scope: !35, inlinedAt: !72)
>  !77 = !{!"0x101\00this\0016777216\001088", !35, null, !38, !78} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!78 = !{i32 23, i32 0, !70, null}
> -!79 = !{i32 0, i32 0, !35, !78}
> +!78 = !MDLocation(line: 23, scope: !70)
> +!79 = !MDLocation(line: 0, scope: !35, inlinedAt: !78)
>  !80 = !{i8* getelementptr inbounds ([2 x i8]* @.str2, i64 0, i64 0)}
>  !81 = !{!"0x101\00value\0033554438\000", !35, !25, !15, !78} ; [
> DW_TAG_arg_variable ] [value] [line 6]
> -!82 = !{i32 6, i32 0, !35, !78}
> +!82 = !MDLocation(line: 6, scope: !35, inlinedAt: !78)
>  !83 = !{!"0x101\00this\0016777216\001088", !35, null, !38, !84} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!84 = !{i32 24, i32 0, !24, null}
> -!85 = !{i32 0, i32 0, !35, !84}
> +!84 = !MDLocation(line: 24, scope: !24)
> +!85 = !MDLocation(line: 0, scope: !35, inlinedAt: !84)
>  !86 = !{!"0x101\00value\0033554438\000", !35, !25, !15, !84} ; [
> DW_TAG_arg_variable ] [value] [line 6]
> -!87 = !{i32 6, i32 0, !35, !84}
> -!88 = !{i32 25, i32 0, !24, null}
> +!87 = !MDLocation(line: 6, scope: !35, inlinedAt: !84)
> +!88 = !MDLocation(line: 25, scope: !24)
>
> Modified: llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
> (original)
> +++ llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll Wed
> Jan 14 16:27:36 2015
> @@ -86,5 +86,5 @@ declare void @llvm.dbg.value(metadata, i
>  !21 = !{!"0x34\00argc\00argc\00\001\000\001", null, !14, !11, i8* @argc,
> null} ; [ DW_TAG_variable ] [argc] [line 1] [def]
>  !22 = !{i32 2, !"Dwarf Version", i32 4}
>  !23 = !{i32 2, !"Debug Info Version", i32 2}
> -!25 = !{i32 8, i32 3, !13, null}
> +!25 = !MDLocation(line: 8, column: 3, scope: !13)
>  !29 = !{!"0x102"}               ; [ DW_TAG_expression ]
>
> Modified: llvm/trunk/test/CodeGen/X86/stack-protector-dbginfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/stack-protector-dbginfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/stack-protector-dbginfo.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/stack-protector-dbginfo.ll Wed Jan 14
> 16:27:36 2015
> @@ -63,9 +63,9 @@ attributes #0 = { sspreq }
>  !35 = !{!36, !37}
>  !36 = !{!"0x101\00p1\0016777228\000", !24, !10, !29} ; [
> DW_TAG_arg_variable ] [p1] [line 12]
>  !37 = !{!"0x101\00p2\0033554444\000", !24, !10, !32} ; [
> DW_TAG_arg_variable ] [p2] [line 12]
> -!38 = !{i32 33, i32 0, !9, null}
> -!39 = !{i32 12, i32 0, !24, !38}
> -!40 = !{i32 9, i32 0, !41, !59}
> +!38 = !MDLocation(line: 33, scope: !9)
> +!39 = !MDLocation(line: 12, scope: !24, inlinedAt: !38)
> +!40 = !MDLocation(line: 9, scope: !41, inlinedAt: !59)
>  !41 = !{!"0x2e\00min<unsigned long long, __1::A>\00min<unsigned long
> long,
> __1::A>\00_ZN3__13minIyNS_1AEEERKT_S4_RS2_T0_\007\000\001\000\006\00256\001\008",
> !1, !25, !42, null, null, !53, null, !55} ; [ DW_TAG_subprogram ] [line 7]
> [def] [scope 8] [min<unsigned long long, __1::A>]
>  !42 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !43, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !43 = !{!29, !29, !32, !44}
> @@ -84,7 +84,7 @@ attributes #0 = { sspreq }
>  !56 = !{!"0x101\00p1\0016777223\000", !41, !10, !29} ; [
> DW_TAG_arg_variable ] [p1] [line 7]
>  !57 = !{!"0x101\00p2\0033554439\000", !41, !10, !32} ; [
> DW_TAG_arg_variable ] [p2] [line 7]
>  !58 = !{!"0x101\00p3\0050331656\000", !41, !10, !44} ; [
> DW_TAG_arg_variable ] [p3] [line 8]
> -!59 = !{i32 13, i32 0, !24, !38}
> +!59 = !MDLocation(line: 13, scope: !24, inlinedAt: !38)
>  !63 = !{i32 undef}
>  !64 = !{!"0x101\00p1\0033554433\000", !65, !10, !50, !40} ; [
> DW_TAG_arg_variable ] [p1] [line 1]
>  !65 =
> !{!"0x2e\00operator()\00operator()\00_ZN3__11AclERKiS2_\001\000\001\000\006\00256\001\002",
> !1, !25, !47, null, null, null, !46, !66} ; [ DW_TAG_subprogram ] [line 1]
> [def] [scope 2] [operator()]
> @@ -93,5 +93,5 @@ attributes #0 = { sspreq }
>  !68 = !{!"0xf\00\000\0064\0064\000\000", null, null, !44} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from A]
>  !69 = !{!"0x101\00p1\0033554433\000", !65, !10, !50} ; [
> DW_TAG_arg_variable ] [p1] [line 1]
>  !70 = !{!"0x101\00\0050331650\000", !65, !10, !50} ; [
> DW_TAG_arg_variable ] [line 2]
> -!71 = !{i32 1, i32 0, !65, !40}
> +!71 = !MDLocation(line: 1, scope: !65, inlinedAt: !40)
>  !72 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/CodeGen/X86/unknown-location.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/unknown-location.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/unknown-location.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/unknown-location.ll Wed Jan 14 16:27:36
> 2015
> @@ -29,7 +29,7 @@ entry:
>  !5 = !{!6}
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", !10, !2} ; [
> DW_TAG_base_type ]
>  !7 = !{!"0xb\001\0030\000", !2, !1} ; [ DW_TAG_lexical_block ]
> -!8 = !{i32 4, i32 3, !7, null}
> +!8 = !MDLocation(line: 4, column: 3, scope: !7)
>  !9 = !{!1}
>  !10 = !{!"test.c", !"/dir"}
>  !11 = !{i32 0}
>
> Modified: llvm/trunk/test/CodeGen/XCore/dwarf_debug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/XCore/dwarf_debug.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/XCore/dwarf_debug.ll (original)
> +++ llvm/trunk/test/CodeGen/XCore/dwarf_debug.ll Wed Jan 14 16:27:36 2015
> @@ -35,5 +35,5 @@ declare void @llvm.dbg.declare(metadata,
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"0x101\00a\0016777218\000", !4, !5, !8} ; [ DW_TAG_arg_variable ]
> -!12 = !{i32 2, i32 0, !4, null}
> +!12 = !MDLocation(line: 2, scope: !4)
>
>
> Modified: llvm/trunk/test/DebugInfo/2009-11-05-DeadGlobalVariable.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2009-11-05-DeadGlobalVariable.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2009-11-05-DeadGlobalVariable.ll (original)
> +++ llvm/trunk/test/DebugInfo/2009-11-05-DeadGlobalVariable.ll Wed Jan 14
> 16:27:36 2015
> @@ -20,7 +20,7 @@ entry:
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
>  !12 = !{!14}
>  !14 = !{!"0x34\00bar\00bar\00\002\001\001", !5, !6, !9, null, null} ; [
> DW_TAG_variable ]
> -!15 = !{i32 3, i32 3, !16, null}
> +!15 = !MDLocation(line: 3, column: 3, scope: !16)
>  !16 = !{!"0xb\001\0011\000", !17, !5} ; [ DW_TAG_lexical_block ]
>  !17 = !{!"fb.c", !"/private/tmp"}
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/2009-11-10-CurrentFn.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2009-11-10-CurrentFn.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2009-11-10-CurrentFn.ll (original)
> +++ llvm/trunk/test/DebugInfo/2009-11-10-CurrentFn.ll Wed Jan 14 16:27:36
> 2015
> @@ -23,9 +23,9 @@ declare void @llvm.dbg.value(metadata, i
>  !9 = !{!11}
>  !11 = !{!"0x101\00i\0016777219\000", !17, !5, !12} ; [
> DW_TAG_arg_variable ]
>  !12 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
> -!13 = !{i32 3, i32 14, !5, null}
> -!14 = !{i32 4, i32 3, !15, null}
> +!13 = !MDLocation(line: 3, column: 14, scope: !5)
> +!14 = !MDLocation(line: 4, column: 3, scope: !15)
>  !15 = !{!"0xb\003\0017\000", !17, !5} ; [ DW_TAG_lexical_block ]
> -!16 = !{i32 5, i32 1, !15, null}
> +!16 = !MDLocation(line: 5, column: 1, scope: !15)
>  !17 = !{!"cf.c", !"/private/tmp"}
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/2010-01-05-DbgScope.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-01-05-DbgScope.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-01-05-DbgScope.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-01-05-DbgScope.ll Wed Jan 14 16:27:36
> 2015
> @@ -11,14 +11,14 @@ entry:
>  !llvm.dbg.cu = !{!3}
>  !llvm.module.flags = !{!14}
>
> -!0 = !{i32 571, i32 3, !1, null}
> +!0 = !MDLocation(line: 571, column: 3, scope: !1)
>  !1 = !{!"0xb\001\001\000", !11, !2}; [DW_TAG_lexical_block ]
>  !2 = !{!"0x2e\00foo\00foo\00foo\00561\000\001\000\006\000\000\000", i32
> 0, !3, !4, null, null, null, null, null}; [DW_TAG_subprogram ]
>  !3 = !{!"0x11\0012\00clang 1.1\001\00\000\00\000", !11, !12, !12, !13,
> null, null}; [DW_TAG_compile_unit ]
>  !4 = !{!"0x15\00\000\000\000\000\000\000", null, !3, null, !5, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !5 = !{!6}
>  !6 = !{!"0x24\00char\000\008\008\000\000\006", null, !3} ; [
> DW_TAG_base_type ]
> -!10 = !{i32 588, i32 1, !2, null}
> +!10 = !MDLocation(line: 588, column: 1, scope: !2)
>  !11 = !{!"hashtab.c",
> !"/usr/src/gnu/usr.bin/cc/cc_tools/../../../../contrib/gcclibs/libiberty"}
>  !12 = !{i32 0}
>  !13 = !{!2}
>
> Modified: llvm/trunk/test/DebugInfo/2010-03-19-DbgDeclare.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-03-19-DbgDeclare.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-03-19-DbgDeclare.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-03-19-DbgDeclare.ll Wed Jan 14 16:27:36
> 2015
> @@ -11,7 +11,7 @@ entry:
>  !llvm.module.flags = !{!5}
>  !2 = !{!"0x11\0032769\00clang version 3.3 \000\00\000\00\001", !4, !3,
> !3, !3, !3,  !3} ; [ DW_TAG_compile_unit ]
> [/usr/local/google/home/blaikie/dev/scratch/scratch.cpp] [lang 0x8001]
>  !3 = !{}
> -!0 = !{i32 662302, i32 26, !1, null}
> +!0 = !MDLocation(line: 662302, column: 26, scope: !1)
>  !1 = !{i32 4, !"foo"}
>  !4 = !{!"scratch.cpp", !"/usr/local/google/home/blaikie/dev/scratch"}
>
>
> Modified: llvm/trunk/test/DebugInfo/2010-03-24-MemberFn.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-03-24-MemberFn.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-03-24-MemberFn.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-03-24-MemberFn.ll Wed Jan 14 16:27:36
> 2015
> @@ -55,13 +55,13 @@ declare void @llvm.dbg.declare(metadata,
>  !13 = !{!"0x15\00\000\000\000\000\000\000", !25, null, null, !14, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !14 = !{!8, !15}
>  !15 = !{!"0xf\00\000\0064\0064\000\0064", !25, !4, !9} ; [
> DW_TAG_pointer_type ]
> -!16 = !{i32 3, i32 0, !1, null}
> -!17 = !{i32 3, i32 0, !3, null}
> +!16 = !MDLocation(line: 3, scope: !1)
> +!17 = !MDLocation(line: 3, scope: !3)
>  !18 = !{!"0x101\00this\003\000", !12, !10, !19} ; [ DW_TAG_arg_variable ]
>  !19 = !{!"0x26\00\000\0064\0064\000\0064", !25, !4, !20} ; [
> DW_TAG_const_type ]
>  !20 = !{!"0xf\00\000\0064\0064\000\000", !25, !4, !9} ; [
> DW_TAG_pointer_type ]
> -!21 = !{i32 3, i32 0, !12, null}
> -!22 = !{i32 3, i32 0, !23, null}
> +!21 = !MDLocation(line: 3, scope: !12)
> +!22 = !MDLocation(line: 3, scope: !23)
>  !23 = !{!"0xb\003\000\000", !26, !12} ; [ DW_TAG_lexical_block ]
>  !24 = !{!3, !12}
>  !25 = !{!"one.cc", !"/tmp/"}
>
> Modified: llvm/trunk/test/DebugInfo/2010-04-06-NestedFnDbgInfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-04-06-NestedFnDbgInfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-04-06-NestedFnDbgInfo.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-04-06-NestedFnDbgInfo.ll Wed Jan 14
> 16:27:36 2015
> @@ -84,11 +84,11 @@ entry:
>  !11 = !{!"0x15\00\000\000\000\000\000\000", !38, !3, null, !12, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !12 = !{!7, !13}
>  !13 = !{!"0xf\00\000\0064\0064\000\0064", !38, !3, !8} ; [
> DW_TAG_pointer_type ]
> -!14 = !{i32 16, i32 5, !1, null}
> -!15 = !{i32 17, i32 3, !1, null}
> -!16 = !{i32 18, i32 1, !2, null}
> +!14 = !MDLocation(line: 16, column: 5, scope: !1)
> +!15 = !MDLocation(line: 17, column: 3, scope: !1)
> +!16 = !MDLocation(line: 18, column: 1, scope: !2)
>  !17 = !{!"0x101\00this\004\000", !10, !3, !13} ; [ DW_TAG_arg_variable ]
> -!18 = !{i32 4, i32 7, !10, null}
> +!18 = !MDLocation(line: 4, column: 7, scope: !10)
>  !19 = !{!"0x100\00a\009\000", !20, !3, !21} ; [ DW_TAG_auto_variable ]
>  !20 = !{!"0xb\004\0012\000", !38, !10} ; [ DW_TAG_lexical_block ]
>  !21 = !{!"0x2\00A\005\008\008\000\000\000", !38, !10, null, !22, null,
> null, null} ; [ DW_TAG_class_type ] [A] [line 5, size 8, align 8, offset 0]
> [def] [from ]
> @@ -97,15 +97,15 @@ entry:
>  !24 = !{!"0x15\00\000\000\000\000\000\000", !38, !3, null, !25, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !25 = !{!7, !26}
>  !26 = !{!"0xf\00\000\0064\0064\000\0064", !38, !3, !21} ; [
> DW_TAG_pointer_type ]
> -!27 = !{i32 9, i32 7, !20, null}
> +!27 = !MDLocation(line: 9, column: 7, scope: !20)
>  !28 = !{!"0x100\00i\0010\000", !20, !3, !7} ; [ DW_TAG_auto_variable ]
> -!29 = !{i32 10, i32 9, !20, null}
> -!30 = !{i32 10, i32 5, !20, null}
> -!31 = !{i32 11, i32 5, !20, null}
> -!32 = !{i32 12, i32 3, !10, null}
> +!29 = !MDLocation(line: 10, column: 9, scope: !20)
> +!30 = !MDLocation(line: 10, column: 5, scope: !20)
> +!31 = !MDLocation(line: 11, column: 5, scope: !20)
> +!32 = !MDLocation(line: 12, column: 3, scope: !10)
>  !33 = !{!"0x101\00this\007\000", !23, !3, !26} ; [ DW_TAG_arg_variable ]
> -!34 = !{i32 7, i32 11, !23, null}
> -!35 = !{i32 7, i32 19, !36, null}
> +!34 = !MDLocation(line: 7, column: 11, scope: !23)
> +!35 = !MDLocation(line: 7, column: 19, scope: !36)
>  !36 = !{!"0xb\007\0017\000", !38, !23} ; [ DW_TAG_lexical_block ]
>  !38 = !{!"one.cc", !"/tmp" }
>  !39 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/2010-04-19-FramePtr.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-04-19-FramePtr.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-04-19-FramePtr.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-04-19-FramePtr.ll Wed Jan 14 16:27:36
> 2015
> @@ -23,14 +23,14 @@ return:
>  !llvm.module.flags = !{!12}
>  !9 = !{!1}
>
> -!0 = !{i32 2, i32 0, !1, null}
> +!0 = !MDLocation(line: 2, scope: !1)
>  !1 = !{!"0x2e\00foo\00foo\00foo\002\000\001\000\006\000\000\002", !10,
> null, !4, null, i32 ()* @foo, null, null, null} ; [ DW_TAG_subprogram ]
>  !2 = !{!"0x29", !10} ; [ DW_TAG_file_type ]
>  !3 = !{!"0x11\001\004.2.1 (Based on Apple Inc. build 5658) (LLVM
> build)\000\00\000\00\000", !10, !11, !11, !9, null,  null} ; [
> DW_TAG_compile_unit ]
>  !4 = !{!"0x15\00\000\000\000\000\000\000", !10, !2, null, !5, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !5 = !{!6}
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", !10, !2} ; [
> DW_TAG_base_type ]
> -!7 = !{i32 2, i32 0, !8, null}
> +!7 = !MDLocation(line: 2, scope: !8)
>  !8 = !{!"0xb\002\000\000", !10, !1} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"a.c", !"/tmp"}
>  !11 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/2010-05-03-DisableFramePtr.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-05-03-DisableFramePtr.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-05-03-DisableFramePtr.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-05-03-DisableFramePtr.ll Wed Jan 14
> 16:27:36 2015
> @@ -31,8 +31,8 @@ declare void @llvm.dbg.declare(metadata,
>  !10 = !{!"0xf\00\000\0064\0064\000\000", !16, !2, !11} ; [
> DW_TAG_pointer_type ]
>  !11 = !{!"0x16\00AppleEvent\004\000\000\000\000", !16, !2, !12} ; [
> DW_TAG_typedef ]
>  !12 = !{!"0x13\00AEDesc\001\000\000\000\004\000", !16, !2, null, null,
> null, null, null} ; [ DW_TAG_structure_type ] [AEDesc] [line 1, size 0,
> align 0, offset 0] [decl] [from ]
> -!13 = !{i32 7, i32 0, !1, null}
> -!14 = !{i32 8, i32 0, !15, null}
> +!13 = !MDLocation(line: 7, scope: !1)
> +!14 = !MDLocation(line: 8, scope: !15)
>  !15 = !{!"0xb\007\000\000", !16, !1} ; [ DW_TAG_lexical_block ]
>  !16 = !{!"t.c", !"/Users/echeng/LLVM/radars/r7937664/"}
>  !17 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/2010-05-03-OriginDIE.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-05-03-OriginDIE.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-05-03-OriginDIE.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-05-03-OriginDIE.ll Wed Jan 14 16:27:36
> 2015
> @@ -50,21 +50,21 @@ declare void @uuid_LtoB(i8*, i8*)
>
>  !llvm.dbg.cu = !{!4}
>  !llvm.module.flags = !{!41}
> -!0 = !{i32 808, i32 0, !1, null}
> +!0 = !MDLocation(line: 808, scope: !1)
>  !1 = !{!"0xb\00807\000\000", !39, !2} ; [ DW_TAG_lexical_block ]
>  !2 =
> !{!"0x2e\00gpt2gpm\00gpt2gpm\00gpt2gpm\00807\001\001\000\006\000\000\000",
> !39, null, !5, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !3 = !{!"0x29", !39} ; [ DW_TAG_file_type ]
>  !4 = !{!"0x11\001\00llvm-gcc\001\00\000\00\000", !39, !18, !18, !40,
> null, null} ; [ DW_TAG_compile_unit ]
>  !5 = !{!"0x15\00\000\000\000\000\000\000", !39, !3, null, !6, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !6 = !{null}
> -!7 = !{i32 810, i32 0, !1, null}
> +!7 = !MDLocation(line: 810, scope: !1)
>  !8 = !{!"0x101\00data\00201\000", !9, !10, !11} ; [ DW_TAG_arg_variable ]
>  !9 =
> !{!"0x2e\00_OSSwapInt64\00_OSSwapInt64\00_OSSwapInt64\00202\001\001\000\006\000\000\000",
> !10, null, !5, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !10 = !{!"0x29", !"OSByteOrder.h", !"/usr/include/libkern/ppc", !4} ; [
> DW_TAG_file_type ]
>  !11 = !{!"0x16\00uint64_t\0059\000\000\000\000", !36, !3, !13} ; [
> DW_TAG_typedef ]
>  !12 = !{!"0x29", !"stdint.h", !"/usr/4.2.1/include", !4} ; [
> DW_TAG_file_type ]
>  !13 = !{!"0x24\00long long unsigned int\000\0064\0064\000\000\007", !39,
> !3} ; [ DW_TAG_base_type ]
> -!14 = !{i32 202, i32 0, !9, !7}
> +!14 = !MDLocation(line: 202, scope: !9, inlinedAt: !7)
>  !15 = !{!"0x101\00base\0092\000", !16, !10, !17} ; [ DW_TAG_arg_variable ]
>  !16 =
> !{!"0x2e\00OSReadSwapInt64\00OSReadSwapInt64\00OSReadSwapInt64\0095\001\001\000\006\000\000\000",
> !38, null, !5, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !17 = !{!"0xf\00\000\0032\0032\000\000", !39, !3, null} ; [
> DW_TAG_pointer_type ]
>
> Modified: llvm/trunk/test/DebugInfo/2010-05-10-MultipleCU.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-05-10-MultipleCU.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-05-10-MultipleCU.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-05-10-MultipleCU.ll Wed Jan 14 16:27:36
> 2015
> @@ -22,7 +22,7 @@ return:
>  !16 = !{!2}
>  !17 = !{!10}
>
> -!0 = !{i32 3, i32 0, !1, null}
> +!0 = !MDLocation(line: 3, scope: !1)
>  !1 = !{!"0xb\002\000\000", !18, !2} ; [ DW_TAG_lexical_block ]
>  !2 = !{!"0x2e\00foo\00foo\00foo\002\000\001\000\006\000\000\000", !18,
> !3, !5, null, i32 ()* @foo, null, null, null} ; [ DW_TAG_subprogram ]
>  !3 = !{!"0x29", !18} ; [ DW_TAG_file_type ]
> @@ -30,7 +30,7 @@ return:
>  !5 = !{!"0x15\00\000\000\000\000\000\000", !18, !3, null, !6, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !6 = !{!7}
>  !7 = !{!"0x24\00int\000\0032\0032\000\000\005", !18, !3} ; [
> DW_TAG_base_type ]
> -!8 = !{i32 3, i32 0, !9, null}
> +!8 = !MDLocation(line: 3, scope: !9)
>  !9 = !{!"0xb\002\000\000", !20, !10} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"0x2e\00bar\00bar\00bar\002\000\001\000\006\000\000\000", !20,
> !11, !13, null, i32 ()* @bar, null, null, null} ; [ DW_TAG_subprogram ]
>  !11 = !{!"0x29", !20} ; [ DW_TAG_file_type ]
>
> Modified: llvm/trunk/test/DebugInfo/2010-06-29-InlinedFnLocalVar.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-06-29-InlinedFnLocalVar.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-06-29-InlinedFnLocalVar.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-06-29-InlinedFnLocalVar.ll Wed Jan 14
> 16:27:36 2015
> @@ -41,13 +41,13 @@ entry:
>  !14 = !{!"0xd\00a\0010\0032\0032\000\000", !27, !12, !5} ; [
> DW_TAG_member ]
>  !15 = !{!"0xd\00b\0010\0032\0032\0032\000", !27, !12, !5} ; [
> DW_TAG_member ]
>  !16 = !{!"0x34\00i\00i\00\005\000\001", !1, !1, !5, i32* @i, null} ; [
> DW_TAG_variable ]
> -!17 = !{i32 15, i32 0, !18, null}
> +!17 = !MDLocation(line: 15, scope: !18)
>  !18 = !{!"0xb\0014\000\001", !1, !6} ; [ DW_TAG_lexical_block ]
> -!19 = !{i32 9, i32 0, !0, !17}
> +!19 = !MDLocation(line: 9, scope: !0, inlinedAt: !17)
>  !20 = !{}
> -!21 = !{i32 9, i32 0, !11, !17}
> -!22 = !{i32 11, i32 0, !11, !17}
> -!23 = !{i32 16, i32 0, !18, null}
> +!21 = !MDLocation(line: 9, scope: !11, inlinedAt: !17)
> +!22 = !MDLocation(line: 11, scope: !11, inlinedAt: !17)
> +!23 = !MDLocation(line: 16, scope: !18)
>  !24 = !{!9, !10}
>  !25 = !{!0, !6}
>  !26 = !{!16}
>
> Modified: llvm/trunk/test/DebugInfo/2010-07-19-Crash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-07-19-Crash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-07-19-Crash.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-07-19-Crash.ll Wed Jan 14 16:27:36 2015
> @@ -21,7 +21,7 @@ entry:
>  !6 = !{!"0x2e\00foo\00foo\00foo\007\001\001\000\006\000\001\000", !12,
> !1, !3, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !7 = !{!"0x100\00one\008\000", !8, !1, !5} ; [ DW_TAG_auto_variable ]
>  !8 = !{!"0xb\007\0018\000", !12, !6} ; [ DW_TAG_lexical_block ]
> -!9 = !{i32 4, i32 3, !10, null}
> +!9 = !MDLocation(line: 4, column: 3, scope: !10)
>  !10 = !{!"0xb\003\0011\000", !12, !0} ; [ DW_TAG_lexical_block ]
>  !11 = !{!"0x2e\00foo\00foo\00foo\007\001\000\000\006\000\001\000", !12,
> !1, !3, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !12 = !{!"one.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/2010-10-01-crash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2010-10-01-crash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/2010-10-01-crash.ll (original)
> +++ llvm/trunk/test/DebugInfo/2010-10-01-crash.ll Wed Jan 14 16:27:36 2015
> @@ -20,7 +20,7 @@ declare void @llvm.memcpy.p0i8.p0i8.i32(
>  !2 = !{!"0x11\0016\00clang version 2.9 (trunk 115292)\001\00\001\00\000",
> !25, !26, !26, null, null, null} ; [ DW_TAG_compile_unit ]
>  !5 = !{!"0x16\00CGRect\0049\000\000\000\000", !25, null, null} ; [
> DW_TAG_typedef ]
>  !23 = !{!"0x101\00rect\0053\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!24 = !{i32 53, i32 33, !0, null}
> +!24 = !MDLocation(line: 53, column: 33, scope: !0)
>  !25 = !{!"GSFusedSilica.m", !"/Volumes/Data/Users/sabre/Desktop"}
>  !26 = !{i32 0}
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/cfi-eof-prologue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/cfi-eof-prologue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/cfi-eof-prologue.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/cfi-eof-prologue.ll Wed Jan 14
> 16:27:36 2015
> @@ -100,13 +100,13 @@ attributes #3 = { nounwind }
>  !36 = !{i32 2, !"Debug Info Version", i32 2}
>  !37 = !{!"clang version 3.6.0 (trunk 224279) (llvm/trunk 224283)"}
>  !38 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> -!39 = !{i32 0, i32 0, !28, null}
> -!40 = !{i32 9, i32 0, !28, null}
> +!39 = !MDLocation(line: 0, scope: !28)
> +!40 = !MDLocation(line: 9, scope: !28)
>  !41 = !{!42, !42, i64 0}
>  !42 = !{!"vtable pointer", !43, i64 0}
>  !43 = !{!"Simple C/C++ TBAA"}
> -!44 = !{i32 0, i32 0, !32, null}
> +!44 = !MDLocation(line: 0, scope: !32)
>  !45 = !{!"0x101\00this\0016777216\001088", !28, null, !31, !46} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!46 = !{i32 9, i32 0, !32, null}
> -!47 = !{i32 0, i32 0, !28, !46}
> -!48 = !{i32 9, i32 0, !28, !46}
> +!46 = !MDLocation(line: 9, scope: !32)
> +!47 = !MDLocation(line: 0, scope: !28, inlinedAt: !46)
> +!48 = !MDLocation(line: 9, scope: !28, inlinedAt: !46)
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/coalescing.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/coalescing.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/coalescing.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/coalescing.ll Wed Jan 14 16:27:36
> 2015
> @@ -59,7 +59,7 @@ attributes #3 = { nounwind optsize }
>  !12 = !{i32 2, !"Dwarf Version", i32 2}
>  !13 = !{i32 2, !"Debug Info Version", i32 2}
>  !14 = !{!"clang version 3.6.0 (trunk 223149) (llvm/trunk 223115)"}
> -!15 = !{i32 5, i32 3, !4, null}
> +!15 = !MDLocation(line: 5, column: 3, scope: !4)
>  !16 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!17 = !{i32 4, i32 12, !4, null}
> -!18 = !{i32 8, i32 1, !4, null}
> +!17 = !MDLocation(line: 4, column: 12, scope: !4)
> +!18 = !MDLocation(line: 8, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/dwarfdump.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/dwarfdump.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/dwarfdump.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/dwarfdump.ll Wed Jan 14 16:27:36 2015
> @@ -35,6 +35,6 @@ attributes #0 = { nounwind }
>  !5 = !{!"0x15\00\000\000\000\000\000\000", null, null, null, !6, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !6 = !{!7}
>  !7 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
> -!8 = !{i32 2, i32 0, !3, null}
> +!8 = !MDLocation(line: 2, scope: !3)
>  !9 = !{!"tmp.c", !"/home/tim/llvm/build"}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/struct_by_value.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/struct_by_value.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/struct_by_value.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/struct_by_value.ll Wed Jan 14
> 16:27:36 2015
> @@ -65,6 +65,6 @@ attributes #1 = { nounwind readnone }
>  !15 = !{!"0xd\00e\007\0032\0032\00128\000", !1, !9, !8} ; [ DW_TAG_member
> ] [e] [line 7, size 32, align 32, offset 128] [from int]
>  !16 = !{i32 2, !"Dwarf Version", i32 2}
>  !17 = !{!"0x101\00f\0016777229\008192", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [f] [line 13]
> -!18 = !{i32 13, i32 0, !4, null}
> -!19 = !{i32 16, i32 0, !4, null}
> +!18 = !MDLocation(line: 13, scope: !4)
> +!19 = !MDLocation(line: 16, scope: !4)
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/ARM/PR16736.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/PR16736.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/PR16736.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/PR16736.ll Wed Jan 14 16:27:36 2015
> @@ -59,7 +59,7 @@ attributes #3 = { nounwind }
>  !15 = !{!"0x101\00\0067108867\000", !4, !6, !9} ; [ DW_TAG_arg_variable ]
> [line 3]
>  !16 = !{!"0x101\00x\0083886083\000", !4, !6, !10} ; [ DW_TAG_arg_variable
> ] [x] [line 3]
>  !17 = !{i32 2, !"Dwarf Version", i32 4}
> -!18 = !{i32 3, i32 0, !4, null}
> -!19 = !{i32 4, i32 0, !4, null}
> -!20 = !{i32 5, i32 0, !4, null}
> +!18 = !MDLocation(line: 3, scope: !4)
> +!19 = !MDLocation(line: 4, scope: !4)
> +!20 = !MDLocation(line: 5, scope: !4)
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/ARM/cfi-eof-prologue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/cfi-eof-prologue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/cfi-eof-prologue.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/cfi-eof-prologue.ll Wed Jan 14 16:27:36
> 2015
> @@ -103,13 +103,13 @@ attributes #3 = { nounwind }
>  !38 = !{i32 1, !"min_enum_size", i32 4}
>  !39 = !{!"clang version 3.6.0 (trunk 224279) (llvm/trunk 224283)"}
>  !40 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> -!41 = !{i32 0, i32 0, !28, null}
> -!42 = !{i32 9, i32 0, !28, null}
> +!41 = !MDLocation(line: 0, scope: !28)
> +!42 = !MDLocation(line: 9, scope: !28)
>  !43 = !{!44, !44, i64 0}
>  !44 = !{!"vtable pointer", !45, i64 0}
>  !45 = !{!"Simple C/C++ TBAA"}
> -!46 = !{i32 0, i32 0, !32, null}
> +!46 = !MDLocation(line: 0, scope: !32)
>  !47 = !{!"0x101\00this\0016777216\001088", !28, null, !31, !48} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!48 = !{i32 9, i32 0, !32, null}
> -!49 = !{i32 0, i32 0, !28, !48}
> -!50 = !{i32 9, i32 0, !28, !48}
> +!48 = !MDLocation(line: 9, scope: !32)
> +!49 = !MDLocation(line: 0, scope: !28, inlinedAt: !48)
> +!50 = !MDLocation(line: 9, scope: !28, inlinedAt: !48)
>
> Modified: llvm/trunk/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/lowerbdgdeclare_vla.ll Wed Jan 14
> 16:27:36 2015
> @@ -89,15 +89,15 @@ attributes #1 = { nounwind readnone }
>  !19 = !{!"0xb\006\000\000", !5, !4} ; [ DW_TAG_lexical_block ]
> [/Volumes/Data/radar/15464571/test.c]
>  !20 = !{i32 2, !"Dwarf Version", i32 2}
>  !21 = !{!"clang version 3.4 "}
> -!22 = !{i32 1, i32 0, !4, null}
> -!23 = !{i32 3, i32 0, !4, null}
> -!24 = !{i32 4, i32 0, !4, null}
> -!25 = !{i32 5, i32 0, !4, null}
> +!22 = !MDLocation(line: 1, scope: !4)
> +!23 = !MDLocation(line: 3, scope: !4)
> +!24 = !MDLocation(line: 4, scope: !4)
> +!25 = !MDLocation(line: 5, scope: !4)
>  !26 = !{!27, !27, i64 0}
>  !27 = !{!"float", !28, i64 0}
>  !28 = !{!"omnipotent char", !29, i64 0}
>  !29 = !{!"Simple C/C++ TBAA"}
> -!30 = !{i32 6, i32 0, !19, null}
> -!31 = !{i32 7, i32 0, !19, null}
> -!32 = !{i32 8, i32 0, !4, null}
> +!30 = !MDLocation(line: 6, scope: !19)
> +!31 = !MDLocation(line: 7, scope: !19)
> +!32 = !MDLocation(line: 8, scope: !4)
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/ARM/s-super-register.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/s-super-register.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/s-super-register.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/s-super-register.ll Wed Jan 14 16:27:36
> 2015
> @@ -51,11 +51,11 @@ declare void @llvm.dbg.value(metadata, i
>  !8 = !{!"0x100\00y\008\000", !9, !2, !7} ; [ DW_TAG_auto_variable ]
>  !9 = !{!"0xb\007\0025\002", !18, !10} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"0xb\007\003\001", !18, !6} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 6, i32 18, !6, null}
> -!12 = !{i32 7, i32 3, !6, null}
> -!13 = !{i32 8, i32 20, !9, null}
> -!14 = !{i32 7, i32 20, !10, null}
> -!15 = !{i32 10, i32 1, !6, null}
> +!11 = !MDLocation(line: 6, column: 18, scope: !6)
> +!12 = !MDLocation(line: 7, column: 3, scope: !6)
> +!13 = !MDLocation(line: 8, column: 20, scope: !9)
> +!14 = !MDLocation(line: 7, column: 20, scope: !10)
> +!15 = !MDLocation(line: 10, column: 1, scope: !6)
>  !16 = !{!1}
>  !17 = !{!5, !8}
>  !18 = !{!"k.cc", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/COFF/asan-module-ctor.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/asan-module-ctor.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/asan-module-ctor.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/asan-module-ctor.ll Wed Jan 14 16:27:36
> 2015
> @@ -91,4 +91,4 @@ attributes #0 = { nounwind sanitize_addr
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5.0 "}
> -!10 = !{i32 2, i32 0, !4, null}
> +!10 = !MDLocation(line: 2, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/COFF/asm.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/asm.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/asm.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/asm.ll Wed Jan 14 16:27:36 2015
> @@ -251,6 +251,6 @@ attributes #2 = { nounwind }
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 "}
> -!12 = !{i32 4, i32 0, !4, null}
> -!13 = !{i32 5, i32 0, !4, null}
> -!14 = !{i32 6, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
> +!13 = !MDLocation(line: 5, scope: !4)
> +!14 = !MDLocation(line: 6, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/COFF/cpp-mangling.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/cpp-mangling.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/cpp-mangling.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/cpp-mangling.ll Wed Jan 14 16:27:36 2015
> @@ -40,4 +40,4 @@ attributes #0 = { nounwind "less-precise
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 2, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.6.0 "}
> -!11 = !{i32 3, i32 0, !4, null}
> +!11 = !MDLocation(line: 3, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/COFF/multifile.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/multifile.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/multifile.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/multifile.ll Wed Jan 14 16:27:36 2015
> @@ -319,11 +319,11 @@ attributes #1 = { "less-precise-fpmad"="
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 "}
> -!12 = !{i32 1, i32 0, !13, null}
> +!12 = !MDLocation(line: 1, scope: !13)
>  !13 = !{!"0xb\000", !14, !4} ; [ DW_TAG_lexical_block ] [D:\/one.c]
>  !14 = !{!"one.c", !"D:\5C"}
> -!15 = !{i32 2, i32 0, !16, null}
> +!15 = !MDLocation(line: 2, scope: !16)
>  !16 = !{!"0xb\000", !17, !4} ; [ DW_TAG_lexical_block ] [D:\/two.c]
>  !17 = !{!"two.c", !"D:\5C"}
> -!18 = !{i32 7, i32 0, !13, null}
> -!19 = !{i32 8, i32 0, !13, null}
> +!18 = !MDLocation(line: 7, scope: !13)
> +!19 = !MDLocation(line: 8, scope: !13)
>
> Modified: llvm/trunk/test/DebugInfo/COFF/multifunction.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/multifunction.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/multifunction.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/multifunction.ll Wed Jan 14 16:27:36
> 2015
> @@ -596,11 +596,11 @@ attributes #1 = { "less-precise-fpmad"="
>  !11 = !{i32 2, !"Dwarf Version", i32 4}
>  !12 = !{i32 1, !"Debug Info Version", i32 2}
>  !13 = !{!"clang version 3.5 "}
> -!14 = !{i32 4, i32 0, !4, null}
> -!15 = !{i32 5, i32 0, !4, null}
> -!16 = !{i32 8, i32 0, !9, null}
> -!17 = !{i32 9, i32 0, !9, null}
> -!18 = !{i32 12, i32 0, !10, null}
> -!19 = !{i32 13, i32 0, !10, null}
> -!20 = !{i32 14, i32 0, !10, null}
> -!21 = !{i32 15, i32 0, !10, null}
> +!14 = !MDLocation(line: 4, scope: !4)
> +!15 = !MDLocation(line: 5, scope: !4)
> +!16 = !MDLocation(line: 8, scope: !9)
> +!17 = !MDLocation(line: 9, scope: !9)
> +!18 = !MDLocation(line: 12, scope: !10)
> +!19 = !MDLocation(line: 13, scope: !10)
> +!20 = !MDLocation(line: 14, scope: !10)
> +!21 = !MDLocation(line: 15, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/COFF/simple.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/simple.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/simple.ll (original)
> +++ llvm/trunk/test/DebugInfo/COFF/simple.ll Wed Jan 14 16:27:36 2015
> @@ -235,5 +235,5 @@ attributes #1 = { "less-precise-fpmad"="
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 "}
> -!12 = !{i32 4, i32 0, !4, null}
> -!13 = !{i32 5, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
> +!13 = !MDLocation(line: 5, scope: !4)
>
> Modified:
> llvm/trunk/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/COFF/tail-call-without-lexical-scopes.ll Wed
> Jan 14 16:27:36 2015
> @@ -72,7 +72,7 @@ attributes #2 = { nounwind }
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 1, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5.0 "}
> -!11 = !{i32 8, i32 0, !4, null}
> -!12 = !{i32 9, i32 0, !4, null}
> -!13 = !{i32 4, i32 0, !7, null}
> -!14 = !{i32 5, i32 0, !7, null}
> +!11 = !MDLocation(line: 8, scope: !4)
> +!12 = !MDLocation(line: 9, scope: !4)
> +!13 = !MDLocation(line: 4, scope: !7)
> +!14 = !MDLocation(line: 5, scope: !7)
>
> Modified: llvm/trunk/test/DebugInfo/Inputs/gmlt.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Inputs/gmlt.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/Inputs/gmlt.ll (original)
> +++ llvm/trunk/test/DebugInfo/Inputs/gmlt.ll Wed Jan 14 16:27:36 2015
> @@ -144,10 +144,10 @@ attributes #2 = { nounwind }
>  !10 = !{i32 2, !"Dwarf Version", i32 4}
>  !11 = !{i32 2, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.6.0 "}
> -!13 = !{i32 1, i32 12, !4, null}
> -!14 = !{i32 2, i32 53, !7, null}
> -!15 = !{i32 3, i32 44, !8, null}
> -!16 = !{i32 3, i32 50, !8, null}
> -!17 = !{i32 3, i32 44, !8, !18}
> -!18 = !{i32 4, i32 13, !9, null}
> -!19 = !{i32 4, i32 19, !9, null}
> +!13 = !MDLocation(line: 1, column: 12, scope: !4)
> +!14 = !MDLocation(line: 2, column: 53, scope: !7)
> +!15 = !MDLocation(line: 3, column: 44, scope: !8)
> +!16 = !MDLocation(line: 3, column: 50, scope: !8)
> +!17 = !MDLocation(line: 3, column: 44, scope: !8, inlinedAt: !18)
> +!18 = !MDLocation(line: 4, column: 13, scope: !9)
> +!19 = !MDLocation(line: 4, column: 19, scope: !9)
>
> Modified: llvm/trunk/test/DebugInfo/Mips/delay-slot.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Mips/delay-slot.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/Mips/delay-slot.ll (original)
> +++ llvm/trunk/test/DebugInfo/Mips/delay-slot.ll Wed Jan 14 16:27:36 2015
> @@ -67,9 +67,9 @@ attributes #1 = { nounwind readnone }
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5.0"}
>  !12 = !{!"0x101\00x\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [x] [line 1]
> -!13 = !{i32 1, i32 0, !4, null}
> -!14 = !{i32 2, i32 0, !15, null}
> +!13 = !MDLocation(line: 1, scope: !4)
> +!14 = !MDLocation(line: 2, scope: !15)
>  !15 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/test.c]
> -!16 = !{i32 3, i32 0, !15, null}
> -!17 = !{i32 4, i32 0, !4, null}
> -!18 = !{i32 5, i32 0, !4, null}
> +!16 = !MDLocation(line: 3, scope: !15)
> +!17 = !MDLocation(line: 4, scope: !4)
> +!18 = !MDLocation(line: 5, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/PR20038.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/PR20038.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/PR20038.ll (original)
> +++ llvm/trunk/test/DebugInfo/PR20038.ll Wed Jan 14 16:27:36 2015
> @@ -141,24 +141,24 @@ attributes #2 = { nounwind readnone }
>  !18 = !{i32 2, !"Dwarf Version", i32 4}
>  !19 = !{i32 2, !"Debug Info Version", i32 2}
>  !20 = !{!"clang version 3.5.0 "}
> -!21 = !{i32 6, i32 0, !17, !22}
> -!22 = !{i32 5, i32 0, !23, null}
> +!21 = !MDLocation(line: 6, scope: !17, inlinedAt: !22)
> +!22 = !MDLocation(line: 5, scope: !23)
>  !23 = !{!"0xb\005\000\003", !5, !12} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/PR20038.cpp]
> -!24 = !{i32 5, i32 0, !12, null}
> -!25 = !{i32 5, i32 0, !26, null}
> +!24 = !MDLocation(line: 5, scope: !12)
> +!25 = !MDLocation(line: 5, scope: !26)
>  !26 = !{!"0xb\005\000\001", !5, !12} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/PR20038.cpp]
> -!27 = !{i32 5, i32 0, !28, null}
> +!27 = !MDLocation(line: 5, scope: !28)
>  !28 = !{!"0xb\005\000\002", !5, !12} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/PR20038.cpp]
>  !29 = !{!"0x101\00this\0016777216\001088", !17, null, !30} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !30 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1C"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1C]
> -!31 = !{i32 0, i32 0, !17, !22}
> +!31 = !MDLocation(line: 0, scope: !17, inlinedAt: !22)
>  !32 = !{!"0x101\00this\0016777216\001088", !16, null, !30} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!33 = !{i32 0, i32 0, !16, !21}
> -!34 = !{i32 5, i32 0, !35, null}
> +!33 = !MDLocation(line: 0, scope: !16, inlinedAt: !21)
> +!34 = !MDLocation(line: 5, scope: !35)
>  !35 = !{!"0xb\005\000\005", !5, !36} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/PR20038.cpp]
>  !36 = !{!"0xb\005\000\004", !5, !12} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/PR20038.cpp]
> -!37 = !{i32 6, i32 0, !17, null}
> -!38 = !{i32 0, i32 0, !17, null}
> -!39 = !{i32 0, i32 0, !16, !37}
> -!40 = !{i32 0, i32 0, !16, null}
> -!41 = !{i32 6, i32 0, !16, null}
> +!37 = !MDLocation(line: 6, scope: !17)
> +!38 = !MDLocation(line: 0, scope: !17)
> +!39 = !MDLocation(line: 0, scope: !16, inlinedAt: !37)
> +!40 = !MDLocation(line: 0, scope: !16)
> +!41 = !MDLocation(line: 6, scope: !16)
>
> Modified: llvm/trunk/test/DebugInfo/Sparc/gnu-window-save.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Sparc/gnu-window-save.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/Sparc/gnu-window-save.ll (original)
> +++ llvm/trunk/test/DebugInfo/Sparc/gnu-window-save.ll Wed Jan 14 16:27:36
> 2015
> @@ -67,5 +67,5 @@ attributes #1 = { "less-precise-fpmad"="
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5 (http://llvm.org/git/clang.git
> 6a0714fee07fb7c4e32d3972b4fe2ce2f5678cf4) (llvm/
> 672e88e934757f76d5c5e5258be41e7615094844)"}
> -!12 = !{i32 5, i32 0, !4, null}
> -!13 = !{i32 6, i32 0, !4, null}
> +!12 = !MDLocation(line: 5, scope: !4)
> +!13 = !MDLocation(line: 6, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/SystemZ/variable-loc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/SystemZ/variable-loc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/SystemZ/variable-loc.ll (original)
> +++ llvm/trunk/test/DebugInfo/SystemZ/variable-loc.ll Wed Jan 14 16:27:36
> 2015
> @@ -71,12 +71,12 @@ declare i32 @printf(i8*, ...)
>  !18 = !{!"0xb\0018\0016\004", !29, !14} ; [ DW_TAG_lexical_block ]
> [/home/timnor01/a64-trunk/build/simple.c]
>  !19 = !{!"0x1\00\000\003200\0032\000\000", null, null, !10, !20, i32 0,
> null, null, null} ; [ DW_TAG_array_type ] [line 0, size 3200, align 32,
> offset 0] [from int]
>  !20 = !{!"0x21\000\0099"}       ; [ DW_TAG_subrange_type ] [0, 99]
> -!22 = !{i32 19, i32 7, !18, null}
> +!22 = !MDLocation(line: 19, column: 7, scope: !18)
>  !23 = !{!"0x100\00val\0020\000", !18, !6, !10} ; [ DW_TAG_auto_variable ]
> [val] [line 20]
> -!24 = !{i32 20, i32 7, !18, null}
> -!25 = !{i32 22, i32 3, !18, null}
> -!26 = !{i32 23, i32 9, !18, null}
> -!27 = !{i32 24, i32 3, !18, null}
> -!28 = !{i32 26, i32 3, !18, null}
> +!24 = !MDLocation(line: 20, column: 7, scope: !18)
> +!25 = !MDLocation(line: 22, column: 3, scope: !18)
> +!26 = !MDLocation(line: 23, column: 9, scope: !18)
> +!27 = !MDLocation(line: 24, column: 3, scope: !18)
> +!28 = !MDLocation(line: 26, column: 3, scope: !18)
>  !29 = !{!"simple.c", !"/home/timnor01/a64-trunk/build"}
>  !30 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/2010-04-13-PubType.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/2010-04-13-PubType.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/2010-04-13-PubType.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/2010-04-13-PubType.ll Wed Jan 14
> 16:27:36 2015
> @@ -44,9 +44,9 @@ declare void @llvm.dbg.declare(metadata,
>  !10 = !{!"0x13\00Y\004\0032\0032\000\000\000", !18, !2, null, !11, null,
> null, null} ; [ DW_TAG_structure_type ] [Y] [line 4, size 32, align 32,
> offset 0] [def] [from ]
>  !11 = !{!12}
>  !12 = !{!"0xd\00x\005\0032\0032\000\000", !18, !10, !6} ; [ DW_TAG_member
> ]
> -!13 = !{i32 7, i32 0, !1, null}
> +!13 = !MDLocation(line: 7, scope: !1)
>  !14 = !{!"0x101\00y\007\000", !1, !2, !9} ; [ DW_TAG_arg_variable ]
> -!15 = !{i32 7, i32 0, !16, null}
> +!15 = !MDLocation(line: 7, scope: !16)
>  !16 = !{!"0xb\007\000\000", !18, !1} ; [ DW_TAG_lexical_block ]
>  !17 = !{!1}
>  !18 = !{!"a.c", !"/tmp/"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/2010-08-10-DbgConstant.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/2010-08-10-DbgConstant.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/2010-08-10-DbgConstant.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/2010-08-10-DbgConstant.ll Wed Jan 14
> 16:27:36 2015
> @@ -22,7 +22,7 @@ declare void @bar(i32)
>  !5 = !{!"0x27\00ro\00ro\00ro\001\001\001", !1, !1, !6, i32 201, null} ; [
> DW_TAG_constant ]
>  !6 = !{!"0x26\00\000\000\000\000\000", !12, !1, !7} ; [ DW_TAG_const_type
> ]
>  !7 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", !12, !1} ; [
> DW_TAG_base_type ]
> -!8 = !{i32 3, i32 14, !9, null}
> +!8 = !MDLocation(line: 3, column: 14, scope: !9)
>  !9 = !{!"0xb\003\0012\000", !12, !0} ; [ DW_TAG_lexical_block ]
>  !10 = !{!0}
>  !11 = !{!5}
>
> Modified: llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll Wed Jan
> 14 16:27:36 2015
> @@ -31,9 +31,9 @@ declare void @llvm.dbg.declare(metadata,
>  !14 = !{!"0x34\00GLB\00GLB\00\001\000\001", null, !6, !9, i32* @GLB,
> null} ; [ DW_TAG_variable ]
>  !15 = !{!"0x100\00LOC\004\000", !16, !6, !9} ; [ DW_TAG_auto_variable ]
>  !16 = !{!"0xb\003\009\000", !20, !5} ; [ DW_TAG_lexical_block ]
> -!17 = !{i32 4, i32 9, !16, null}
> -!18 = !{i32 4, i32 23, !16, null}
> -!19 = !{i32 5, i32 5, !16, null}
> +!17 = !MDLocation(line: 4, column: 9, scope: !16)
> +!18 = !MDLocation(line: 4, column: 23, scope: !16)
> +!19 = !MDLocation(line: 5, column: 5, scope: !16)
>  !20 = !{!"test.c", !"/work/llvm/vanilla/test/DebugInfo"}
>
>  ; CHECK: DW_TAG_variable
>
> Modified: llvm/trunk/test/DebugInfo/X86/2011-12-16-BadStructRef.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/2011-12-16-BadStructRef.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/2011-12-16-BadStructRef.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/2011-12-16-BadStructRef.ll Wed Jan 14
> 16:27:36 2015
> @@ -130,37 +130,37 @@ entry:
>  !45 = !{!"0x24"}                      ; [ DW_TAG_base_type ]
>  !46 =
> !{!"0x2e\00baz\00baz\00_ZN3bazC2Ei\006\000\001\000\006\00256\000\000", !82,
> null, !14, null, void (%struct.baz*, i32)* @_ZN3bazC2Ei, null, !13, null} ;
> [ DW_TAG_subprogram ] [line 6] [def] [scope 0] [baz]
>  !49 = !{!"0x101\00argc\0016777232\000", !29, !6, !12} ; [
> DW_TAG_arg_variable ]
> -!50 = !{i32 16, i32 14, !29, null}
> +!50 = !MDLocation(line: 16, column: 14, scope: !29)
>  !51 = !{!"0x101\00argv\0033554448\000", !29, !6, !32} ; [
> DW_TAG_arg_variable ]
> -!52 = !{i32 16, i32 27, !29, null}
> +!52 = !MDLocation(line: 16, column: 27, scope: !29)
>  !53 = !{!"0x100\00myBar\0018\000", !54, !6, !5} ; [ DW_TAG_auto_variable ]
>  !54 = !{!"0xb\0017\001\000", !82, !29} ; [ DW_TAG_lexical_block ]
> -!55 = !{i32 18, i32 9, !54, null}
> -!56 = !{i32 18, i32 17, !54, null}
> -!57 = !{i32 19, i32 5, !54, null}
> +!55 = !MDLocation(line: 18, column: 9, scope: !54)
> +!56 = !MDLocation(line: 18, column: 17, scope: !54)
> +!57 = !MDLocation(line: 19, column: 5, scope: !54)
>  !58 = !{!"0x101\00this\0016777229\0064", !37, !6, !24} ; [
> DW_TAG_arg_variable ]
> -!59 = !{i32 13, i32 5, !37, null}
> +!59 = !MDLocation(line: 13, column: 5, scope: !37)
>  !60 = !{!"0x101\00x\0033554445\000", !37, !6, !12} ; [
> DW_TAG_arg_variable ]
> -!61 = !{i32 13, i32 13, !37, null}
> -!62 = !{i32 13, i32 34, !37, null}
> +!61 = !MDLocation(line: 13, column: 13, scope: !37)
> +!62 = !MDLocation(line: 13, column: 34, scope: !37)
>  !63 = !{!"0x101\00this\0016777229\0064", !40, !6, !24} ; [
> DW_TAG_arg_variable ]
> -!64 = !{i32 13, i32 5, !40, null}
> +!64 = !MDLocation(line: 13, column: 5, scope: !40)
>  !65 = !{!"0x101\00x\0033554445\000", !40, !6, !12} ; [
> DW_TAG_arg_variable ]
> -!66 = !{i32 13, i32 13, !40, null}
> -!67 = !{i32 13, i32 33, !40, null}
> -!68 = !{i32 13, i32 34, !69, null}
> +!66 = !MDLocation(line: 13, column: 13, scope: !40)
> +!67 = !MDLocation(line: 13, column: 33, scope: !40)
> +!68 = !MDLocation(line: 13, column: 34, scope: !69)
>  !69 = !{!"0xb\0013\0033\001", !82, !40} ; [ DW_TAG_lexical_block ]
>  !70 = !{!"0x101\00this\0016777222\0064", !43, !6, !16} ; [
> DW_TAG_arg_variable ]
> -!71 = !{i32 6, i32 5, !43, null}
> +!71 = !MDLocation(line: 6, column: 5, scope: !43)
>  !72 = !{!"0x101\00a\0033554438\000", !43, !6, !12} ; [
> DW_TAG_arg_variable ]
> -!73 = !{i32 6, i32 13, !43, null}
> -!74 = !{i32 6, i32 24, !43, null}
> +!73 = !MDLocation(line: 6, column: 13, scope: !43)
> +!74 = !MDLocation(line: 6, column: 24, scope: !43)
>  !75 = !{!"0x101\00this\0016777222\0064", !46, !6, !16} ; [
> DW_TAG_arg_variable ]
> -!76 = !{i32 6, i32 5, !46, null}
> +!76 = !MDLocation(line: 6, column: 5, scope: !46)
>  !77 = !{!"0x101\00a\0033554438\000", !46, !6, !12} ; [
> DW_TAG_arg_variable ]
> -!78 = !{i32 6, i32 13, !46, null}
> -!79 = !{i32 6, i32 23, !46, null}
> -!80 = !{i32 6, i32 24, !81, null}
> +!78 = !MDLocation(line: 6, column: 13, scope: !46)
> +!79 = !MDLocation(line: 6, column: 23, scope: !46)
> +!80 = !MDLocation(line: 6, column: 24, scope: !81)
>  !81 = !{!"0xb\006\0023\002", !82, !46} ; [ DW_TAG_lexical_block ]
>  !82 = !{!"main.cpp", !"/Users/echristo/tmp/bad-struct-ref"}
>  !83 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_byte_size.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_byte_size.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_byte_size.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_byte_size.ll Wed Jan 14 16:27:36
> 2015
> @@ -39,8 +39,8 @@ declare void @llvm.dbg.declare(metadata,
>  !12 = !{!13}
>  !13 = !{!"0xd\00b\001\0032\0032\000\000", !20, !11, !9} ; [ DW_TAG_member
> ]
>  !16 = !{!"0x101\00a\0016777219\000", !5, !6, !10} ; [ DW_TAG_arg_variable
> ]
> -!17 = !{i32 3, i32 13, !5, null}
> -!18 = !{i32 4, i32 3, !19, null}
> +!17 = !MDLocation(line: 3, column: 13, scope: !5)
> +!18 = !MDLocation(line: 4, column: 3, scope: !19)
>  !19 = !{!"0xb\003\0016\000", !20, !5} ; [ DW_TAG_lexical_block ]
>  !20 = !{!"foo.cpp", !"/Users/echristo"}
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_linkage_name.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_linkage_name.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_linkage_name.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_linkage_name.ll Wed Jan 14
> 16:27:36 2015
> @@ -105,12 +105,12 @@ attributes #2 = { ssp uwtable }
>  !25 = !{!"clang version 3.5.0 "}
>  !26 = !{!"0x101\00this\0016777216\001088", !17, null, !27} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !27 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!28 = !{i32 0, i32 0, !17, null}
> -!29 = !{i32 8, i32 0, !17, null}
> +!28 = !MDLocation(line: 0, scope: !17)
> +!29 = !MDLocation(line: 8, scope: !17)
>  !30 = !{!"0x101\00this\0016777216\001088", !18, null, !27} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!31 = !{i32 0, i32 0, !18, null}
> -!32 = !{i32 6, i32 0, !18, null}
> -!33 = !{i32 8, i32 0, !18, null}
> +!31 = !MDLocation(line: 0, scope: !18)
> +!32 = !MDLocation(line: 6, scope: !18)
> +!33 = !MDLocation(line: 8, scope: !18)
>  !34 = !{!"0x100\00a\0011\000", !19, !20, !"_ZTS1A"} ; [
> DW_TAG_auto_variable ] [a] [line 11]
> -!35 = !{i32 11, i32 0, !19, null}
> -!36 = !{i32 12, i32 0, !19, null}
> +!35 = !MDLocation(line: 11, scope: !19)
> +!36 = !MDLocation(line: 12, scope: !19)
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_location-reference.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_location-reference.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_location-reference.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_location-reference.ll Wed Jan 14
> 16:27:36 2015
> @@ -110,16 +110,16 @@ declare void @llvm.dbg.value(metadata, i
>  !5 = !{!"0x100\00x\005\000", !6, !1, !7} ; [ DW_TAG_auto_variable ]
>  !6 = !{!"0xb\004\0014\000", !23, !0} ; [ DW_TAG_lexical_block ]
>  !7 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [
> DW_TAG_base_type ]
> -!8 = !{i32 6, i32 3, !6, null}
> +!8 = !MDLocation(line: 6, column: 3, scope: !6)
>  !12 = !{i32 1}
> -!13 = !{i32 7, i32 3, !6, null}
> -!14 = !{i32 8, i32 3, !6, null}
> -!15 = !{i32 9, i32 3, !6, null}
> +!13 = !MDLocation(line: 7, column: 3, scope: !6)
> +!14 = !MDLocation(line: 8, column: 3, scope: !6)
> +!15 = !MDLocation(line: 9, column: 3, scope: !6)
>  !16 = !{i32 2}
> -!17 = !{i32 10, i32 3, !6, null}
> -!18 = !{i32 11, i32 3, !6, null}
> -!19 = !{i32 12, i32 3, !6, null}
> -!20 = !{i32 13, i32 1, !6, null}
> +!17 = !MDLocation(line: 10, column: 3, scope: !6)
> +!18 = !MDLocation(line: 11, column: 3, scope: !6)
> +!19 = !MDLocation(line: 12, column: 3, scope: !6)
> +!20 = !MDLocation(line: 13, column: 1, scope: !6)
>  !21 = !{!0}
>  !22 = !{!5}
>  !23 = !{!"simple.c", !"/home/rengol01/temp/tests/dwarf/relocation"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_object_pointer.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_object_pointer.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_object_pointer.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_object_pointer.ll Wed Jan 14
> 16:27:36 2015
> @@ -72,19 +72,19 @@ entry:
>  !20 = !{!"0x2e\00A\00A\00_ZN1AC2Ev\003\000\001\000\006\00256\000\003",
> !6, null, !11, null, void (%class.A*)* @_ZN1AC2Ev, null, !17, !1} ; [
> DW_TAG_subprogram ] [line 3] [def] [A]
>  !21 = !{!"0x100\00a\008\000", !22, !6, !14} ; [ DW_TAG_auto_variable ]
> [a] [line 8]
>  !22 = !{!"0xb\007\0011\000", !6, !5} ; [ DW_TAG_lexical_block ]
> [/Users/echristo/debug-tests/bar.cpp]
> -!23 = !{i32 8, i32 5, !22, null}
> -!24 = !{i32 8, i32 6, !22, null}
> -!25 = !{i32 9, i32 3, !22, null}
> +!23 = !MDLocation(line: 8, column: 5, scope: !22)
> +!24 = !MDLocation(line: 8, column: 6, scope: !22)
> +!25 = !MDLocation(line: 9, column: 3, scope: !22)
>  !26 = !{!"0x101\00this\0016777219\001088", !10, !6, !27} ; [
> DW_TAG_arg_variable ] [this] [line 3]
>  !27 = !{!"0xf\00\000\0064\0064\000\000", null, null, !14} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from A]
> -!28 = !{i32 3, i32 3, !10, null}
> -!29 = !{i32 3, i32 18, !10, null}
> +!28 = !MDLocation(line: 3, column: 3, scope: !10)
> +!29 = !MDLocation(line: 3, column: 18, scope: !10)
>  !30 = !{!"0x101\00this\0016777219\001088", !20, !6, !27} ; [
> DW_TAG_arg_variable ] [this] [line 3]
> -!31 = !{i32 3, i32 3, !20, null}
> -!32 = !{i32 3, i32 9, !33, null}
> +!31 = !MDLocation(line: 3, column: 3, scope: !20)
> +!32 = !MDLocation(line: 3, column: 9, scope: !33)
>  !33 = !{!"0xb\003\007\001", !6, !20} ; [ DW_TAG_lexical_block ]
> [/Users/echristo/debug-tests/bar.cpp]
> -!34 = !{i32 3, i32 18, !33, null}
> -!35 = !{i32 7, i32 0, !5, null}
> +!34 = !MDLocation(line: 3, column: 18, scope: !33)
> +!35 = !MDLocation(line: 7, scope: !5)
>  !36 = !{!"0x101\00\0016777223\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> [line 7]
>  !37 = !{!"bar.cpp", !"/Users/echristo/debug-tests"}
>  !38 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll Wed Jan 14
> 16:27:36 2015
> @@ -36,7 +36,7 @@ entry:
>  !20 = !{!"0x34\00x\00x\00\005\001\001", !5, !6, !21, i32*
> @_ZZN3foo3barEvE1x, null} ; [ DW_TAG_variable ]
>  !21 = !{!"0x26\00\000\000\000\000\000", null, null, !22} ; [
> DW_TAG_const_type ]
>  !22 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
> -!25 = !{i32 6, i32 1, !26, null}
> +!25 = !MDLocation(line: 6, column: 1, scope: !26)
>  !26 = !{!"0xb\004\0017\000", !6, !5} ; [ DW_TAG_lexical_block ]
>  !27 = !{!"nsNativeAppSupportBase.ii",
> !"/Users/espindola/mozilla-central/obj-x86_64-apple-darwin11.2.0/toolkit/library"}
>  !28 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/DW_AT_stmt_list_sec_offset.ll Wed Jan 14
> 16:27:36 2015
> @@ -40,5 +40,5 @@ attributes #0 = { nounwind "less-precise
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
> -!10 = !{i32 3, i32 0, !4, null}
> +!10 = !MDLocation(line: 3, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/aligned_stack_var.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/aligned_stack_var.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/aligned_stack_var.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/aligned_stack_var.ll Wed Jan 14 16:27:36
> 2015
> @@ -37,7 +37,7 @@ declare void @llvm.dbg.declare(metadata,
>  !9 = !{!"0x100\00x\002\000", !10, !6, !11} ; [ DW_TAG_auto_variable ]
>  !10 = !{!"0xb\001\0012\000", !14, !5} ; [ DW_TAG_lexical_block ]
>  !11 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
> -!12 = !{i32 2, i32 7, !10, null}
> -!13 = !{i32 3, i32 1, !10, null}
> +!12 = !MDLocation(line: 2, column: 7, scope: !10)
> +!13 = !MDLocation(line: 3, column: 1, scope: !10)
>  !14 = !{!"test.cc", !"/home/samsonov/debuginfo"}
>  !15 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/arguments.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/arguments.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/arguments.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/arguments.ll Wed Jan 14 16:27:36 2015
> @@ -69,8 +69,8 @@ attributes #1 = { nounwind readnone }
>  !17 = !{!"0x26\00\000\000\000\000\000", null, null, !8} ; [
> DW_TAG_const_type ] [line 0, size 0, align 0, offset 0] [from foo]
>  !18 = !{i32 786468}
>  !19 = !{!"0x101\00f\0016777222\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [f] [line 6]
> -!20 = !{i32 6, i32 0, !4, null}
> +!20 = !MDLocation(line: 6, scope: !4)
>  !21 = !{!"0x101\00g\0033554438\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [g] [line 6]
> -!22 = !{i32 7, i32 0, !4, null}
> -!23 = !{i32 8, i32 0, !4, null}
> +!22 = !MDLocation(line: 7, scope: !4)
> +!23 = !MDLocation(line: 8, scope: !4)
>  !24 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/array.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/array.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/array.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/array.ll Wed Jan 14 16:27:36 2015
> @@ -88,14 +88,14 @@ attributes #2 = { nounwind readnone }
>  !25 = !{i32 2, !"Dwarf Version", i32 2}
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>  !27 = !{!"clang version 3.5.0 "}
> -!28 = !{i32 1, i32 0, !4, null}
> -!29 = !{i32 2, i32 0, !4, null}
> +!28 = !MDLocation(line: 1, scope: !4)
> +!29 = !MDLocation(line: 2, scope: !4)
>  !30 = !{!31, !31, i64 0}
>  !31 = !{!"int", !32, i64 0}
>  !32 = !{!"omnipotent char", !33, i64 0}
>  !33 = !{!"Simple C/C++ TBAA"}
> -!34 = !{i32 3, i32 0, !4, null}
> -!35 = !{i32 5, i32 0, !12, null}
> -!36 = !{i32 6, i32 0, !12, null}
> -!37 = !{i32 7, i32 0, !12, null}
> -!38 = !{i32 8, i32 0, !12, null}
> +!34 = !MDLocation(line: 3, scope: !4)
> +!35 = !MDLocation(line: 5, scope: !12)
> +!36 = !MDLocation(line: 6, scope: !12)
> +!37 = !MDLocation(line: 7, scope: !12)
> +!38 = !MDLocation(line: 8, scope: !12)
>
> Modified: llvm/trunk/test/DebugInfo/X86/array2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/array2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/array2.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/array2.ll Wed Jan 14 16:27:36 2015
> @@ -92,16 +92,16 @@ attributes #2 = { nounwind }
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>  !18 = !{!"clang version 3.5.0 "}
>  !19 = !{!"0x101\00p\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [p] [line 1]
> -!20 = !{i32 1, i32 0, !4, null}
> -!21 = !{i32 2, i32 0, !4, null}
> -!22 = !{i32 3, i32 0, !4, null}
> +!20 = !MDLocation(line: 1, scope: !4)
> +!21 = !MDLocation(line: 2, scope: !4)
> +!22 = !MDLocation(line: 3, scope: !4)
>  !23 = !{!"0x101\00argc\0016777221\000", !10, !5, !9} ; [
> DW_TAG_arg_variable ] [argc] [line 5]
> -!24 = !{i32 5, i32 0, !10, null}
> +!24 = !MDLocation(line: 5, scope: !10)
>  !25 = !{!"0x101\00argv\0033554437\000", !10, !5, !13} ; [
> DW_TAG_arg_variable ] [argv] [line 5]
>  !26 = !{!"0x100\00array\006\000", !10, !5, !27} ; [ DW_TAG_auto_variable
> ] [array] [line 6]
>  !27 = !{!"0x1\00\000\00128\0032\000\000", null, null, !9, !28, i32 0,
> null, null, null} ; [ DW_TAG_array_type ] [line 0, size 128, align 32,
> offset 0] [from int]
>  !28 = !{!29}
>  !29 = !{!"0x21\000\004"}        ; [ DW_TAG_subrange_type ] [0, 3]
> -!30 = !{i32 6, i32 0, !10, null}
> -!31 = !{i32 7, i32 0, !10, null}
> -!32 = !{i32 8, i32 0, !10, null}
> +!30 = !MDLocation(line: 6, scope: !10)
> +!31 = !MDLocation(line: 7, scope: !10)
> +!32 = !MDLocation(line: 8, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/X86/block-capture.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/block-capture.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/block-capture.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/block-capture.ll Wed Jan 14 16:27:36 2015
> @@ -121,11 +121,11 @@ attributes #3 = { nounwind }
>  !63 = !{!"0xf\00\000\0064\0064\000\000", null, null, !11} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from ]
>  !64 = !{!"0xd\00DestroyFuncPtr\002\0064\0064\00192\000", !1, !58, !63} ;
> [ DW_TAG_member ] [DestroyFuncPtr] [line 2, size 64, align 64, offset 192]
> [from ]
>  !65 = !{!"0xd\00block\002\0064\0064\00256\003", !1, !5, !25} ; [
> DW_TAG_member ] [block] [line 2, size 64, align 64, offset 256] [public]
> [from ]
> -!66 = !{i32 2, i32 20, !8, null}
> -!67 = !{i32 2, i32 21, !8, null}
> +!66 = !MDLocation(line: 2, column: 20, scope: !8)
> +!67 = !MDLocation(line: 2, column: 21, scope: !8)
>  !68 = !{!"0x100\00block\002\000", !8, !5, !25} ; [ DW_TAG_auto_variable ]
> [block] [line 2]
>  !69 = !{!"0x102\006\0034\0032"} ; [ DW_TAG_expression ] [DW_OP_deref]
> -!70 = !{i32 2, i32 9, !8, null}
> -!71 = !{i32 2, i32 23, !72, null}
> +!70 = !MDLocation(line: 2, column: 9, scope: !8)
> +!71 = !MDLocation(line: 2, column: 23, scope: !72)
>  !72 = !{!"0xb\002\0021\000", !1, !8} ; [ DW_TAG_lexical_block ] [/foo.m]
> -!73 = !{i32 2, i32 32, !8, null}
> +!73 = !MDLocation(line: 2, column: 32, scope: !8)
>
> Modified: llvm/trunk/test/DebugInfo/X86/byvalstruct.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/byvalstruct.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/byvalstruct.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/byvalstruct.ll Wed Jan 14 16:27:36 2015
> @@ -116,13 +116,13 @@ attributes #1 = { nounwind readnone }
>  !26 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,
> __objc_imageinfo, regular, no_dead_strip"}
>  !27 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
>  !28 = !{!"0x101\00self\0016777225\001088", !7, !5, !14} ; [
> DW_TAG_arg_variable ] [self] [line 9]
> -!29 = !{i32 9, i32 0, !7, null}
> +!29 = !MDLocation(line: 9, scope: !7)
>  !30 = !{!"0x101\00_cmd\0033554441\0064", !7, !5, !31} ; [
> DW_TAG_arg_variable ] [_cmd] [line 9]
>  !31 = !{!"0x16\00SEL\009\000\000\000\000", !1, null, !12} ; [
> DW_TAG_typedef ] [SEL] [line 9, size 0, align 0, offset 0] [from ]
>  !32 = !{!"0x101\00otherBitmap\0050331657\000", !7, !5, !14} ; [
> DW_TAG_arg_variable ] [otherBitmap] [line 9]
>  !33 = !{!"0x101\00info\0067108874\000", !7, !5, !15} ; [
> DW_TAG_arg_variable ] [info] [line 10]
> -!34 = !{i32 10, i32 0, !7, null}
> +!34 = !MDLocation(line: 10, scope: !7)
>  !35 = !{!"0x101\00length\0083886091\000", !7, !5, !19} ; [
> DW_TAG_arg_variable ] [length] [line 11]
> -!36 = !{i32 11, i32 0, !7, null}
> -!37 = !{i32 13, i32 0, !7, null}
> +!36 = !MDLocation(line: 11, scope: !7)
> +!37 = !MDLocation(line: 13, scope: !7)
>  !38 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/coff_debug_info_type.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/coff_debug_info_type.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/coff_debug_info_type.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/coff_debug_info_type.ll Wed Jan 14
> 16:27:36 2015
> @@ -39,5 +39,5 @@ attributes #0 = { nounwind "less-precise
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 3}
> -!10 = !{i32 3, i32 0, !4, null}
> +!10 = !MDLocation(line: 3, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/coff_relative_names.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/coff_relative_names.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/coff_relative_names.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/coff_relative_names.ll Wed Jan 14
> 16:27:36 2015
> @@ -33,5 +33,5 @@ attributes #0 = { nounwind "less-precise
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 3}
> -!10 = !{i32 3, i32 0, !4, null}
> +!10 = !MDLocation(line: 3, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll Wed Jan 14
> 16:27:36 2015
> @@ -118,14 +118,14 @@ declare void @_Z8moz_freePv(i8*)
>  !46 = !{!"0x101\00aValue\0033554436\000", !31, !6, !9} ; [
> DW_TAG_arg_variable ]
>  !47 = !{!49}
>  !49 = !{!"0x34\00mRefCnt\00mRefCnt\00\009\000\001", null, !6, !37, i32*
> null, null} ; [ DW_TAG_variable ]
> -!50 = !{i32 5, i32 5, !51, !52}
> +!50 = !MDLocation(line: 5, column: 5, scope: !51, inlinedAt: !52)
>  !51 = !{!"0xb\004\0029\002", !6, !31} ; [ DW_TAG_lexical_block ]
> -!52 = !{i32 15, i32 0, !53, null}
> +!52 = !MDLocation(line: 15, scope: !53)
>  !53 = !{!"0xb\0014\0034\000", !6, !5} ; [ DW_TAG_lexical_block ]
> -!54 = !{i32 19, i32 3, !55, !56}
> +!54 = !MDLocation(line: 19, column: 3, scope: !55, inlinedAt: !56)
>  !55 = !{!"0xb\0018\0041\001", !6, !27} ; [ DW_TAG_lexical_block ]
> -!56 = !{i32 18, i32 41, !23, !52}
> -!57 = !{i32 19, i32 3, !55, !58}
> -!58 = !{i32 18, i32 41, !23, null}
> +!56 = !MDLocation(line: 18, column: 41, scope: !23, inlinedAt: !52)
> +!57 = !MDLocation(line: 19, column: 3, scope: !55, inlinedAt: !58)
> +!58 = !MDLocation(line: 18, column: 41, scope: !23)
>  !59 = !{!"nsAutoRefCnt.ii",
> !"/Users/espindola/mozilla-central/obj-x86_64-apple-darwin11.2.0/netwerk/base/src"}
>  !60 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/constant-aggregate.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/constant-aggregate.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/constant-aggregate.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/constant-aggregate.ll Wed Jan 14
> 16:27:36 2015
> @@ -110,9 +110,9 @@ attributes #1 = { nounwind readnone }
>  !35 = !{i32 1, !"PIC Level", i32 2}
>  !36 = !{!"clang version 3.6.0 (trunk 225364) (llvm/trunk 225366)"}
>  !37 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> -!38 = !{i32 3, i32 16, !12, null}
> -!39 = !{i32 5, i32 3, !12, null}
> -!40 = !{i32 10, i32 16, !19, null}
> -!41 = !{i32 12, i32 3, !19, null}
> -!42 = !{i32 16, i32 6, !24, null}
> -!43 = !{i32 17, i32 3, !24, null}
> +!38 = !MDLocation(line: 3, column: 16, scope: !12)
> +!39 = !MDLocation(line: 5, column: 3, scope: !12)
> +!40 = !MDLocation(line: 10, column: 16, scope: !19)
> +!41 = !MDLocation(line: 12, column: 3, scope: !19)
> +!42 = !MDLocation(line: 16, column: 6, scope: !24)
> +!43 = !MDLocation(line: 17, column: 3, scope: !24)
>
> Modified: llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll Wed Jan 14 16:27:36 2015
> @@ -87,10 +87,10 @@ attributes #1 = { nounwind readnone }
>  !23 = !{i32 2, !"Dwarf Version", i32 4}
>  !24 = !{i32 1, !"Debug Info Version", i32 2}
>  !25 = !{!"clang version 3.5 (trunk 199923) (llvm/trunk 199940)"}
> -!26 = !{i32 8, i32 0, !14, null}
> +!26 = !MDLocation(line: 8, scope: !14)
>  !27 = !{!"0x101\00this\0016777216\001088", !18, null, !28} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !28 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!29 = !{i32 0, i32 0, !18, null}
> +!29 = !MDLocation(line: 0, scope: !18)
>  !30 = !{!"0x101\00i\0033554435\000", !18, !15, !7} ; [
> DW_TAG_arg_variable ] [i] [line 3]
> -!31 = !{i32 3, i32 0, !18, null}
> -!32 = !{i32 3, i32 0, !19, null}
> +!31 = !MDLocation(line: 3, scope: !18)
> +!32 = !MDLocation(line: 3, scope: !19)
>
> Modified: llvm/trunk/test/DebugInfo/X86/cu-ranges.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/cu-ranges.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/cu-ranges.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/cu-ranges.ll Wed Jan 14 16:27:36 2015
> @@ -70,6 +70,6 @@ attributes #1 = { nounwind readnone }
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5.0 (trunk 204164) (llvm/trunk 204183)"}
>  !13 = !{!"0x101\00a\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [a] [line 1]
> -!14 = !{i32 1, i32 0, !4, null}
> +!14 = !MDLocation(line: 1, scope: !4)
>  !15 = !{!"0x101\00b\0016777218\000", !9, !5, !8} ; [ DW_TAG_arg_variable
> ] [b] [line 2]
> -!16 = !{i32 2, i32 0, !9, null}
> +!16 = !MDLocation(line: 2, scope: !9)
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-byval-parameter.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-byval-parameter.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-byval-parameter.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-byval-parameter.ll Wed Jan 14
> 16:27:36 2015
> @@ -43,8 +43,8 @@ declare void @llvm.dbg.declare(metadata,
>  !12 = !{!"0xd\00x\002\0064\0064\000\000", !19, !10, !6} ; [ DW_TAG_member
> ]
>  !13 = !{!"0xd\00y\003\0064\0064\0064\000", !19, !10, !6} ; [
> DW_TAG_member ]
>  !14 = !{!"0xd\00P2\008\00128\0064\00128\000", !19, !7, !10} ; [
> DW_TAG_member ]
> -!15 = !{i32 11, i32 0, !1, null}
> -!16 = !{i32 12, i32 0, !17, null}
> +!15 = !MDLocation(line: 11, scope: !1)
> +!16 = !MDLocation(line: 12, scope: !17)
>  !17 = !{!"0xb\0011\000\000", !19, !1} ; [ DW_TAG_lexical_block ]
>  !18 = !{!1}
>  !19 = !{!"b2.c", !"/tmp/"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-const-int.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-const-int.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-const-int.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-const-int.ll Wed Jan 14 16:27:36 2015
> @@ -30,8 +30,8 @@ declare void @llvm.dbg.value(metadata, i
>  !6 = !{!"0x100\00i\002\000", !7, !2, !5} ; [ DW_TAG_auto_variable ]
>  !7 = !{!"0xb\001\0011\000", !13, !1} ; [ DW_TAG_lexical_block ]
>  !8 = !{i32 42}
> -!9 = !{i32 2, i32 12, !7, null}
> -!10 = !{i32 3, i32 2, !7, null}
> +!9 = !MDLocation(line: 2, column: 12, scope: !7)
> +!10 = !MDLocation(line: 3, column: 2, scope: !7)
>  !11 = !{!1}
>  !12 = !{!6}
>  !13 = !{!"a.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-const.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-const.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-const.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-const.ll Wed Jan 14 16:27:36 2015
> @@ -40,10 +40,10 @@ declare i32 @bar() nounwind readnone
>  !6 = !{!"0x100\00j\0015\000", !7, !1, !5} ; [ DW_TAG_auto_variable ]
>  !7 = !{!"0xb\0012\0052\000", !15, !0} ; [ DW_TAG_lexical_block ]
>  !8 = !{i32 42}
> -!9 = !{i32 15, i32 12, !7, null}
> -!10 = !{i32 23, i32 3, !7, null}
> -!11 = !{i32 17, i32 3, !7, null}
> -!12 = !{i32 18, i32 3, !7, null}
> +!9 = !MDLocation(line: 15, column: 12, scope: !7)
> +!10 = !MDLocation(line: 23, column: 3, scope: !7)
> +!11 = !MDLocation(line: 17, column: 3, scope: !7)
> +!12 = !MDLocation(line: 18, column: 3, scope: !7)
>  !13 = !{!0}
>  !14 = !{!6}
>  !15 = !{!"mu.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-declare-arg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-declare-arg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-declare-arg.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-declare-arg.ll Wed Jan 14 16:27:36
> 2015
> @@ -99,28 +99,28 @@ entry:
>  !24 = !{null}
>  !25 = !{!"0x2e\00~A\00~A\00_ZN1AD2Ev\002\000\001\000\006\00256\000\000",
> !51, !3, !23, null, void (%class.A*)* @_ZN1AD2Ev, null, null, null} ; [
> DW_TAG_subprogram ] [line 2] [def] [scope 0] [~A]
>  !26 = !{!"0x101\00i\0016777220\000", !19, !3, !6} ; [ DW_TAG_arg_variable
> ]
> -!27 = !{i32 4, i32 11, !19, null}
> +!27 = !MDLocation(line: 4, column: 11, scope: !19)
>  !28 = !{!"0x100\00j\005\000", !29, !3, !6} ; [ DW_TAG_auto_variable ]
>  !29 = !{!"0xb\004\0014\000", !51, !19} ; [ DW_TAG_lexical_block ]
> -!30 = !{i32 5, i32 7, !29, null}
> -!31 = !{i32 5, i32 12, !29, null}
> -!32 = !{i32 6, i32 3, !29, null}
> -!33 = !{i32 7, i32 5, !34, null}
> +!30 = !MDLocation(line: 5, column: 7, scope: !29)
> +!31 = !MDLocation(line: 5, column: 12, scope: !29)
> +!32 = !MDLocation(line: 6, column: 3, scope: !29)
> +!33 = !MDLocation(line: 7, column: 5, scope: !34)
>  !34 = !{!"0xb\006\0016\001", !51, !29} ; [ DW_TAG_lexical_block ]
> -!35 = !{i32 8, i32 3, !34, null}
> -!36 = !{i32 9, i32 9, !29, null}
> +!35 = !MDLocation(line: 8, column: 3, scope: !34)
> +!36 = !MDLocation(line: 9, column: 9, scope: !29)
>  !37 = !{!"0x100\00my_a\009\000", !29, !3, !38} ; [ DW_TAG_auto_variable ]
>  !38 = !{!"0x10\00\000\000\000\000\000", !2, null, !1} ; [
> DW_TAG_reference_type ]
> -!39 = !{i32 9, i32 5, !29, null}
> -!40 = !{i32 10, i32 3, !29, null}
> -!41 = !{i32 11, i32 3, !29, null}
> -!42 = !{i32 12, i32 1, !29, null}
> +!39 = !MDLocation(line: 9, column: 5, scope: !29)
> +!40 = !MDLocation(line: 10, column: 3, scope: !29)
> +!41 = !MDLocation(line: 11, column: 3, scope: !29)
> +!42 = !MDLocation(line: 12, column: 1, scope: !29)
>  !43 = !{!"0x101\00this\0016777218\0064", !22, !3, !13} ; [
> DW_TAG_arg_variable ]
> -!44 = !{i32 2, i32 47, !22, null}
> -!45 = !{i32 2, i32 61, !22, null}
> +!44 = !MDLocation(line: 2, column: 47, scope: !22)
> +!45 = !MDLocation(line: 2, column: 61, scope: !22)
>  !46 = !{!"0x101\00this\0016777218\0064", !25, !3, !13} ; [
> DW_TAG_arg_variable ]
> -!47 = !{i32 2, i32 47, !25, null}
> -!48 = !{i32 2, i32 54, !49, null}
> +!47 = !MDLocation(line: 2, column: 47, scope: !25)
> +!48 = !MDLocation(line: 2, column: 54, scope: !49)
>  !49 = !{!"0xb\002\0052\002", !51, !25} ; [ DW_TAG_lexical_block ]
>  !50 = !{!19, !22, !25}
>  !51 = !{!"a.cc", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-declare.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-declare.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-declare.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-declare.ll Wed Jan 14 16:27:36 2015
> @@ -41,16 +41,16 @@ declare void @llvm.stackrestore(i8*) nou
>  !10 = !{!"0xf\00\000\0064\0064\000\000", null, null, !11} ; [
> DW_TAG_pointer_type ]
>  !11 = !{!"0x26\00\000\000\000\000\000", null, null, !9} ; [
> DW_TAG_const_type ]
>  !14 = !{!"0x101\00x\0016777221\000", !5, !6, !10} ; [ DW_TAG_arg_variable
> ]
> -!15 = !{i32 5, i32 21, !5, null}
> -!16 = !{i32 7, i32 13, !17, null}
> +!15 = !MDLocation(line: 5, column: 21, scope: !5)
> +!16 = !MDLocation(line: 7, column: 13, scope: !17)
>  !17 = !{!"0xb\006\001\000", !26, !5} ; [ DW_TAG_lexical_block ]
>  !18 = !{!"0x100\00a\007\000", !17, !6, !19} ; [ DW_TAG_auto_variable ]
>  !19 = !{!"0x1\00\000\000\008\000\000", null, null, !20, !21, i32 0, null,
> null, null} ; [ DW_TAG_array_type ] [line 0, size 0, align 8, offset 0]
> [from char]
>  !20 = !{!"0x24\00char\000\008\008\000\000\006", null, null} ; [
> DW_TAG_base_type ]
>  !21 = !{!22}
>  !22 = !{!"0x21\000\00-1"}        ; [ DW_TAG_subrange_type ]
> -!23 = !{i32 7, i32 8, !17, null}
> -!24 = !{i32 9, i32 1, !17, null}
> -!25 = !{i32 8, i32 3, !17, null}
> +!23 = !MDLocation(line: 7, column: 8, scope: !17)
> +!24 = !MDLocation(line: 9, column: 1, scope: !17)
> +!25 = !MDLocation(line: 8, column: 3, scope: !17)
>  !26 = !{!"20020104-2.c", !"/Volumes/Sandbox/llvm"}
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-i128-const.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-i128-const.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-i128-const.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-i128-const.ll Wed Jan 14 16:27:36
> 2015
> @@ -26,7 +26,7 @@ declare void @llvm.dbg.value(metadata, i
>  !8 = !{!"0x16\00ti_int\0078\000\000\000\000", !14, !4, !10} ; [
> DW_TAG_typedef ]
>  !9 = !{!"0x29", !14} ; [ DW_TAG_file_type ]
>  !10 = !{!"0x24\00\000\00128\00128\000\000\005", !13, !4} ; [
> DW_TAG_base_type ]
> -!11 = !{i32 29, i32 0, !2, null}
> +!11 = !MDLocation(line: 29, scope: !2)
>  !12 = !{!3}
>  !13 = !{!"foo.c", !"/tmp"}
>  !14 = !{!"myint.h", !"/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-merge-loc-entry.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-merge-loc-entry.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-merge-loc-entry.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-merge-loc-entry.ll Wed Jan 14
> 16:27:36 2015
> @@ -55,19 +55,19 @@ declare %0 @llvm.uadd.with.overflow.i64(
>  !12 = !{!"0x16\00TItype\00160\000\000\000\000", !30, !6, !13} ; [
> DW_TAG_typedef ]
>  !13 = !{!"0x24\00\000\00128\00128\000\000\005", !29, !1} ; [
> DW_TAG_base_type ]
>  !14 = !{!"0x101\00u\001093\000", !9, !1, !12} ; [ DW_TAG_arg_variable ]
> -!15 = !{i32 1093, i32 0, !9, null}
> +!15 = !MDLocation(line: 1093, scope: !9)
>  !16 = !{i64 0}
>  !17 = !{!"0x100\00c\001095\000", !18, !1, !19} ; [ DW_TAG_auto_variable ]
>  !18 = !{!"0xb\001094\000\0013", !29, !9} ; [ DW_TAG_lexical_block ]
>  !19 = !{!"0x16\00word_type\00424\000\000\000\000", !30, !6, !20} ; [
> DW_TAG_typedef ]
>  !20 = !{!"0x24\00long int\000\0064\0064\000\000\005", !29, !1} ; [
> DW_TAG_base_type ]
> -!21 = !{i32 1095, i32 0, !18, null}
> -!22 = !{i32 1103, i32 0, !18, null}
> -!23 = !{i32 1104, i32 0, !18, null}
> -!24 = !{i32 1003, i32 0, !25, !26}
> +!21 = !MDLocation(line: 1095, scope: !18)
> +!22 = !MDLocation(line: 1103, scope: !18)
> +!23 = !MDLocation(line: 1104, scope: !18)
> +!24 = !MDLocation(line: 1003, scope: !25, inlinedAt: !26)
>  !25 = !{!"0xb\00879\000\000", !29, !0} ; [ DW_TAG_lexical_block ]
> -!26 = !{i32 1107, i32 0, !18, null}
> -!27 = !{i32 1111, i32 0, !18, null}
> +!26 = !MDLocation(line: 1107, scope: !18)
> +!27 = !MDLocation(line: 1111, scope: !18)
>  !28 = !{!0, !9}
>  !29 = !{!"foobar.c", !"/tmp"}
>  !30 = !{!"foobar.h", !"/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-prolog-end.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-prolog-end.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-prolog-end.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-prolog-end.ll Wed Jan 14 16:27:36
> 2015
> @@ -44,15 +44,15 @@ entry:
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x2e\00main\00main\00\007\000\001\000\006\000\000\007", !19, !2,
> !3, null, i32 ()* @main, null, null, null} ; [ DW_TAG_subprogram ] [line 7]
> [def] [main]
>  !7 = !{!"0x101\00i\0016777217\000", !1, !2, !5} ; [ DW_TAG_arg_variable ]
> -!8 = !{i32 1, i32 13, !1, null}
> +!8 = !MDLocation(line: 1, column: 13, scope: !1)
>  !9 = !{!"0x100\00j\002\000", !10, !2, !5} ; [ DW_TAG_auto_variable ]
>  !10 = !{!"0xb\001\0016\000", !19, !1} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 2, i32 6, !10, null}
> -!12 = !{i32 2, i32 11, !10, null}
> -!13 = !{i32 3, i32 2, !10, null}
> -!14 = !{i32 4, i32 2, !10, null}
> -!15 = !{i32 5, i32 2, !10, null}
> -!16 = !{i32 8, i32 2, !17, null}
> +!11 = !MDLocation(line: 2, column: 6, scope: !10)
> +!12 = !MDLocation(line: 2, column: 11, scope: !10)
> +!13 = !MDLocation(line: 3, column: 2, scope: !10)
> +!14 = !MDLocation(line: 4, column: 2, scope: !10)
> +!15 = !MDLocation(line: 5, column: 2, scope: !10)
> +!16 = !MDLocation(line: 8, column: 2, scope: !17)
>  !17 = !{!"0xb\007\0012\001", !19, !6} ; [ DW_TAG_lexical_block ]
>  !19 = !{!"/tmp/a.c", !"/private/tmp"}
>  !20 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll Wed Jan 14 16:27:36 2015
> @@ -28,8 +28,8 @@ entry:
>  !15 = !{!"0x24\00char\000\008\008\000\000\006", null, null} ; [
> DW_TAG_base_type ]
>  !16 = !{!17}
>  !17 = !{!"0x21\000\004294967296"} ; [ DW_TAG_subrange_type ]
> -!18 = !{i32 5, i32 3, !19, null}
> +!18 = !MDLocation(line: 5, column: 3, scope: !19)
>  !19 = !{!"0xb\004\001\000", !21, !5} ; [ DW_TAG_lexical_block ]
> -!20 = !{i32 6, i32 1, !19, null}
> +!20 = !MDLocation(line: 6, column: 1, scope: !19)
>  !21 = !{!"small.c", !"/private/tmp"}
>  !22 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-const-byref.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-const-byref.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-const-byref.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-const-byref.ll Wed Jan 14
> 16:27:36 2015
> @@ -93,14 +93,14 @@ attributes #3 = { nounwind }
>  !12 = !{i32 1, !"Debug Info Version", i32 2}
>  !13 = !{!"clang version 3.5.0 "}
>  !14 = !{i32 3}
> -!15 = !{i32 6, i32 0, !4, null}
> -!16 = !{i32 7, i32 0, !4, null}
> +!15 = !MDLocation(line: 6, scope: !4)
> +!16 = !MDLocation(line: 7, scope: !4)
>  !17 = !{i32 7}
> -!18 = !{i32 8, i32 0, !4, null}
> -!19 = !{i32 9, i32 0, !4, null}
> +!18 = !MDLocation(line: 8, scope: !4)
> +!19 = !MDLocation(line: 9, scope: !4)
>  !20 = !{!21, !21, i64 0}
>  !21 = !{!"int", !22, i64 0}
>  !22 = !{!"omnipotent char", !23, i64 0}
>  !23 = !{!"Simple C/C++ TBAA"}
> -!24 = !{i32 10, i32 0, !4, null}
> -!25 = !{i32 11, i32 0, !4, null}
> +!24 = !MDLocation(line: 10, scope: !4)
> +!25 = !MDLocation(line: 11, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-dag-combine.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-dag-combine.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-dag-combine.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-dag-combine.ll Wed Jan 14
> 16:27:36 2015
> @@ -32,16 +32,16 @@ entry:
>  !5 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !6} ; [
> DW_TAG_pointer_type ]
>  !6 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", null, !2} ; [
> DW_TAG_base_type ]
>  !7 = !{!"0x101\00ip\001\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!8 = !{i32 1, i32 42, !0, null}
> +!8 = !MDLocation(line: 1, column: 42, scope: !0)
>  !9 = !{!"0x100\00gid\003\000", !10, !1, !6} ; [ DW_TAG_auto_variable ]
>  !10 = !{!"0xb\002\001\000", !19, !0} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 3, i32 41, !10, null}
> +!11 = !MDLocation(line: 3, column: 41, scope: !10)
>  !12 = !{i32 0}
>  !13 = !{!"0x100\00idx\004\000", !10, !1, !6} ; [ DW_TAG_auto_variable ]
> -!14 = !{i32 4, i32 20, !10, null}
> -!15 = !{i32 5, i32 15, !10, null}
> -!16 = !{i32 6, i32 18, !10, null}
> -!17 = !{i32 7, i32 1, !0, null}
> +!14 = !MDLocation(line: 4, column: 20, scope: !10)
> +!15 = !MDLocation(line: 5, column: 15, scope: !10)
> +!16 = !MDLocation(line: 6, column: 18, scope: !10)
> +!17 = !MDLocation(line: 7, column: 1, scope: !0)
>  !18 = !{!0}
>  !19 = !{!"OCL6368.tmp.cl",
> !"E:\5CUsers\5Cmvillmow.AMD\5CAppData\5CLocal\5CTemp"}
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll Wed Jan
> 14 16:27:36 2015
> @@ -94,21 +94,21 @@ declare void @llvm.dbg.value(metadata, i
>  !17 = !{!"0xd\00nums\003\0032\0032\0064\000", !42, !1, !5} ; [
> DW_TAG_member ]
>  !18 = !{!"0x101\00nums\0033554439\000", !0, !1, !5, !32} ; [
> DW_TAG_arg_variable ]
>  !19 = !{!"0x34\00p\00p\00\0014\000\001", !2, !1, !11, %struct.S1* @p,
> null} ; [ DW_TAG_variable ]
> -!20 = !{i32 7, i32 13, !0, null}
> -!21 = !{i32 7, i32 21, !0, null}
> -!22 = !{i32 9, i32 3, !23, null}
> +!20 = !MDLocation(line: 7, column: 13, scope: !0)
> +!21 = !MDLocation(line: 7, column: 21, scope: !0)
> +!22 = !MDLocation(line: 9, column: 3, scope: !23)
>  !23 = !{!"0xb\008\001\000", !1, !0} ; [ DW_TAG_lexical_block ]
> -!27 = !{i32 10, i32 3, !23, null}
> -!29 = !{i32 11, i32 3, !23, null}
> +!27 = !MDLocation(line: 10, column: 3, scope: !23)
> +!29 = !MDLocation(line: 11, column: 3, scope: !23)
>  !30 = !{%struct.S1* @p}
> -!31 = !{i32 7, i32 13, !0, !32}
> -!32 = !{i32 16, i32 3, !33, null}
> +!31 = !MDLocation(line: 7, column: 13, scope: !0, inlinedAt: !32)
> +!32 = !MDLocation(line: 16, column: 3, scope: !33)
>  !33 = !{!"0xb\0015\0015\001", !1, !6} ; [ DW_TAG_lexical_block ]
>  !34 = !{i32 1}
> -!35 = !{i32 7, i32 21, !0, !32}
> -!36 = !{i32 9, i32 3, !23, !32}
> -!37 = !{i32 10, i32 3, !23, !32}
> -!38 = !{i32 17, i32 1, !33, null}
> +!35 = !MDLocation(line: 7, column: 21, scope: !0, inlinedAt: !32)
> +!36 = !MDLocation(line: 9, column: 3, scope: !23, inlinedAt: !32)
> +!37 = !MDLocation(line: 10, column: 3, scope: !23, inlinedAt: !32)
> +!38 = !MDLocation(line: 17, column: 1, scope: !33)
>  !39 = !{!0, !6}
>  !40 = !{!19}
>  !41 = !{!9, !18}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-isel.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-isel.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-isel.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-isel.ll Wed Jan 14 16:27:36
> 2015
> @@ -90,16 +90,16 @@ declare void @llvm.dbg.value(metadata, i
>  !6 = !{!"0x16\00uint\000\000\000\000\000", !20, !2, !7} ; [
> DW_TAG_typedef ]
>  !7 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", null, !2} ; [
> DW_TAG_base_type ]
>  !8 = !{!"0x101\00ip\001\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!9 = !{i32 1, i32 32, !0, null}
> +!9 = !MDLocation(line: 1, column: 32, scope: !0)
>  !10 = !{!"0x100\00tid\003\000", !11, !1, !6} ; [ DW_TAG_auto_variable ]
>  !11 = !{!"0xb\002\001\001", !1, !0} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 5, i32 24, !11, null}
> +!12 = !MDLocation(line: 5, column: 24, scope: !11)
>  !13 = !{!"0x100\00gid\003\000", !11, !1, !6} ; [ DW_TAG_auto_variable ]
> -!14 = !{i32 6, i32 25, !11, null}
> +!14 = !MDLocation(line: 6, column: 25, scope: !11)
>  !15 = !{!"0x100\00lsz\003\000", !11, !1, !6} ; [ DW_TAG_auto_variable ]
> -!16 = !{i32 7, i32 26, !11, null}
> -!17 = !{i32 9, i32 24, !11, null}
> -!18 = !{i32 10, i32 1, !0, null}
> +!16 = !MDLocation(line: 7, column: 26, scope: !11)
> +!17 = !MDLocation(line: 9, column: 24, scope: !11)
> +!18 = !MDLocation(line: 10, column: 1, scope: !0)
>  !19 = !{!0}
>  !20 = !{!"OCLlLwTXZ.cl", !"/tmp"}
>  !21 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-location.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-location.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-location.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-location.ll Wed Jan 14
> 16:27:36 2015
> @@ -63,14 +63,14 @@ declare void @llvm.dbg.value(metadata, i
>  !10 = !{!11}
>  !11 = !{!"0x24\00unsigned char\000\008\008\000\000\008", null, !2} ; [
> DW_TAG_base_type ]
>  !12 = !{!"0x101\00var\0019509\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!13 = !{i32 19509, i32 20, !0, null}
> -!14 = !{i32 18091, i32 2, !15, !17}
> +!13 = !MDLocation(line: 19509, column: 20, scope: !0)
> +!14 = !MDLocation(line: 18091, column: 2, scope: !15, inlinedAt: !17)
>  !15 = !{!"0xb\0018086\001\00748", !26, !16} ; [ DW_TAG_lexical_block ]
>  !16 =
> !{!"0x2e\00foo_bar\00foo_bar\00\0018086\001\001\000\006\00256\001\000",
> !26, !1, !3, null, null, null, null, null} ; [ DW_TAG_subprogram ] [line
> 18086] [local] [def] [scope 0] [foo_bar]
> -!17 = !{i32 19514, i32 2, !18, null}
> +!17 = !MDLocation(line: 19514, column: 2, scope: !18)
>  !18 = !{!"0xb\0019510\001\0099", !26, !0} ; [ DW_TAG_lexical_block ]
> -!22 = !{i32 18094, i32 2, !15, !17}
> -!23 = !{i32 19524, i32 1, !18, null}
> +!22 = !MDLocation(line: 18094, column: 2, scope: !15, inlinedAt: !17)
> +!23 = !MDLocation(line: 19524, column: 1, scope: !18)
>  !24 = !{!0, !6, !7, !8, !16}
>  !25 = !{!"0x29", !27} ; [ DW_TAG_file_type ]
>  !26 = !{!"/tmp/f.c", !"/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-range.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-range.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-range.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-range.ll Wed Jan 14 16:27:36
> 2015
> @@ -33,10 +33,10 @@ declare void @llvm.dbg.value(metadata, i
>  !10 = !{!"0xd\00c\002\0032\0032\000\000", !22, !1, !5} ; [ DW_TAG_member ]
>  !11 = !{!"0x100\00x\006\000", !12, !1, !5} ; [ DW_TAG_auto_variable ]
>  !12 = !{!"0xb\005\0022\000", !22, !0} ; [ DW_TAG_lexical_block ]
> -!13 = !{i32 5, i32 19, !0, null}
> -!14 = !{i32 6, i32 14, !12, null}
> -!18 = !{i32 7, i32 2, !12, null}
> -!19 = !{i32 8, i32 2, !12, null}
> +!13 = !MDLocation(line: 5, column: 19, scope: !0)
> +!14 = !MDLocation(line: 6, column: 14, scope: !12)
> +!18 = !MDLocation(line: 7, column: 2, scope: !12)
> +!19 = !MDLocation(line: 8, column: 2, scope: !12)
>  !20 = !{!0}
>  !21 = !{!6, !11}
>  !22 = !{!"bar.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg-value-terminator.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-value-terminator.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg-value-terminator.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg-value-terminator.ll Wed Jan 14
> 16:27:36 2015
> @@ -125,7 +125,7 @@ declare void @llvm.dbg.value(metadata, i
>  !9 = !{!"0x24\00char\000\008\008\000\000\006", null, !0} ; [
> DW_TAG_base_type ]
>  !10 = !{!"0x100\00a\003\000", !11, !2, !9} ; [ DW_TAG_auto_variable ]
>  !11 = !{!"0xb\002\0025\000", !20, !1} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 2, i32 13, !1, null}
> +!12 = !MDLocation(line: 2, column: 13, scope: !1)
>  !18 = !{!1}
>  !19 = !{!6, !7, !10}
>  !20 = !{!"a.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dbg_value_direct.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg_value_direct.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dbg_value_direct.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dbg_value_direct.ll Wed Jan 14 16:27:36
> 2015
> @@ -172,7 +172,7 @@ attributes #2 = { "less-precise-fpmad"="
>  !22 = !{i32 2, !"Dwarf Version", i32 3}
>  !23 = !{!"0x101\00\0016777222\000", !4, !5, !21} ; [ DW_TAG_arg_variable
> ] [line 6]
>  !24 = !{!"0x100\00a\007\008192", !4, !5, !8} ; [ DW_TAG_auto_variable ]
> [a] [line 7]
> -!25 = !{i32 7, i32 0, !4, null}
> -!26 = !{i32 8, i32 0, !4, null}
> +!25 = !MDLocation(line: 7, scope: !4)
> +!26 = !MDLocation(line: 8, scope: !4)
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>  !28 = !{!"0x102\006"} ; [ DW_TAG_expression ] [DW_OP_deref]
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-dead-local-var.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-dead-local-var.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-dead-local-var.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-dead-local-var.ll Wed Jan 14
> 16:27:36 2015
> @@ -48,4 +48,4 @@ attributes #0 = { nounwind readnone uwta
>  !18 = !{i32 2, !"Dwarf Version", i32 4}
>  !19 = !{i32 2, !"Debug Info Version", i32 2}
>  !20 = !{!"clang version 3.5.0 (trunk 209255) (llvm/trunk 209253)"}
> -!21 = !{i32 13, i32 0, !4, null}
> +!21 = !MDLocation(line: 13, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-info-access.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-info-access.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-info-access.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-info-access.ll Wed Jan 14 16:27:36
> 2015
> @@ -147,4 +147,4 @@ attributes #0 = { nounwind ssp uwtable }
>  !38 = !{i32 2, !"Dwarf Version", i32 2}
>  !39 = !{i32 2, !"Debug Info Version", i32 2}
>  !40 = !{!"clang version 3.6.0 "}
> -!41 = !{i32 35, i32 14, !30, null}
> +!41 = !MDLocation(line: 35, column: 14, scope: !30)
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-info-block-captured-self.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-info-block-captured-self.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-info-block-captured-self.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-info-block-captured-self.ll Wed
> Jan 14 16:27:36 2015
> @@ -100,12 +100,12 @@ define internal void @"__24-[Main initWi
>  !40 = !{null, !41, !27}
>  !41 = !{!"0xf\00\000\0064\0064\000\000", null, null, null} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from ]
>  !42 = !{!"0x2e\00__24-[Main initWithContext:]_block_invoke_2\00__24-[Main
> initWithContext:]_block_invoke_2\00\0035\001\001\000\006\00256\000\0035",
> !1, !1, !39, null, void (i8*, i8*)* @"__24-[Main
> initWithContext:]_block_invoke_2", null, null, !15} ; [ DW_TAG_subprogram ]
> [line 35] [local] [def] [__24-[Main initWithContext:]_block_invoke_2]
> -!84 = !{i32 33, i32 0, !38, null}
> +!84 = !MDLocation(line: 33, scope: !38)
>  !86 = !{!"0x100\00self\0041\000", !38, !1, !34} ; [ DW_TAG_auto_variable
> ] [self] [line 41]
> -!87 = !{i32 41, i32 0, !38, null}
> -!103 = !{i32 35, i32 0, !42, null}
> +!87 = !MDLocation(line: 41, scope: !38)
> +!103 = !MDLocation(line: 35, scope: !42)
>  !105 = !{!"0x100\00self\0040\000", !42, !1, !34} ; [ DW_TAG_auto_variable
> ] [self] [line 40]
> -!106 = !{i32 40, i32 0, !42, null}
> +!106 = !MDLocation(line: 40, scope: !42)
>  !107 =
> !{!"llvm/tools/clang/test/CodeGenObjC/debug-info-block-captured-self.m",
> !""}
>  !108 = !{i32 1, !"Debug Info Version", i32 2}
>  !109 = !{!"0x102\0034\0032"} ; [ DW_TAG_expression ] [DW_OP_plus 32]
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-info-blocks.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-info-blocks.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-info-blocks.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-info-blocks.ll Wed Jan 14 16:27:36
> 2015
> @@ -332,20 +332,20 @@ attributes #3 = { nounwind }
>  !59 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
>  !60 = !{!"0x101\00self\0016777262\001088", !13, !32, !61} ; [
> DW_TAG_arg_variable ] [self] [line 46]
>  !61 = !{!"0xf\00\000\0064\0064\000\000", null, null, !4} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from A]
> -!62 = !{i32 46, i32 0, !13, null}
> +!62 = !MDLocation(line: 46, scope: !13)
>  !63 = !{!"0x101\00_cmd\0033554478\0064", !13, !32, !64} ; [
> DW_TAG_arg_variable ] [_cmd] [line 46]
>  !64 = !{!"0x16\00SEL\0046\000\000\000\000", !5, null, !25} ; [
> DW_TAG_typedef ] [SEL] [line 46, size 0, align 0, offset 0] [from ]
> -!65 = !{i32 48, i32 0, !66, null}
> +!65 = !MDLocation(line: 48, scope: !66)
>  !66 = !{!"0xb\0047\000\000", !5, !13} ; [ DW_TAG_lexical_block ]
> [llvm/tools/clang/test/CodeGenObjC/debug-info-blocks.m]
>  !67 = !{}
> -!68 = !{i32 49, i32 0, !69, null}
> +!68 = !MDLocation(line: 49, scope: !69)
>  !69 = !{!"0xb\0048\000\001", !5, !66} ; [ DW_TAG_lexical_block ]
> [llvm/tools/clang/test/CodeGenObjC/debug-info-blocks.m]
> -!70 = !{i32 53, i32 0, !69, null}
> -!71 = !{i32 54, i32 0, !66, null}
> +!70 = !MDLocation(line: 53, scope: !69)
> +!71 = !MDLocation(line: 54, scope: !66)
>  !72 = !{!"0x101\00block\0016777255\000", !39, !6, !42} ; [
> DW_TAG_arg_variable ] [block] [line 39]
> -!73 = !{i32 39, i32 0, !39, null}
> -!74 = !{i32 41, i32 0, !39, null}
> -!75 = !{i32 42, i32 0, !39, null}
> +!73 = !MDLocation(line: 39, scope: !39)
> +!74 = !MDLocation(line: 41, scope: !39)
> +!75 = !MDLocation(line: 42, scope: !39)
>  !76 = !{!"0x101\00.block_descriptor\0016777265\0064", !27, !6, !77} ; [
> DW_TAG_arg_variable ] [.block_descriptor] [line 49]
>  !77 = !{!"0xf\00\000\0064\000\000\000", null, null, !78} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 0, offset 0] [from
> __block_literal_1]
>  !78 = !{!"0x13\00__block_literal_1\0049\00320\0064\000\000\000", !5, !6,
> null, !79, null, null, null} ; [ DW_TAG_structure_type ]
> [__block_literal_1] [line 49, size 320, align 64, offset 0] [def] [from ]
> @@ -358,9 +358,9 @@ attributes #3 = { nounwind }
>  !85 = !{!"0xf\00\000\0064\0064\000\000", null, null, !86} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from
> __block_descriptor_withcopydispose]
>  !86 =
> !{!"0x13\00__block_descriptor_withcopydispose\0049\000\000\000\004\000",
> !1, null, null, null, null, null, null} ; [ DW_TAG_structure_type ]
> [__block_descriptor_withcopydispose] [line 49, size 0, align 0, offset 0]
> [decl] [from ]
>  !87 = !{!"0xd\00self\0049\0064\0064\00256\000", !5, !6, !61} ; [
> DW_TAG_member ] [self] [line 49, size 64, align 64, offset 256] [from ]
> -!88 = !{i32 49, i32 0, !27, null}
> +!88 = !MDLocation(line: 49, scope: !27)
>  !89 = !{!"0x100\00self\0052\000", !27, !32, !23} ; [ DW_TAG_auto_variable
> ] [self] [line 52]
> -!90 = !{i32 52, i32 0, !27, null}
> +!90 = !MDLocation(line: 52, scope: !27)
>  !91 = !{!"0x100\00d\0050\000", !92, !6, !93} ; [ DW_TAG_auto_variable ]
> [d] [line 50]
>  !92 = !{!"0xb\0049\000\002", !5, !27} ; [ DW_TAG_lexical_block ]
> [llvm/tools/clang/test/CodeGenObjC/debug-info-blocks.m]
>  !93 = !{!"0xf\00\000\0064\0064\000\000", null, null, !94} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from
> NSMutableDictionary]
> @@ -370,15 +370,15 @@ attributes #3 = { nounwind }
>  !97 = !{!"0x13\00NSDictionary\0026\000\008\000\000\0016", !5, !6, null,
> !98, null, null, null} ; [ DW_TAG_structure_type ] [NSDictionary] [line 26,
> size 0, align 8, offset 0] [def] [from ]
>  !98 = !{!99}
>  !99 = !{!"0x1c\00\000\000\000\000\000", null, !97, !9} ; [
> DW_TAG_inheritance ] [line 0, size 0, align 0, offset 0] [from NSObject]
> -!100 = !{i32 50, i32 0, !92, null}
> -!101 = !{i32 51, i32 0, !92, null}
> +!100 = !MDLocation(line: 50, scope: !92)
> +!101 = !MDLocation(line: 51, scope: !92)
>  !102 = !{!"0x101\00\0016777268\001088", !31, !32, !30} ; [
> DW_TAG_arg_variable ] [line 52]
> -!103 = !{i32 52, i32 0, !31, null}
> +!103 = !MDLocation(line: 52, scope: !31)
>  !104 = !{!"0x101\00\0033554484\0064", !31, !32, !30} ; [
> DW_TAG_arg_variable ] [line 52]
>  !105 = !{!"0x101\00\0016777268\001088", !35, !32, !30} ; [
> DW_TAG_arg_variable ] [line 52]
> -!106 = !{i32 52, i32 0, !35, null}
> +!106 = !MDLocation(line: 52, scope: !35)
>  !107 = !{!"0x100\00a\0061\000", !36, !6, !61} ; [ DW_TAG_auto_variable ]
> [a] [line 61]
> -!108 = !{i32 61, i32 0, !36, null}
> -!109 = !{i32 62, i32 0, !36, null}
> +!108 = !MDLocation(line: 61, scope: !36)
> +!109 = !MDLocation(line: 62, scope: !36)
>  !110 = !{i32 1, !"Debug Info Version", i32 2}
>  !111 = !{!"0x102\006\0034\0032"} ; [ DW_TAG_expression ] [DW_OP_deref
> DW_OP_plus 32]
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll Wed Jan 14
> 16:27:36 2015
> @@ -86,9 +86,9 @@ declare void @llvm.dbg.declare(metadata,
>  !27 = !{!"0x34\00b\00b\00_ZN1C1bE\0015\000\001", null, !6, !9, i32*
> @_ZN1C1bE, !19} ; [ DW_TAG_variable ] [b] [line 15] [def]
>  !28 = !{!"0x34\00c\00c\00_ZN1C1cE\0016\000\001", null, !6, !9, i32*
> @_ZN1C1cE, !23} ; [ DW_TAG_variable ] [c] [line 16] [def]
>  !29 = !{!"0x100\00instance_C\0020\000", !5, !6, !13} ; [
> DW_TAG_auto_variable ] [instance_C] [line 20]
> -!30 = !{i32 20, i32 0, !5, null}
> -!31 = !{i32 21, i32 0, !5, null}
> -!32 = !{i32 22, i32 0, !5, null}
> +!30 = !MDLocation(line: 20, scope: !5)
> +!31 = !MDLocation(line: 21, scope: !5)
> +!32 = !MDLocation(line: 22, scope: !5)
>  !33 =
> !{!"/usr/local/google/home/blaikie/Development/llvm/src/tools/clang/test/CodeGenCXX/debug-info-static-member.cpp",
> !"/home/blaikie/local/Development/llvm/build/clang/x86-64/Debug/llvm"}
>  ; PRESENT verifies that static member declarations have these attributes:
>  ; external, declaration, accessibility, and either DW_AT_MIPS_linkage_name
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-loc-asan.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-loc-asan.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-loc-asan.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-loc-asan.ll Wed Jan 14 16:27:36
> 2015
> @@ -178,5 +178,5 @@ attributes #1 = { nounwind readnone }
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5.0 (209308)"}
>  !12 = !{!"0x101\00y\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [y] [line 1]
> -!13 = !{i32 2, i32 0, !4, null}
> +!13 = !MDLocation(line: 2, scope: !4)
>  !14 = !{!"0x102\006"} ; [ DW_TAG_expression ] [DW_OP_deref]
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-loc-offset.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-loc-offset.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-loc-offset.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-loc-offset.ll Wed Jan 14 16:27:36
> 2015
> @@ -138,16 +138,16 @@ attributes #2 = { "less-precise-fpmad"="
>  !19 = !{i32 2, !"Debug Info Version", i32 2}
>  !20 = !{!"clang version 3.5.0 (210479)"}
>  !21 = !{!"0x101\00b\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [b] [line 1]
> -!22 = !{i32 1, i32 0, !4, null}
> -!23 = !{i32 2, i32 0, !4, null}
> +!22 = !MDLocation(line: 1, scope: !4)
> +!23 = !MDLocation(line: 2, scope: !4)
>  !24 = !{!"0x101\00a\0016777222\008192", !14, !15, !"_ZTS1A"} ; [
> DW_TAG_arg_variable ] [a] [line 6]
> -!25 = !{i32 6, i32 0, !14, null}
> +!25 = !MDLocation(line: 6, scope: !14)
>  !26 = !{!"0x100\00z\007\000", !14, !15, !8} ; [ DW_TAG_auto_variable ]
> [z] [line 7]
> -!27 = !{i32 7, i32 0, !14, null}
> -!28 = !{i32 8, i32 0, !29, null}
> +!27 = !MDLocation(line: 7, scope: !14)
> +!28 = !MDLocation(line: 8, scope: !29)
>  !29 = !{!"0xb\008\000\000", !10, !14} ; [ DW_TAG_lexical_block ]
> [/llvm_cmake_gcc/debug-loc-offset2.cc]
> -!30 = !{i32 9, i32 0, !29, null}
> -!31 = !{i32 10, i32 0, !32, null}
> +!30 = !MDLocation(line: 9, scope: !29)
> +!31 = !MDLocation(line: 10, scope: !32)
>  !32 = !{!"0xb\0010\000\000", !10, !14} ; [ DW_TAG_lexical_block ]
> [/llvm_cmake_gcc/debug-loc-offset2.cc]
> -!33 = !{i32 11, i32 0, !32, null}
> -!34 = !{i32 12, i32 0, !14, null}
> +!33 = !MDLocation(line: 11, scope: !32)
> +!34 = !MDLocation(line: 12, scope: !14)
>
> Modified: llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/debug-ranges-offset.ll Wed Jan 14
> 16:27:36 2015
> @@ -221,8 +221,8 @@ attributes #4 = { builtin }
>  !16 = !{i32 2, !"Dwarf Version", i32 4}
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>  !18 = !{!"clang version 3.5.0 (trunk 207243) (llvm/trunk 207259)"}
> -!19 = !{i32 4, i32 0, !4, null}
> -!20 = !{i32 5, i32 0, !21, null}
> +!19 = !MDLocation(line: 4, scope: !4)
> +!20 = !MDLocation(line: 5, scope: !21)
>  !21 = !{!"0xb\005\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/foo.cpp]
>  !22 = !{!"branch_weights", i32 1000, i32 1}
>  !23 = !{!24, !24, i64 0}
> @@ -230,12 +230,12 @@ attributes #4 = { builtin }
>  !25 = !{!"omnipotent char", !26, i64 0}
>  !26 = !{!"Simple C/C++ TBAA"}
>  !27 = !{!"branch_weights", i32 1, i32 1000}
> -!28 = !{i32 6, i32 0, !21, null}
> -!29 = !{i32 7, i32 0, !4, null}
> -!30 = !{i32 4, i32 0, !4, !31}
> -!31 = !{i32 10, i32 0, !13, null}
> +!28 = !MDLocation(line: 6, scope: !21)
> +!29 = !MDLocation(line: 7, scope: !4)
> +!30 = !MDLocation(line: 4, scope: !4, inlinedAt: !31)
> +!31 = !MDLocation(line: 10, scope: !13)
>  !32 = !{!"0x100\00p\004\000", !4, !5, !10, !31} ; [ DW_TAG_auto_variable
> ] [p] [line 4]
> -!33 = !{i32 5, i32 0, !21, !31}
> -!34 = !{i32 6, i32 0, !21, !31}
> -!35 = !{i32 7, i32 0, !4, !31}
> -!36 = !{i32 11, i32 0, !13, null}
> +!33 = !MDLocation(line: 5, scope: !21, inlinedAt: !31)
> +!34 = !MDLocation(line: 6, scope: !21, inlinedAt: !31)
> +!35 = !MDLocation(line: 7, scope: !4, inlinedAt: !31)
> +!36 = !MDLocation(line: 11, scope: !13)
>
> Modified: llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll Wed Jan 14
> 16:27:36 2015
> @@ -127,18 +127,18 @@ attributes #4 = { "less-precise-fpmad"="
>  !32 = !{i32 2, !"Dwarf Version", i32 4}
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>  !34 = !{!"clang version 3.5.0 (trunk 203673) (llvm/trunk 203681)"}
> -!35 = !{i32 9, i32 0, !9, null}
> +!35 = !MDLocation(line: 9, scope: !9)
>  !36 = !{!"0x101\00this\0016777216\001088", !19, null, !37} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !37 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS3foo"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS3foo]
> -!38 = !{i32 0, i32 0, !19, null}
> -!39 = !{i32 5, i32 0, !19, null}
> +!38 = !MDLocation(line: 0, scope: !19)
> +!39 = !MDLocation(line: 5, scope: !19)
>  !40 = !{!"0x101\00this\0016777216\001088", !13, null, !37} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!41 = !{i32 0, i32 0, !13, null}
> -!42 = !{i32 5, i32 0, !43, null}
> +!41 = !MDLocation(line: 0, scope: !13)
> +!42 = !MDLocation(line: 5, scope: !43)
>  !43 = !{!"0xb\005\000\000", !1, !13} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/foo.cc]
> -!44 = !{i32 5, i32 0, !13, null}
> +!44 = !MDLocation(line: 5, scope: !13)
>  !45 = !{!"0x101\00this\0016777216\001088", !22, null, !46} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !46 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS4base"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS4base]
> -!47 = !{i32 0, i32 0, !22, null}
> -!48 = !{i32 1, i32 0, !22, null}
> -!49 = !{i32 1, i32 0, !28, null}
> +!47 = !MDLocation(line: 0, scope: !22)
> +!48 = !MDLocation(line: 1, scope: !22)
> +!49 = !MDLocation(line: 1, scope: !28)
>
> Modified: llvm/trunk/test/DebugInfo/X86/discriminator.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/discriminator.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/discriminator.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/discriminator.ll Wed Jan 14 16:27:36 2015
> @@ -51,11 +51,11 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5 "}
> -!10 = !{i32 2, i32 0, !11, null}
> +!10 = !MDLocation(line: 2, scope: !11)
>  !11 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [./discriminator.c]
> -!12 = !{i32 3, i32 0, !4, null}
> -!13 = !{i32 4, i32 0, !4, null}
> -!14 = !{i32 2, i32 0, !15, null}
> +!12 = !MDLocation(line: 3, scope: !4)
> +!13 = !MDLocation(line: 4, scope: !4)
> +!14 = !MDLocation(line: 2, scope: !15)
>  !15 = !{!"0xb\0042", !1, !4} ; [ DW_TAG_lexical_block ]
> [./discriminator.c]
>
>  ; CHECK: Address            Line   Column File   ISA Discriminator Flags
>
> Modified: llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll Wed Jan
> 14 16:27:36 2015
> @@ -80,9 +80,9 @@ attributes #2 = { nounwind readnone }
>  !17 = !{!18}
>  !18 = !{!"0x34\00global\00global\00\001\000\001", null, !5, !8, i32*
> @global, null} ; [ DW_TAG_variable ] [global] [line 1] [def]
>  !19 = !{i32 2, !"Dwarf Version", i32 4}
> -!20 = !{i32 2, i32 0, !4, null}
> -!21 = !{i32 3, i32 0, !11, null}
> -!22 = !{i32 6, i32 0, !14, null}
> +!20 = !MDLocation(line: 2, scope: !4)
> +!21 = !MDLocation(line: 3, scope: !11)
> +!22 = !MDLocation(line: 6, scope: !14)
>  !23 = !{!"int", !24}
>  !24 = !{!"omnipotent char", !25}
>  !25 = !{!"Simple C/C++ TBAA"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll Wed Jan 14 16:27:36 2015
> @@ -76,6 +76,6 @@ entry:
>  !11 = !{!"0x34\00some_other\00some_other\00\003\000\001", null, !5, !10,
> i32* @some_other, null} ; [ DW_TAG_variable ] [some_other] [line 3] [def]
>  !12 = !{!"0x34\00some_bss\00some_bss\00\002\000\001", null, !5, !10, i32*
> @some_bss, null} ; [ DW_TAG_variable ] [some_bss] [line 2] [def]
>  !13 = !{i32 2, !"Dwarf Version", i32 4}
> -!14 = !{i32 7, i32 0, !4, null}
> -!15 = !{i32 8, i32 0, !4, null}
> +!14 = !MDLocation(line: 7, scope: !4)
> +!15 = !MDLocation(line: 8, scope: !4)
>  !16 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll Wed Jan 14
> 16:27:36 2015
> @@ -124,12 +124,12 @@ attributes #1 = { nounwind readnone }
>  !27 =
> !{!"0x34\00global_namespace_variable\00global_namespace_variable\00_ZN2ns25global_namespace_variableE\0027\000\001",
> !21, !4, !11, i32* @_ZN2ns25global_namespace_variableE, null} ; [
> DW_TAG_variable ] [global_namespace_variable] [line 27] [def]
>  !28 = !{!"0x101\00this\0016777225\001088", !3, !4, !29} ; [
> DW_TAG_arg_variable ] [this] [line 9]
>  !29 = !{!"0xf\00\000\0064\0064\000\000", null, null, !8} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from C]
> -!30 = !{i32 9, i32 0, !3, null}
> -!31 = !{i32 10, i32 0, !3, null}
> -!32 = !{i32 11, i32 0, !3, null}
> -!33 = !{i32 14, i32 0, !18, null}
> -!34 = !{i32 20, i32 0, !19, null}
> -!35 = !{i32 25, i32 0, !20, null}
> -!36 = !{i32 26, i32 0, !20, null}
> +!30 = !MDLocation(line: 9, scope: !3)
> +!31 = !MDLocation(line: 10, scope: !3)
> +!32 = !MDLocation(line: 11, scope: !3)
> +!33 = !MDLocation(line: 14, scope: !18)
> +!34 = !MDLocation(line: 20, scope: !19)
> +!35 = !MDLocation(line: 25, scope: !20)
> +!36 = !MDLocation(line: 26, scope: !20)
>  !37 = !{!"dwarf-public-names.cpp", !"/usr2/kparzysz/s.hex/t"}
>  !38 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/dwarf-pubnames-split.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dwarf-pubnames-split.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/dwarf-pubnames-split.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/dwarf-pubnames-split.ll Wed Jan 14
> 16:27:36 2015
> @@ -34,5 +34,5 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 3}
> -!10 = !{i32 2, i32 0, !4, null}
> +!10 = !MDLocation(line: 2, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/elf-names.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/elf-names.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/elf-names.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/elf-names.ll Wed Jan 14 16:27:36 2015
> @@ -94,19 +94,19 @@ declare void @llvm.dbg.value(metadata, i
>  !32 = !{!34, !35}
>  !34 = !{!"0x101\00this\0016777235\001088", !31, !6, !30} ; [
> DW_TAG_arg_variable ] [this] [line 19]
>  !35 = !{!"0x101\00d\0033554451\000", !31, !6, !23} ; [
> DW_TAG_arg_variable ] [d] [line 19]
> -!36 = !{i32 12, i32 0, !5, null}
> -!37 = !{i32 13, i32 0, !38, null}
> +!36 = !MDLocation(line: 12, scope: !5)
> +!37 = !MDLocation(line: 13, scope: !38)
>  !38 = !{!"0xb\0012\000\000", !6, !5} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/foo.cpp]
> -!42 = !{i32 14, i32 0, !38, null}
> -!43 = !{i32 15, i32 0, !38, null}
> -!44 = !{i32 16, i32 0, !38, null}
> -!45 = !{i32 17, i32 0, !38, null}
> -!46 = !{i32 19, i32 0, !31, null}
> -!47 = !{i32 20, i32 0, !48, null}
> +!42 = !MDLocation(line: 14, scope: !38)
> +!43 = !MDLocation(line: 15, scope: !38)
> +!44 = !MDLocation(line: 16, scope: !38)
> +!45 = !MDLocation(line: 17, scope: !38)
> +!46 = !MDLocation(line: 19, scope: !31)
> +!47 = !MDLocation(line: 20, scope: !48)
>  !48 = !{!"0xb\0019\000\001", !6, !31} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/foo.cpp]
> -!49 = !{i32 21, i32 0, !48, null}
> -!50 = !{i32 22, i32 0, !48, null}
> -!51 = !{i32 23, i32 0, !48, null}
> -!52 = !{i32 24, i32 0, !48, null}
> +!49 = !MDLocation(line: 21, scope: !48)
> +!50 = !MDLocation(line: 22, scope: !48)
> +!51 = !MDLocation(line: 23, scope: !48)
> +!52 = !MDLocation(line: 24, scope: !48)
>  !53 = !{!"foo.cpp", !"/usr/local/google/home/echristo"}
>  !54 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/empty-and-one-elem-array.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/empty-and-one-elem-array.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/empty-and-one-elem-array.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/empty-and-one-elem-array.ll Wed Jan 14
> 16:27:36 2015
> @@ -80,7 +80,7 @@ declare void @llvm.dbg.declare(metadata,
>  !16 = !{!"0x1\00\000\0032\0032\000\000", null, null, !9, !17, i32 0,
> null, null, null} ; [ DW_TAG_array_type ] [line 0, size 32, align 32,
> offset 0] [from int]
>  !17 = !{!18}
>  !18 = !{!"0x21\000\001"} ; [ DW_TAG_subrange_type ] [0, 1]
> -!19 = !{i32 12, i32 0, !11, null}
> +!19 = !MDLocation(line: 12, scope: !11)
>  !20 = !{!"0x100\00my_bar\0013\000", !11, !6, !21} ; [
> DW_TAG_auto_variable ] [my_bar] [line 13]
>  !21 = !{!"0x13\00bar\006\0032\0032\000\000\000", !32, null, null, !22,
> null, i32 0, null} ; [ DW_TAG_structure_type ] [bar] [line 6, size 32,
> align 32, offset 0] [def] [from ]
>  !22 = !{!23, !24}
> @@ -89,9 +89,9 @@ declare void @llvm.dbg.declare(metadata,
>  !25 = !{!"0x1\00\000\000\0032\000\000", null, null, !9, !26, i32 0, null,
> null, null} ; [ DW_TAG_array_type ] [line 0, size 0, align 32, offset 0]
> [from int]
>  !26 = !{!27}
>  !27 = !{!"0x21\000\000"} ; [ DW_TAG_subrange_type ] [0, 0]
> -!28 = !{i32 13, i32 0, !11, null}
> -!29 = !{i32 15, i32 0, !11, null}
> -!30 = !{i32 16, i32 0, !11, null}
> -!31 = !{i32 17, i32 0, !11, null}
> +!28 = !MDLocation(line: 13, scope: !11)
> +!29 = !MDLocation(line: 15, scope: !11)
> +!30 = !MDLocation(line: 16, scope: !11)
> +!31 = !MDLocation(line: 17, scope: !11)
>  !32 = !{!"test.c", !"/Volumes/Sandbox/llvm"}
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/ending-run.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/ending-run.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/ending-run.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/ending-run.ll Wed Jan 14 16:27:36 2015
> @@ -38,11 +38,11 @@ declare void @llvm.dbg.declare(metadata,
>  !8 = !{!9, !9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
>  !12 = !{!"0x101\00x\0016777221\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> -!13 = !{i32 5, i32 5, !5, null}
> +!13 = !MDLocation(line: 5, column: 5, scope: !5)
>  !14 = !{!"0x100\00y\008\000", !15, !6, !9} ; [ DW_TAG_auto_variable ]
>  !15 = !{!"0xb\007\001\000", !19, !5} ; [ DW_TAG_lexical_block ]
> -!16 = !{i32 8, i32 9, !15, null}
> -!17 = !{i32 8, i32 18, !15, null}
> -!18 = !{i32 9, i32 5, !15, null}
> +!16 = !MDLocation(line: 8, column: 9, scope: !15)
> +!17 = !MDLocation(line: 8, column: 18, scope: !15)
> +!18 = !MDLocation(line: 9, column: 5, scope: !15)
>  !19 = !{!"ending-run.c", !"/Users/echristo/tmp"}
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/fission-inline.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/fission-inline.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/fission-inline.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/fission-inline.ll Wed Jan 14 16:27:36
> 2015
> @@ -112,8 +112,8 @@ attributes #1 = { "less-precise-fpmad"="
>  !22 = !{i32 2, !"Dwarf Version", i32 4}
>  !23 = !{i32 2, !"Debug Info Version", i32 2}
>  !24 = !{!"clang version 3.6.0 "}
> -!25 = !{i32 17, i32 5, !20, null}
> -!26 = !{i32 11, i32 3, !11, !27}
> -!27 = !{i32 18, i32 5, !20, null}
> -!28 = !{i32 12, i32 3, !11, !27}
> -!29 = !{i32 21, i32 1, !10, null}
> +!25 = !MDLocation(line: 17, column: 5, scope: !20)
> +!26 = !MDLocation(line: 11, column: 3, scope: !11, inlinedAt: !27)
> +!27 = !MDLocation(line: 18, column: 5, scope: !20)
> +!28 = !MDLocation(line: 12, column: 3, scope: !11, inlinedAt: !27)
> +!29 = !MDLocation(line: 21, column: 1, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/X86/fission-ranges.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/fission-ranges.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/fission-ranges.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/fission-ranges.ll Wed Jan 14 16:27:36
> 2015
> @@ -180,21 +180,21 @@ attributes #1 = { nounwind readnone }
>  !24 = !{!"0xb\007\000\000", !1, !8} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/small.c]
>  !25 = !{!"0xf\00\000\0064\0064\000\000", null, null, !11} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from int]
>  !26 = !{i32 2, !"Dwarf Version", i32 4}
> -!27 = !{i32 20, i32 0, !4, null}
> -!28 = !{i32 21, i32 0, !4, null}
> +!27 = !MDLocation(line: 20, scope: !4)
> +!28 = !MDLocation(line: 21, scope: !4)
>  !29 = !{i32 1}
> -!30 = !{i32 2, i32 0, !8, null}
> -!31 = !{i32 7, i32 0, !24, null}
> -!32 = !{i32 13, i32 0, !20, null}
> +!30 = !MDLocation(line: 2, scope: !8)
> +!31 = !MDLocation(line: 7, scope: !24)
> +!32 = !MDLocation(line: 13, scope: !20)
>  !33 = !{!34, !34, i64 0}
>  !34 = !{!"int", !35, i64 0}
>  !35 = !{!"omnipotent char", !36, i64 0}
>  !36 = !{!"Simple C/C++ TBAA"}
> -!37 = !{i32 8, i32 0, !23, null}
> -!38 = !{i32 9, i32 0, !22, null}
> -!39 = !{i32 10, i32 0, !21, null}
> -!40 = !{i32 12, i32 0, !20, null}
> +!37 = !MDLocation(line: 8, scope: !23)
> +!38 = !MDLocation(line: 9, scope: !22)
> +!39 = !MDLocation(line: 10, scope: !21)
> +!40 = !MDLocation(line: 12, scope: !20)
>  !41 = !{i32* @c}
> -!42 = !{i32 15, i32 0, !8, null}
> +!42 = !MDLocation(line: 15, scope: !8)
>  !43 = !{i32 1, !"Debug Info Version", i32 2}
>  !44 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/X86/formal_parameter.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/formal_parameter.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/formal_parameter.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/formal_parameter.ll Wed Jan 14 16:27:36
> 2015
> @@ -73,12 +73,12 @@ attributes #3 = { nounwind }
>  !11 = !{i32 2, !"Dwarf Version", i32 2}
>  !12 = !{i32 1, !"Debug Info Version", i32 2}
>  !13 = !{!"clang version 3.5.0 "}
> -!14 = !{i32 1, i32 0, !4, null}
> +!14 = !MDLocation(line: 1, scope: !4)
>  !15 = !{!16, !16, i64 0}
>  !16 = !{!"int", !17, i64 0}
>  !17 = !{!"omnipotent char", !18, i64 0}
>  !18 = !{!"Simple C/C++ TBAA"}
> -!19 = !{i32 3, i32 0, !4, null}
> -!20 = !{i32 4, i32 0, !21, null}
> +!19 = !MDLocation(line: 3, scope: !4)
> +!20 = !MDLocation(line: 4, scope: !21)
>  !21 = !{!"0xb\004\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [formal_parameter.c]
> -!22 = !{i32 5, i32 0, !4, null}
> +!22 = !MDLocation(line: 5, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll Wed Jan 14 16:27:36
> 2015
> @@ -267,11 +267,11 @@ attributes #1 = { nounwind readnone }
>  !45 = !{!"clang version 3.5 "}
>  !46 = !{!"0x100\00b\007\000", !22, !23, !47} ; [ DW_TAG_auto_variable ]
> [b] [line 7]
>  !47 = !{!"0x13\00baz\006\008\008\000\000\000", !1, !22, null, !2, null,
> null, null} ; [ DW_TAG_structure_type ] [baz] [line 6, size 8, align 8,
> offset 0] [def] [from ]
> -!48 = !{i32 7, i32 0, !22, null}
> -!49 = !{i32 8, i32 0, !22, null}
> -!50 = !{i32 29, i32 0, !26, null}
> +!48 = !MDLocation(line: 7, scope: !22)
> +!49 = !MDLocation(line: 8, scope: !22)
> +!50 = !MDLocation(line: 29, scope: !26)
>  !51 = !{!"0x101\00this\0016777216\001088", !27, null, !52} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !52 = !{!"0xf\00\000\0064\0064\000\000", null, null, !28} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from walrus]
> -!53 = !{i32 0, i32 0, !27, null}
> -!54 = !{i32 25, i32 0, !27, null}
> -!55 = !{i32 25, i32 0, !36, null}
> +!53 = !MDLocation(line: 0, scope: !27)
> +!54 = !MDLocation(line: 25, scope: !27)
> +!55 = !MDLocation(line: 25, scope: !36)
>
> Modified: llvm/trunk/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/ghost-sdnode-dbgvalues.ll Wed Jan 14
> 16:27:36 2015
> @@ -86,20 +86,20 @@ attributes #1 = { nounwind readnone }
>  !15 = !{!"clang version 3.6.0 "}
>  !16 = !{!"0x101\00a\0016777219\000", !8, !9, !12} ; [ DW_TAG_arg_variable
> ] [a] [line 3]
>  !17 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!18 = !{i32 3, i32 13, !8, null}
> -!19 = !{i32 4, i32 5, !8, null}
> +!18 = !MDLocation(line: 3, column: 13, scope: !8)
> +!19 = !MDLocation(line: 4, column: 5, scope: !8)
>  !20 = !{!"0x100\00b\004\000", !8, !9, !12} ; [ DW_TAG_auto_variable ] [b]
> [line 4]
> -!21 = !{i32 4, i32 9, !8, null}
> -!22 = !{i32 5, i32 5, !8, null}
> +!21 = !MDLocation(line: 4, column: 9, scope: !8)
> +!22 = !MDLocation(line: 5, column: 5, scope: !8)
>  !23 = !{!"0x100\00c\005\000", !8, !9, !12} ; [ DW_TAG_auto_variable ] [c]
> [line 5]
> -!24 = !{i32 5, i32 9, !8, null}
> -!25 = !{i32 6, i32 5, !8, null}
> +!24 = !MDLocation(line: 5, column: 9, scope: !8)
> +!25 = !MDLocation(line: 6, column: 5, scope: !8)
>  !26 = !{!"0x100\00d\006\000", !8, !9, !12} ; [ DW_TAG_auto_variable ] [d]
> [line 6]
> -!27 = !{i32 6, i32 9, !8, null}
> -!28 = !{i32 7, i32 5, !8, null}
> +!27 = !MDLocation(line: 6, column: 9, scope: !8)
> +!28 = !MDLocation(line: 7, column: 5, scope: !8)
>  !29 = !{!"0x100\00e\007\000", !8, !9, !12} ; [ DW_TAG_auto_variable ] [e]
> [line 7]
> -!30 = !{i32 7, i32 9, !8, null}
> -!31 = !{i32 8, i32 5, !8, null}
> +!30 = !MDLocation(line: 7, column: 9, scope: !8)
> +!31 = !MDLocation(line: 8, column: 5, scope: !8)
>  !32 = !{!"0x100\00f\008\000", !8, !9, !12} ; [ DW_TAG_auto_variable ] [f]
> [line 8]
> -!33 = !{i32 8, i32 9, !8, null}
> -!34 = !{i32 9, i32 5, !8, null}
> +!33 = !MDLocation(line: 8, column: 9, scope: !8)
> +!34 = !MDLocation(line: 9, column: 5, scope: !8)
>
> Modified: llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll Wed Jan 14 16:27:36
> 2015
> @@ -322,12 +322,12 @@ attributes #1 = { nounwind readnone }
>  !49 = !{!"clang version 3.5.0 "}
>  !50 = !{!"0x101\00this\0016777216\001088", !20, null, !51} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !51 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1C"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1C]
> -!52 = !{i32 0, i32 0, !20, null}
> -!53 = !{i32 10, i32 0, !20, null}
> -!54 = !{i32 11, i32 0, !20, null}
> -!55 = !{i32 14, i32 0, !21, null}
> -!56 = !{i32 20, i32 0, !22, null}
> -!57 = !{i32 25, i32 0, !24, null}
> -!58 = !{i32 26, i32 0, !24, null}
> -!59 = !{i32 39, i32 0, !27, null}
> -!60 = !{i32 55, i32 0, !31, null}
> +!52 = !MDLocation(line: 0, scope: !20)
> +!53 = !MDLocation(line: 10, scope: !20)
> +!54 = !MDLocation(line: 11, scope: !20)
> +!55 = !MDLocation(line: 14, scope: !21)
> +!56 = !MDLocation(line: 20, scope: !22)
> +!57 = !MDLocation(line: 25, scope: !24)
> +!58 = !MDLocation(line: 26, scope: !24)
> +!59 = !MDLocation(line: 39, scope: !27)
> +!60 = !MDLocation(line: 55, scope: !31)
>
> Modified: llvm/trunk/test/DebugInfo/X86/inline-member-function.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/inline-member-function.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/inline-member-function.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/inline-member-function.ll Wed Jan 14
> 16:27:36 2015
> @@ -88,9 +88,9 @@ attributes #1 = { nounwind readnone }
>  !20 = !{i32 2, !"Dwarf Version", i32 4}
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>  !22 = !{!"clang version 3.5.0 "}
> -!23 = !{i32 8, i32 0, !13, null}
> +!23 = !MDLocation(line: 8, scope: !13)
>  !24 = !{!"0x101\00this\0016777216\001088", !17, null, !25} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !25 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS3foo"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS3foo]
> -!26 = !{i32 0, i32 0, !17, !23}
> +!26 = !MDLocation(line: 0, scope: !17, inlinedAt: !23)
>  !27 = !{!"0x101\00x\0033554434\000", !17, !14, !9} ; [
> DW_TAG_arg_variable ] [x] [line 2]
> -!28 = !{i32 2, i32 0, !17, !23}
> +!28 = !MDLocation(line: 2, scope: !17, inlinedAt: !23)
>
> Modified: llvm/trunk/test/DebugInfo/X86/inline-seldag-test.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/inline-seldag-test.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/inline-seldag-test.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/inline-seldag-test.ll Wed Jan 14
> 16:27:36 2015
> @@ -65,9 +65,9 @@ attributes #1 = { nounwind readnone }
>  !14 = !{!"clang version 3.5.0 "}
>  !15 = !{!"0x100\00x\005\000", !4, !5, !16} ; [ DW_TAG_auto_variable ] [x]
> [line 5]
>  !16 = !{!"0x35\00\000\000\000\000\000", null, null, !11} ; [
> DW_TAG_volatile_type ] [line 0, size 0, align 0, offset 0] [from int]
> -!17 = !{i32 5, i32 0, !4, null}
> -!18 = !{i32 6, i32 7, !4, null}
> +!17 = !MDLocation(line: 5, scope: !4)
> +!18 = !MDLocation(line: 6, column: 7, scope: !4)
>  !19 = !{!"0x101\00y\0016777217\000", !8, !5, !11} ; [ DW_TAG_arg_variable
> ] [y] [line 1]
> -!20 = !{i32 1, i32 0, !8, !18}
> -!21 = !{i32 2, i32 0, !8, !18}
> -!22 = !{i32 7, i32 0, !4, null}
> +!20 = !MDLocation(line: 1, scope: !8, inlinedAt: !18)
> +!21 = !MDLocation(line: 2, scope: !8, inlinedAt: !18)
> +!22 = !MDLocation(line: 7, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/instcombine-instrinsics.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/instcombine-instrinsics.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/instcombine-instrinsics.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/instcombine-instrinsics.ll Wed Jan 14
> 16:27:36 2015
> @@ -72,8 +72,8 @@ attributes #1 = { nounwind readnone }
>  !15 = !{!16}
>  !16 = !{!"0xd\00i\002\0064\0064\000\000", !1, !14, !17} ; [ DW_TAG_member
> ] [i] [line 2, size 64, align 64, offset 0] [from long int]
>  !17 = !{!"0x24\00long int\000\0064\0064\000\000\005", null, null} ; [
> DW_TAG_base_type ] [long int] [line 0, size 64, align 64, offset 0, enc
> DW_ATE_signed]
> -!18 = !{i32 8, i32 0, !4, null}
> -!19 = !{i32 9, i32 0, !4, null}
> -!20 = !{i32 10, i32 0, !4, null}
> -!21 = !{i32 11, i32 0, !4, null}
> -!22 = !{i32 12, i32 0, !4, null}
> +!18 = !MDLocation(line: 8, scope: !4)
> +!19 = !MDLocation(line: 9, scope: !4)
> +!20 = !MDLocation(line: 10, scope: !4)
> +!21 = !MDLocation(line: 11, scope: !4)
> +!22 = !MDLocation(line: 12, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/lexical_block.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/lexical_block.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/lexical_block.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/lexical_block.ll Wed Jan 14 16:27:36 2015
> @@ -62,6 +62,6 @@ attributes #1 = { nounwind readnone }
>  !11 = !{!"0x100\00i\002\000", !12, !5, !13} ; [ DW_TAG_auto_variable ]
> [i] [line 2]
>  !12 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/lexical_block.cpp]
>  !13 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
> -!14 = !{i32 2, i32 0, !12, null}
> -!15 = !{i32 3, i32 0, !12, null}
> -!16 = !{i32 4, i32 0, !4, null}
> +!14 = !MDLocation(line: 2, scope: !12)
> +!15 = !MDLocation(line: 3, scope: !12)
> +!16 = !MDLocation(line: 4, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/line-info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/line-info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/line-info.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/line-info.ll Wed Jan 14 16:27:36 2015
> @@ -53,8 +53,8 @@ attributes #1 = { nounwind readnone }
>  !12 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !13, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !13 = !{!9}
>  !14 = !{!"0x101\00x\0016777217\000", !4, !6, !9} ; [ DW_TAG_arg_variable
> ] [x] [line 1]
> -!15 = !{i32 1, i32 0, !4, null}
> -!16 = !{i32 2, i32 0, !4, null}
> -!17 = !{i32 3, i32 0, !18, null}
> +!15 = !MDLocation(line: 1, scope: !4)
> +!16 = !MDLocation(line: 2, scope: !4)
> +!17 = !MDLocation(line: 3, scope: !18)
>  !18 = !{!"0xb\000", !11, !10} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/blaikie/dev/scratch/list0.c]
>  !19 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/linkage-name.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/linkage-name.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/linkage-name.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/linkage-name.ll Wed Jan 14 16:27:36 2015
> @@ -43,10 +43,10 @@ declare void @llvm.dbg.declare(metadata,
>  !20 = !{!"0x34\00a\00a\00\009\000\001", null, !6, !11, %class.A* @a,
> null} ; [ DW_TAG_variable ]
>  !21 = !{!"0x101\00this\0016777221\0064", !5, !6, !22} ; [
> DW_TAG_arg_variable ]
>  !22 = !{!"0xf\00\000\0064\0064\000\000", null, null, !11} ; [
> DW_TAG_pointer_type ]
> -!23 = !{i32 5, i32 8, !5, null}
> +!23 = !MDLocation(line: 5, column: 8, scope: !5)
>  !24 = !{!"0x101\00b\0033554437\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> -!25 = !{i32 5, i32 14, !5, null}
> -!26 = !{i32 6, i32 4, !27, null}
> +!25 = !MDLocation(line: 5, column: 14, scope: !5)
> +!26 = !MDLocation(line: 6, column: 4, scope: !27)
>  !27 = !{!"0xb\005\0017\000", !6, !5} ; [ DW_TAG_lexical_block ]
>  !28 = !{!"foo.cpp", !"/Users/echristo"}
>  !29 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/low-pc-cu.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/low-pc-cu.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/low-pc-cu.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/low-pc-cu.ll Wed Jan 14 16:27:36 2015
> @@ -43,4 +43,4 @@ attributes #0 = { nounwind uwtable "less
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 1, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5.0 (trunk 204164) (llvm/trunk 204183)"}
> -!11 = !{i32 1, i32 0, !4, null}
> +!11 = !MDLocation(line: 1, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll Wed Jan 14 16:27:36
> 2015
> @@ -167,20 +167,20 @@ attributes #1 = { nounwind readnone }
>  !61 = !{!62}
>  !62 = !{!"0x21\000\0031"}       ; [ DW_TAG_subrange_type ] [0, 30]
>  !63 = !{!"0x34\00PtrGlbNext\00PtrGlbNext\00\00178\000\001", null, !3,
> !47, %struct.Record** @PtrGlbNext, null} ; [ DW_TAG_variable ] [PtrGlbNext]
> [line 178] [def]
> -!64 = !{i32 181, i32 0, !12, null}
> -!65 = !{i32 182, i32 0, !12, null}
> -!66 = !{i32 183, i32 0, !12, null}
> -!67 = !{i32 184, i32 0, !12, null}
> -!68 = !{i32 189, i32 0, !12, null}
> -!69 = !{i32 190, i32 0, !12, null}
> -!73 = !{i32 191, i32 0, !12, null}
> -!74 = !{i32 192, i32 0, !12, null}
> -!75 = !{i32 193, i32 0, !76, null}
> +!64 = !MDLocation(line: 181, scope: !12)
> +!65 = !MDLocation(line: 182, scope: !12)
> +!66 = !MDLocation(line: 183, scope: !12)
> +!67 = !MDLocation(line: 184, scope: !12)
> +!68 = !MDLocation(line: 189, scope: !12)
> +!69 = !MDLocation(line: 190, scope: !12)
> +!73 = !MDLocation(line: 191, scope: !12)
> +!74 = !MDLocation(line: 192, scope: !12)
> +!75 = !MDLocation(line: 193, scope: !76)
>  !76 = !{!"0xb\00193\000\000", !82, !12} ; [ DW_TAG_lexical_block ]
> [/Users/manmanren/test-Nov/rdar_13183203/test2/dry.c]
> -!77 = !{i32 194, i32 0, !76, null}
> -!78 = !{i32 195, i32 0, !12, null}
> -!79 = !{i32 196, i32 0, !12, null}
> -!80 = !{i32 197, i32 0, !12, null}
> -!81 = !{i32 198, i32 0, !12, null}
> +!77 = !MDLocation(line: 194, scope: !76)
> +!78 = !MDLocation(line: 195, scope: !12)
> +!79 = !MDLocation(line: 196, scope: !12)
> +!80 = !MDLocation(line: 197, scope: !12)
> +!81 = !MDLocation(line: 198, scope: !12)
>  !82 = !{!"dry.c", !"/Users/manmanren/test-Nov/rdar_13183203/test2"}
>  !83 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/nodebug_with_debug_loc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/nodebug_with_debug_loc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/nodebug_with_debug_loc.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/nodebug_with_debug_loc.ll Wed Jan 14
> 16:27:36 2015
> @@ -123,12 +123,12 @@ attributes #3 = { nounwind }
>  !23 = !{i32 2, !"Dwarf Version", i32 4}
>  !24 = !{i32 2, !"Debug Info Version", i32 2}
>  !25 = !{!"clang version 3.5.0 "}
> -!26 = !{i32 15, i32 0, !11, null}
> +!26 = !MDLocation(line: 15, scope: !11)
>  !27 = !{!"0x101\00lhs\0016777229\000", !17, !12, !20, !28} ; [
> DW_TAG_arg_variable ] [lhs] [line 13]
> -!28 = !{i32 16, i32 0, !11, null}
> -!29 = !{i32 13, i32 0, !17, !28}
> -!30 = !{i32 17, i32 0, !11, null}
> -!31 = !{i32 18, i32 0, !11, null}
> +!28 = !MDLocation(line: 16, scope: !11)
> +!29 = !MDLocation(line: 13, scope: !17, inlinedAt: !28)
> +!30 = !MDLocation(line: 17, scope: !11)
> +!31 = !MDLocation(line: 18, scope: !11)
>  !32 = !{!33, !34, i64 0}
>  !33 = !{!"_ZTS6string", !34, i64 0}
>  !34 = !{!"any pointer", !35, i64 0}
>
> Modified: llvm/trunk/test/DebugInfo/X86/objc-property-void.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/objc-property-void.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/objc-property-void.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/objc-property-void.ll Wed Jan 14
> 16:27:36 2015
> @@ -98,7 +98,7 @@ attributes #1 = { nounwind readnone }
>  !23 = !{!""}
>  !24 = !{!"0x101\00self\0016777216\001088", !10, null, !25} ; [
> DW_TAG_arg_variable ] [self] [line 0]
>  !25 = !{!"0xf\00\000\0064\0064\000\000", null, null, !4} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from Foo]
> -!26 = !{i32 0, i32 0, !10, null}
> +!26 = !MDLocation(line: 0, scope: !10)
>  !27 = !{!"0x101\00_cmd\0033554432\0064", !10, null, !28} ; [
> DW_TAG_arg_variable ] [_cmd] [line 0]
>  !28 = !{!"0x16\00SEL\005\000\000\000\000", !5, null, !15} ; [
> DW_TAG_typedef ] [SEL] [line 5, size 0, align 0, offset 0] [from ]
> -!29 = !{i32 5, i32 0, !10, null}
> +!29 = !MDLocation(line: 5, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/X86/op_deref.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/op_deref.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/op_deref.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/op_deref.ll Wed Jan 14 16:27:36 2015
> @@ -89,23 +89,23 @@ declare void @llvm.stackrestore(i8*) nou
>  !8 = !{null, !9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
>  !10 = !{!"0x101\00s\0016777217\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> -!11 = !{i32 1, i32 26, !5, null}
> -!12 = !{i32 3, i32 13, !13, null}
> +!11 = !MDLocation(line: 1, column: 26, scope: !5)
> +!12 = !MDLocation(line: 3, column: 13, scope: !13)
>  !13 = !{!"0xb\002\001\000", !28, !5} ; [ DW_TAG_lexical_block ]
>  !14 = !{!"0x100\00vla\003\008192", !13, !6, !15} ; [ DW_TAG_auto_variable
> ]
>  !15 = !{!"0x1\00\000\000\0032\000\000", null, null, !9, !16, i32 0, null,
> null, null} ; [ DW_TAG_array_type ] [line 0, size 0, align 32, offset 0]
> [from int]
>  !16 = !{!17}
>  !17 = !{!"0x21\000\00-1"}        ; [ DW_TAG_subrange_type ]
> -!18 = !{i32 3, i32 7, !13, null}
> +!18 = !MDLocation(line: 3, column: 7, scope: !13)
>  !19 = !{!"0x100\00i\004\000", !13, !6, !9} ; [ DW_TAG_auto_variable ]
> -!20 = !{i32 4, i32 7, !13, null}
> -!21 = !{i32 5, i32 8, !22, null}
> +!20 = !MDLocation(line: 4, column: 7, scope: !13)
> +!21 = !MDLocation(line: 5, column: 8, scope: !22)
>  !22 = !{!"0xb\005\003\001", !28, !13} ; [ DW_TAG_lexical_block ]
> -!23 = !{i32 6, i32 5, !24, null}
> +!23 = !MDLocation(line: 6, column: 5, scope: !24)
>  !24 = !{!"0xb\005\0027\002", !28, !22} ; [ DW_TAG_lexical_block ]
> -!25 = !{i32 7, i32 3, !24, null}
> -!26 = !{i32 5, i32 22, !22, null}
> -!27 = !{i32 8, i32 1, !13, null}
> +!25 = !MDLocation(line: 7, column: 3, scope: !24)
> +!26 = !MDLocation(line: 5, column: 22, scope: !22)
> +!27 = !MDLocation(line: 8, column: 1, scope: !13)
>  !28 = !{!"bar.c", !"/Users/echristo/tmp"}
>  !29 = !{i32 1, !"Debug Info Version", i32 2}
>  !30 = !{!"0x102\006"} ; [ DW_TAG_expression ] [DW_OP_deref]
>
> Modified: llvm/trunk/test/DebugInfo/X86/parameters.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/parameters.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/parameters.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/parameters.ll Wed Jan 14 16:27:36 2015
> @@ -106,13 +106,13 @@ attributes #2 = { "less-precise-fpmad"="
>  !21 = !{i32 2, !"Dwarf Version", i32 3}
>  !22 = !{!"0x101\00f\0016777222\008192", !4, !23, !8} ; [
> DW_TAG_arg_variable ] [f] [line 6]
>  !23 = !{!"0x29", !1}         ; [ DW_TAG_file_type ] [/tmp/pass.cpp]
> -!24 = !{i32 6, i32 0, !4, null}
> -!25 = !{i32 7, i32 0, !4, null}
> +!24 = !MDLocation(line: 6, scope: !4)
> +!25 = !MDLocation(line: 7, scope: !4)
>  !26 = !{!"0x101\00b\0016777228\000", !17, !23, !20} ; [
> DW_TAG_arg_variable ] [b] [line 12]
> -!27 = !{i32 12, i32 0, !17, null}
> +!27 = !MDLocation(line: 12, scope: !17)
>  !28 = !{!"0x101\00g\0033554444\008192", !17, !23, !8} ; [
> DW_TAG_arg_variable ] [g] [line 12]
> -!29 = !{i32 13, i32 0, !30, null}
> +!29 = !MDLocation(line: 13, scope: !30)
>  !30 = !{!"0xb\0013\000\000", !1, !17} ; [ DW_TAG_lexical_block ]
> [/tmp/pass.cpp]
> -!31 = !{i32 14, i32 0, !30, null}
> -!32 = !{i32 15, i32 0, !17, null}
> +!31 = !MDLocation(line: 14, scope: !30)
> +!32 = !MDLocation(line: 15, scope: !17)
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/pieces-1.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pieces-1.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pieces-1.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pieces-1.ll Wed Jan 14 16:27:36 2015
> @@ -71,9 +71,9 @@ attributes #1 = { nounwind readnone }
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>  !19 = !{!"clang version 3.5 "}
>  !20 = !{!"0x101\00s\0016777219\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [s] [line 3]
> -!21 = !{i32 3, i32 0, !4, null}
> +!21 = !MDLocation(line: 3, scope: !4)
>  !22 = !{!"0x101\00s\0016777219\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [s] [line 3]
> -!23 = !{i32 4, i32 0, !4, null}
> +!23 = !MDLocation(line: 4, scope: !4)
>  !24 = !{!"0x102\00147\000\008"} ; [ DW_TAG_expression ] [DW_OP_piece 0 8]
> [piece, size 8, offset 0]
>  !25 = !{}
>  !27 = !{!"0x102\00147\008\004"} ; [ DW_TAG_expression ] [DW_OP_piece 8 4]
> [piece, size 4, offset 8]
>
> Modified: llvm/trunk/test/DebugInfo/X86/pieces-2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pieces-2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pieces-2.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pieces-2.ll Wed Jan 14 16:27:36 2015
> @@ -83,9 +83,9 @@ attributes #2 = { nounwind }
>  !23 = !{i32 1, !"Debug Info Version", i32 2}
>  !24 = !{!"clang version 3.5.0 "}
>  !25 = !{!"0x101\00outer\0016777226\000", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [outer] [line 10]
> -!26 = !{i32 10, i32 0, !4, null}
> -!27 = !{i32 11, i32 0, !4, null}
> +!26 = !MDLocation(line: 10, scope: !4)
> +!27 = !MDLocation(line: 11, scope: !4)
>  !28 = !{!"0x100\00i1\0011\000", !4, !5, !14} ; [ DW_TAG_auto_variable ]
> [i1] [line 11]
>  !29 = !{!"0x102\00147\000\004"} ; [ DW_TAG_expression ] [DW_OP_piece 0 4]
> [piece, size 4, offset 0]
>  !31 = !{i32 3, i32 0, i32 12}
> -!32 = !{i32 12, i32 0, !4, null}
> +!32 = !MDLocation(line: 12, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/pieces-3.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pieces-3.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pieces-3.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pieces-3.ll Wed Jan 14 16:27:36 2015
> @@ -93,14 +93,14 @@ attributes #2 = { nounwind }
>  !23 = !{!"clang version 3.5.0 "}
>  !24 = !{!"0x101\00outer\0016777226\000", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [outer] [line 10]
>  !25 = !{!"0x102\00147\000\008"} ; [ DW_TAG_expression ] [DW_OP_piece 0 8]
> [piece, size 8, offset 0]
> -!26 = !{i32 10, i32 0, !4, null}
> +!26 = !MDLocation(line: 10, scope: !4)
>  !27 = !{!"0x101\00outer\0016777226\000", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [outer] [line 10]
>  !28 = !{!"0x102\00147\008\008"} ; [ DW_TAG_expression ] [DW_OP_piece 8 8]
> [piece, size 8, offset 8]
>  !29 = !{!"0x101\00outer\0016777226\000", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [outer] [line 10]
>  !30 = !{!"0x102\00147\0012\004"} ; [ DW_TAG_expression ] [DW_OP_piece 12
> 4] [piece, size 4, offset 12]
>  !31 = !{!"0x101\00outer\0016777226\000", !4, !5, !9} ; [
> DW_TAG_arg_variable ] [outer] [line 10]
>  !32 = !{!"0x102\00147\008\004"} ; [ DW_TAG_expression ] [DW_OP_piece 8 4]
> [piece, size 4, offset 8]
> -!33 = !{i32 11, i32 0, !4, null}
> +!33 = !MDLocation(line: 11, scope: !4)
>  !34 = !{!"0x100\00i1\0011\000", !4, !5, !14} ; [ DW_TAG_auto_variable ]
> [i1] [line 11]
>  !35 = !{!"0x102\00147\000\004"} ; [ DW_TAG_expression ] [DW_OP_piece 0 4]
> [piece, size 4, offset 0]
> -!36 = !{i32 12, i32 0, !4, null}
> +!36 = !MDLocation(line: 12, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/pr11300.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pr11300.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pr11300.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pr11300.ll Wed Jan 14 16:27:36 2015
> @@ -58,13 +58,13 @@ entry:
>  !19 = !{!"0x24"}                      ; [ DW_TAG_base_type ]
>  !20 =
> !{!"0x2e\00bar\00bar\00_ZN3foo3barEv\002\000\001\000\006\00256\000\002",
> !6, null, !13, null, void (%struct.foo*)* @_ZN3foo3barEv, null, !12, null}
> ; [ DW_TAG_subprogram ] [line 2] [def] [bar]
>  !23 = !{!"0x101\00x\0016777220\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> -!24 = !{i32 4, i32 15, !5, null}
> -!25 = !{i32 4, i32 20, !26, null}
> +!24 = !MDLocation(line: 4, column: 15, scope: !5)
> +!25 = !MDLocation(line: 4, column: 20, scope: !26)
>  !26 = !{!"0xb\004\0018\000", !6, !5} ; [ DW_TAG_lexical_block ]
> -!27 = !{i32 4, i32 30, !26, null}
> +!27 = !MDLocation(line: 4, column: 30, scope: !26)
>  !28 = !{!"0x101\00this\0016777218\0064", !20, !6, !15} ; [
> DW_TAG_arg_variable ]
> -!29 = !{i32 2, i32 8, !20, null}
> -!30 = !{i32 2, i32 15, !31, null}
> +!29 = !MDLocation(line: 2, column: 8, scope: !20)
> +!30 = !MDLocation(line: 2, column: 15, scope: !31)
>  !31 = !{!"0xb\002\0014\001", !6, !20} ; [ DW_TAG_lexical_block ]
>  !32 = !{!"/home/espindola/llvm/test.cc", !"/home/espindola/tmpfs/build"}
>  !33 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/pr12831.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pr12831.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pr12831.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pr12831.ll Wed Jan 14 16:27:36 2015
> @@ -210,29 +210,29 @@ entry:
>  !132 = !{!"0x24\00bool\000\008\008\000\000\002", null, null} ; [
> DW_TAG_base_type ]
>  !133 = !{!"0x101\00this\0016777235\0064", !5, !6, !134} ; [
> DW_TAG_arg_variable ]
>  !134 = !{!"0xf\00\000\0064\0064\000\000", null, null, !10} ; [
> DW_TAG_pointer_type ]
> -!135 = !{i32 19, i32 39, !5, null}
> -!136 = !{i32 20, i32 17, !137, null}
> +!135 = !MDLocation(line: 19, column: 39, scope: !5)
> +!136 = !MDLocation(line: 20, column: 17, scope: !137)
>  !137 = !{!"0xb\0019\0051\000", !6, !5} ; [ DW_TAG_lexical_block ]
> -!138 = !{i32 23, i32 17, !137, null}
> -!139 = !{i32 26, i32 15, !137, null}
> +!138 = !MDLocation(line: 23, column: 17, scope: !137)
> +!139 = !MDLocation(line: 26, column: 15, scope: !137)
>  !140 = !{!"0x101\00this\0016777224\0064", !106, !6, !141} ; [
> DW_TAG_arg_variable ]
>  !141 = !{!"0xf\00\000\0064\0064\000\000", null, null, !20} ; [
> DW_TAG_pointer_type ]
> -!142 = !{i32 8, i32 45, !106, null}
> +!142 = !MDLocation(line: 8, column: 45, scope: !106)
>  !143 = !{!"0x101\00__f\0033554440\000", !106, !6, !61} ; [
> DW_TAG_arg_variable ]
> -!144 = !{i32 8, i32 63, !106, null}
> -!145 = !{i32 9, i32 9, !146, null}
> +!144 = !MDLocation(line: 8, column: 63, scope: !106)
> +!145 = !MDLocation(line: 9, column: 9, scope: !146)
>  !146 = !{!"0xb\008\0081\001", !6, !106} ; [ DW_TAG_lexical_block ]
> -!147 = !{i32 10, i32 13, !146, null}
> -!148 = !{i32 4, i32 5, !149, null}
> +!147 = !MDLocation(line: 10, column: 13, scope: !146)
> +!148 = !MDLocation(line: 4, column: 5, scope: !149)
>  !149 = !{!"0xb\003\00105\002", !6, !107} ; [ DW_TAG_lexical_block ]
>  !150 = !{!"0x101\00this\0016777224\0064", !126, !6, !141} ; [
> DW_TAG_arg_variable ]
> -!151 = !{i32 8, i32 45, !126, null}
> +!151 = !MDLocation(line: 8, column: 45, scope: !126)
>  !152 = !{!"0x101\00__f\0033554440\000", !126, !6, !26} ; [
> DW_TAG_arg_variable ]
> -!153 = !{i32 8, i32 63, !126, null}
> -!154 = !{i32 9, i32 9, !155, null}
> +!153 = !MDLocation(line: 8, column: 63, scope: !126)
> +!154 = !MDLocation(line: 9, column: 9, scope: !155)
>  !155 = !{!"0xb\008\0081\003", !6, !126} ; [ DW_TAG_lexical_block ]
> -!156 = !{i32 10, i32 13, !155, null}
> -!157 = !{i32 4, i32 5, !158, null}
> +!156 = !MDLocation(line: 10, column: 13, scope: !155)
> +!157 = !MDLocation(line: 4, column: 5, scope: !158)
>  !158 = !{!"0xb\003\00105\004", !6, !127} ; [ DW_TAG_lexical_block ]
>  !159 = !{!"0x29", !161} ; [ DW_TAG_file_type ]
>  !160 = !{!"BPLFunctionWriter2.ii", !"/home/peter/crashdelta"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/pr13303.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pr13303.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pr13303.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pr13303.ll Wed Jan 14 16:27:36 2015
> @@ -23,7 +23,7 @@ entry:
>  !7 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !8, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !8 = !{!9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
> -!10 = !{i32 1, i32 14, !11, null}
> +!10 = !MDLocation(line: 1, column: 14, scope: !11)
>  !11 = !{!"0xb\001\0012\000", !12, !5} ; [ DW_TAG_lexical_block ]
> [/home/probinson/PR13303.c]
>  !12 = !{!"PR13303.c", !"/home/probinson"}
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/pr19307.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/pr19307.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/pr19307.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/pr19307.ll Wed Jan 14 16:27:36 2015
> @@ -130,16 +130,16 @@ attributes #2 = { "less-precise-fpmad"="
>  !43 = !{i32 2, !"Debug Info Version", i32 2}
>  !44 = !{!"clang version 3.5.0 (209308)"}
>  !45 = !{!"0x101\00offset\0016777219\000", !13, !14, !17} ; [
> DW_TAG_arg_variable ] [offset] [line 3]
> -!46 = !{i32 3, i32 0, !13, null}
> +!46 = !MDLocation(line: 3, scope: !13)
>  !47 = !{!"0x101\00limit\0033554435\000", !13, !14, !17} ; [
> DW_TAG_arg_variable ] [limit] [line 3]
>  !48 = !{!"0x101\00range\0050331652\008192", !13, !14, !19} ; [
> DW_TAG_arg_variable ] [range] [line 4]
> -!49 = !{i32 4, i32 0, !13, null}
> -!50 = !{i32 5, i32 0, !51, null}
> +!49 = !MDLocation(line: 4, scope: !13)
> +!50 = !MDLocation(line: 5, scope: !51)
>  !51 = !{!"0xb\005\000\000", !1, !13} ; [ DW_TAG_lexical_block ]
> [/llvm_cmake_gcc/pr19307.cc]
> -!52 = !{i32 5, i32 0, !53, null}
> +!52 = !MDLocation(line: 5, scope: !53)
>  !53 = !{!"0xb\005\000\001", !1, !51} ; [ DW_TAG_lexical_block ]
> [/llvm_cmake_gcc/pr19307.cc]
> -!54 = !{i32 6, i32 0, !51, null}
> -!55 = !{i32 7, i32 0, !13, null}
> -!56 = !{i32 8, i32 0, !13, null}
> -!57 = !{i32 9, i32 0, !13, null}
> +!54 = !MDLocation(line: 6, scope: !51)
> +!55 = !MDLocation(line: 7, scope: !13)
> +!56 = !MDLocation(line: 8, scope: !13)
> +!57 = !MDLocation(line: 9, scope: !13)
>
>
> Modified: llvm/trunk/test/DebugInfo/X86/prologue-stack.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/prologue-stack.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/prologue-stack.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/prologue-stack.ll Wed Jan 14 16:27:36
> 2015
> @@ -29,8 +29,8 @@ declare i32 @callme(i32)
>  !7 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !8, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !8 = !{!9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
> -!10 = !{i32 5, i32 3, !11, null}
> +!10 = !MDLocation(line: 5, column: 3, scope: !11)
>  !11 = !{!"0xb\004\001\000", !13, !5} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/bar.c]
> -!12 = !{i32 6, i32 3, !11, null}
> +!12 = !MDLocation(line: 6, column: 3, scope: !11)
>  !13 = !{!"bar.c", !"/usr/local/google/home/echristo/tmp"}
>  !14 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/recursive_inlining.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/recursive_inlining.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/recursive_inlining.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/recursive_inlining.ll Wed Jan 14
> 16:27:36 2015
> @@ -230,46 +230,46 @@ attributes #3 = { nounwind }
>  !28 = !{i32 2, !"Dwarf Version", i32 4}
>  !29 = !{i32 2, !"Debug Info Version", i32 2}
>  !30 = !{!"clang version 3.6.0 "}
> -!31 = !{i32 16, i32 0, !14, null}
> -!32 = !{i32 17, i32 0, !14, null}
> +!31 = !MDLocation(line: 16, scope: !14)
> +!32 = !MDLocation(line: 17, scope: !14)
>  !33 = !{!34, !34, i64 0}
>  !34 = !{!"any pointer", !35, i64 0}
>  !35 = !{!"omnipotent char", !36, i64 0}
>  !36 = !{!"Simple C/C++ TBAA"}
>  !37 = !{!"0x101\00this\0016777216\001088", !22, null, !25, !32} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!38 = !{i32 0, i32 0, !22, !32}
> -!39 = !{i32 8, i32 0, !22, !32}
> -!40 = !{i32 9, i32 0, !41, !32}
> +!38 = !MDLocation(line: 0, scope: !22, inlinedAt: !32)
> +!39 = !MDLocation(line: 8, scope: !22, inlinedAt: !32)
> +!40 = !MDLocation(line: 9, scope: !41, inlinedAt: !32)
>  !41 = !{!"0xb\009\000\000", !5, !22} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/blaikie/dev/scratch/missing_concrete_variable_on_darwin/reduce/recursive_inlining.cpp]
>  !42 = !{!43, !44, i64 0}
>  !43 = !{!"_ZTS1C", !44, i64 0}
>  !44 = !{!"int", !35, i64 0}
> -!45 = !{i32 9, i32 0, !46, !32}
> +!45 = !MDLocation(line: 9, scope: !46, inlinedAt: !32)
>  !46 = !{!"0xb\009\000\001", !5, !41} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/blaikie/dev/scratch/missing_concrete_variable_on_darwin/reduce/recursive_inlining.cpp]
> -!47 = !{i32 10, i32 0, !22, !32}
> -!48 = !{i32 19, i32 0, !14, null}
> -!49 = !{i32 0, i32 0, !22, null}
> -!50 = !{i32 8, i32 0, !22, null}
> -!51 = !{i32 9, i32 0, !41, null}
> -!52 = !{i32 9, i32 0, !46, null}
> -!53 = !{i32 16, i32 0, !14, !54}
> -!54 = !{i32 20, i32 0, !18, !55}
> -!55 = !{i32 10, i32 0, !22, null}
> -!56 = !{i32 17, i32 0, !14, !54}
> +!47 = !MDLocation(line: 10, scope: !22, inlinedAt: !32)
> +!48 = !MDLocation(line: 19, scope: !14)
> +!49 = !MDLocation(line: 0, scope: !22)
> +!50 = !MDLocation(line: 8, scope: !22)
> +!51 = !MDLocation(line: 9, scope: !41)
> +!52 = !MDLocation(line: 9, scope: !46)
> +!53 = !MDLocation(line: 16, scope: !14, inlinedAt: !54)
> +!54 = !MDLocation(line: 20, scope: !18, inlinedAt: !55)
> +!55 = !MDLocation(line: 10, scope: !22)
> +!56 = !MDLocation(line: 17, scope: !14, inlinedAt: !54)
>  !57 = !{!"0x101\00this\0016777216\001088", !22, null, !25, !56} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!58 = !{i32 0, i32 0, !22, !56}
> -!59 = !{i32 8, i32 0, !22, !56}
> -!60 = !{i32 9, i32 0, !41, !56}
> -!61 = !{i32 9, i32 0, !46, !56}
> -!62 = !{i32 10, i32 0, !22, !56}
> -!63 = !{i32 11, i32 0, !22, null}
> -!64 = !{i32 16, i32 0, !14, !65}
> -!65 = !{i32 20, i32 0, !18, null}
> -!66 = !{i32 17, i32 0, !14, !65}
> +!58 = !MDLocation(line: 0, scope: !22, inlinedAt: !56)
> +!59 = !MDLocation(line: 8, scope: !22, inlinedAt: !56)
> +!60 = !MDLocation(line: 9, scope: !41, inlinedAt: !56)
> +!61 = !MDLocation(line: 9, scope: !46, inlinedAt: !56)
> +!62 = !MDLocation(line: 10, scope: !22, inlinedAt: !56)
> +!63 = !MDLocation(line: 11, scope: !22)
> +!64 = !MDLocation(line: 16, scope: !14, inlinedAt: !65)
> +!65 = !MDLocation(line: 20, scope: !18)
> +!66 = !MDLocation(line: 17, scope: !14, inlinedAt: !65)
>  !67 = !{!"0x101\00this\0016777216\001088", !22, null, !25, !66} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!68 = !{i32 0, i32 0, !22, !66}
> -!69 = !{i32 8, i32 0, !22, !66}
> -!70 = !{i32 9, i32 0, !41, !66}
> -!71 = !{i32 9, i32 0, !46, !66}
> -!72 = !{i32 21, i32 0, !19, null}
> -!73 = !{i32 22, i32 0, !20, null}
> +!68 = !MDLocation(line: 0, scope: !22, inlinedAt: !66)
> +!69 = !MDLocation(line: 8, scope: !22, inlinedAt: !66)
> +!70 = !MDLocation(line: 9, scope: !41, inlinedAt: !66)
> +!71 = !MDLocation(line: 9, scope: !46, inlinedAt: !66)
> +!72 = !MDLocation(line: 21, scope: !19)
> +!73 = !MDLocation(line: 22, scope: !20)
>
> Modified: llvm/trunk/test/DebugInfo/X86/reference-argument.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/reference-argument.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/reference-argument.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/reference-argument.ll Wed Jan 14
> 16:27:36 2015
> @@ -81,23 +81,23 @@ declare void @_ZN4SValD2Ev(%class.SVal*
>  !46 = !{i32 786468}
>  !47 = !{i32 2, !"Dwarf Version", i32 3}
>  !48 = !{!"0x101\00v\0016777235\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [v] [line 19]
> -!49 = !{i32 19, i32 0, !4, null}
> +!49 = !MDLocation(line: 19, scope: !4)
>  !50 = !{!"0x100\00v\0026\000", !29, !5, !9} ; [ DW_TAG_auto_variable ]
> [v] [line 26]
> -!51 = !{i32 26, i32 0, !29, null}
> -!52 = !{i32 27, i32 0, !29, null}
> -!53 = !{i32 28, i32 0, !29, null}
> +!51 = !MDLocation(line: 26, scope: !29)
> +!52 = !MDLocation(line: 27, scope: !29)
> +!53 = !MDLocation(line: 28, scope: !29)
>  !54 = !{!"0x100\00a\0029\000", !29, !5, !39} ; [ DW_TAG_auto_variable ]
> [a] [line 29]
> -!55 = !{i32 29, i32 0, !29, null}
> -!56 = !{i32 30, i32 0, !29, null}
> -!57 = !{i32 31, i32 0, !29, null}
> -!58 = !{i32 32, i32 0, !29, null}
> +!55 = !MDLocation(line: 29, scope: !29)
> +!56 = !MDLocation(line: 30, scope: !29)
> +!57 = !MDLocation(line: 31, scope: !29)
> +!58 = !MDLocation(line: 32, scope: !29)
>  !59 = !{!"0x101\00this\0016777238\001088", !35, !5, !60} ; [
> DW_TAG_arg_variable ] [this] [line 22]
>  !60 = !{!"0xf\00\000\0064\0064\000\000", null, null, !39} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from A]
> -!61 = !{i32 22, i32 0, !35, null}
> +!61 = !MDLocation(line: 22, scope: !35)
>  !62 = !{!"0x101\00v\0033554454\008192", !35, !5, !9} ; [
> DW_TAG_arg_variable ] [v] [line 22]
>  !63 = !{!"0x101\00this\0016777230\001088", !33, !5, !64} ; [
> DW_TAG_arg_variable ] [this] [line 14]
>  !64 = !{!"0xf\00\000\0064\0064\000\000", null, null, !9} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from SVal]
> -!65 = !{i32 14, i32 0, !33, null}
> +!65 = !MDLocation(line: 14, scope: !33)
>  !66 = !{!"0x101\00this\0016777230\001088", !34, !5, !64} ; [
> DW_TAG_arg_variable ] [this] [line 14]
> -!67 = !{i32 14, i32 0, !34, null}
> +!67 = !MDLocation(line: 14, scope: !34)
>  !68 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/rvalue-ref.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/rvalue-ref.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/rvalue-ref.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/rvalue-ref.ll Wed Jan 14 16:27:36 2015
> @@ -33,9 +33,9 @@ declare i32 @printf(i8*, ...)
>  !9 = !{!"0x42\00\000\000\000\000\000", null, null, !10} ; [
> DW_TAG_rvalue_reference_type ]
>  !10 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
>  !11 = !{!"0x101\00i\0016777220\000", !5, !6, !9} ; [ DW_TAG_arg_variable ]
> -!12 = !{i32 4, i32 17, !5, null}
> -!13 = !{i32 6, i32 3, !14, null}
> +!12 = !MDLocation(line: 4, column: 17, scope: !5)
> +!13 = !MDLocation(line: 6, column: 3, scope: !14)
>  !14 = !{!"0xb\005\001\000", !16, !5} ; [ DW_TAG_lexical_block ]
> -!15 = !{i32 7, i32 1, !14, null}
> +!15 = !MDLocation(line: 7, column: 1, scope: !14)
>  !16 = !{!"foo.cpp", !"/Users/echristo/tmp"}
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/sret.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/sret.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/sret.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/sret.ll Wed Jan 14 16:27:36 2015
> @@ -325,69 +325,69 @@ attributes #7 = { builtin nounwind }
>  !66 = !{!"clang version 3.5.0 (trunk 203283) (llvm/trunk 203307)"}
>  !67 = !{!"0x101\00this\0016777216\001088", !49, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !68 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!69 = !{i32 0, i32 0, !49, null}
> +!69 = !MDLocation(line: 0, scope: !49)
>  !70 = !{!"0x101\00i\0033554448\000", !49, !7, !12} ; [
> DW_TAG_arg_variable ] [i] [line 16]
> -!71 = !{i32 16, i32 0, !49, null}
> -!72 = !{i32 18, i32 0, !49, null}
> -!73 = !{i32 19, i32 0, !49, null}
> +!71 = !MDLocation(line: 16, scope: !49)
> +!72 = !MDLocation(line: 18, scope: !49)
> +!73 = !MDLocation(line: 19, scope: !49)
>  !74 = !{!"0x101\00this\0016777216\001088", !50, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!75 = !{i32 0, i32 0, !50, null}
> +!75 = !MDLocation(line: 0, scope: !50)
>  !76 = !{!"0x101\00rhs\0033554453\000", !50, !7, !22} ; [
> DW_TAG_arg_variable ] [rhs] [line 21]
> -!77 = !{i32 21, i32 0, !50, null}
> -!78 = !{i32 23, i32 0, !50, null}
> -!79 = !{i32 24, i32 0, !50, null}
> +!77 = !MDLocation(line: 21, scope: !50)
> +!78 = !MDLocation(line: 23, scope: !50)
> +!79 = !MDLocation(line: 24, scope: !50)
>  !80 = !{!"0x101\00this\0016777216\001088", !51, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!81 = !{i32 0, i32 0, !51, null}
> +!81 = !MDLocation(line: 0, scope: !51)
>  !82 = !{!"0x101\00rhs\0033554459\000", !51, !7, !22} ; [
> DW_TAG_arg_variable ] [rhs] [line 27]
> -!83 = !{i32 27, i32 0, !51, null}
> -!84 = !{i32 29, i32 0, !51, null}
> -!85 = !{i32 30, i32 0, !51, null}
> +!83 = !MDLocation(line: 27, scope: !51)
> +!84 = !MDLocation(line: 29, scope: !51)
> +!85 = !MDLocation(line: 30, scope: !51)
>  !86 = !{!"0x101\00this\0016777216\001088", !52, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!87 = !{i32 0, i32 0, !52, null}
> -!88 = !{i32 35, i32 0, !52, null}
> +!87 = !MDLocation(line: 0, scope: !52)
> +!88 = !MDLocation(line: 35, scope: !52)
>  !89 = !{!"0x101\00this\0016777216\001088", !53, null, !90} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !90 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1B"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1B]
> -!91 = !{i32 0, i32 0, !53, null}
> -!92 = !{i32 49, i32 0, !53, null}
> +!91 = !MDLocation(line: 0, scope: !53)
> +!92 = !MDLocation(line: 49, scope: !53)
>  !93 = !{!"0x100\00a\0049\008192", !53, !7, !4} ; [ DW_TAG_auto_variable ]
> [a] [line 49]
> -!94 = !{i32 50, i32 0, !53, null}
> -!95 = !{i32 51, i32 0, !53, null}
> -!96 = !{i32 51, i32 0, !97, null}
> +!94 = !MDLocation(line: 50, scope: !53)
> +!95 = !MDLocation(line: 51, scope: !53)
> +!96 = !MDLocation(line: 51, scope: !97)
>  !97 = !{!"0xb\0051\000\002", !1, !53} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
> -!98 = !{i32 51, i32 0, !99, null}
> +!98 = !MDLocation(line: 51, scope: !99)
>  !99 = !{!"0xb\0051\000\003", !1, !100} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
>  !100 = !{!"0xb\0051\000\001", !1, !53} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
>  !101 = !{!"0x101\00this\0016777216\001088", !63, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!102 = !{i32 0, i32 0, !63, null}
> -!103 = !{i32 8, i32 0, !63, null}
> +!102 = !MDLocation(line: 0, scope: !63)
> +!103 = !MDLocation(line: 8, scope: !63)
>  !104 = !{!"0x101\00argc\0016777269\000", !54, !7, !12} ; [
> DW_TAG_arg_variable ] [argc] [line 53]
> -!105 = !{i32 53, i32 0, !54, null}
> +!105 = !MDLocation(line: 53, scope: !54)
>  !106 = !{!"0x101\00argv\0033554485\000", !54, !7, !57} ; [
> DW_TAG_arg_variable ] [argv] [line 53]
>  !107 = !{!"0x100\00b\0055\000", !54, !7, !37} ; [ DW_TAG_auto_variable ]
> [b] [line 55]
> -!108 = !{i32 55, i32 0, !54, null}
> +!108 = !MDLocation(line: 55, scope: !54)
>  !109 = !{!"0x100\00return_val\0056\000", !54, !7, !12} ; [
> DW_TAG_auto_variable ] [return_val] [line 56]
> -!110 = !{i32 56, i32 0, !54, null}
> -!111 = !{i32 56, i32 0, !112, null}
> +!110 = !MDLocation(line: 56, scope: !54)
> +!111 = !MDLocation(line: 56, scope: !112)
>  !112 = !{!"0xb\0056\000\001", !1, !54} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
>  !113 = !{!"0x100\00a\0058\000", !54, !7, !4} ; [ DW_TAG_auto_variable ]
> [a] [line 58]
> -!114 = !{i32 58, i32 0, !54, null}
> -!115 = !{i32 59, i32 0, !54, null}
> -!116 = !{i32 60, i32 0, !54, null}
> -!117 = !{i32 60, i32 0, !118, null}
> +!114 = !MDLocation(line: 58, scope: !54)
> +!115 = !MDLocation(line: 59, scope: !54)
> +!116 = !MDLocation(line: 60, scope: !54)
> +!117 = !MDLocation(line: 60, scope: !118)
>  !118 = !{!"0xb\0060\000\001", !1, !54} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
> -!119 = !{i32 60, i32 0, !120, null}
> +!119 = !MDLocation(line: 60, scope: !120)
>  !120 = !{!"0xb\0060\000\003", !1, !54} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
> -!121 = !{i32 60, i32 0, !122, null}
> +!121 = !MDLocation(line: 60, scope: !122)
>  !122 = !{!"0xb\0060\000\002", !1, !54} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
>  !123 = !{!"0x101\00this\0016777216\001088", !62, null, !90} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!124 = !{i32 0, i32 0, !62, null}
> -!125 = !{i32 41, i32 0, !62, null}
> +!124 = !MDLocation(line: 0, scope: !62)
> +!125 = !MDLocation(line: 41, scope: !62)
>  !126 = !{!"0x101\00this\0016777216\001088", !61, null, !68} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!127 = !{i32 0, i32 0, !61, null}
> -!128 = !{i32 8, i32 0, !61, null}
> -!129 = !{i32 8, i32 0, !130, null}
> +!127 = !MDLocation(line: 0, scope: !61)
> +!128 = !MDLocation(line: 8, scope: !61)
> +!129 = !MDLocation(line: 8, scope: !130)
>  !130 = !{!"0xb\008\000\001", !1, !61} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
> -!131 = !{i32 8, i32 0, !132, null}
> +!131 = !MDLocation(line: 8, scope: !132)
>  !132 = !{!"0xb\008\000\002", !1, !61} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
> -!133 = !{i32 8, i32 0, !134, null}
> +!133 = !MDLocation(line: 8, scope: !134)
>  !134 = !{!"0xb\008\000\003", !1, !61} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/home/echristo/tmp/sret.cpp]
>
> Modified: llvm/trunk/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll Wed
> Jan 14 16:27:36 2015
> @@ -92,12 +92,12 @@ entry:
>  !13 = !{!"0x2e\00fn\00fn\00\001\000\001\000\006\00256\000\001", !24, !14,
> !7, null, i32 (i32)* @fn, null, null, !1} ; [ DW_TAG_subprogram ] [line 1]
> [def] [fn]
>  !14 = !{!"0x29", !24} ; [ DW_TAG_file_type ]
>  !15 = !{!"0x101\00a\0016777218\000", !5, !6, !9} ; [ DW_TAG_arg_variable
> ] [a] [line 2]
> -!16 = !{i32 2, i32 0, !5, null}
> -!17 = !{i32 4, i32 0, !18, null}
> +!16 = !MDLocation(line: 2, scope: !5)
> +!17 = !MDLocation(line: 4, scope: !18)
>  !18 = !{!"0xb\003\000\000", !23, !5} ; [ DW_TAG_lexical_block ]
>  !19 = !{!"0x101\00a\0016777217\000", !13, !14, !9} ; [
> DW_TAG_arg_variable ] [a] [line 1]
> -!20 = !{i32 1, i32 0, !13, null}
> -!21 = !{i32 2, i32 0, !22, null}
> +!20 = !MDLocation(line: 1, scope: !13)
> +!21 = !MDLocation(line: 2, scope: !22)
>  !22 = !{!"0xb\001\000\000", !24, !13} ; [ DW_TAG_lexical_block ]
>  !23 = !{!"simple.c", !"/private/tmp"}
>  !24 = !{!"simple2.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/DebugInfo/X86/subrange-type.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/subrange-type.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/subrange-type.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/subrange-type.ll Wed Jan 14 16:27:36 2015
> @@ -34,7 +34,7 @@ declare void @llvm.dbg.declare(metadata,
>  !12 = !{!"0x1\00\000\0064\0032\000\000", null, null, !9, !13, i32 0,
> null, null, null} ; [ DW_TAG_array_type ] [line 0, size 64, align 32,
> offset 0] [from int]
>  !13 = !{!14}
>  !14 = !{!"0x21\000\002"}        ; [ DW_TAG_subrange_type ] [0, 1]
> -!15 = !{i32 4, i32 0, !11, null}
> -!16 = !{i32 6, i32 0, !11, null}
> +!15 = !MDLocation(line: 4, scope: !11)
> +!16 = !MDLocation(line: 6, scope: !11)
>  !17 = !{!"foo.c", !"/usr/local/google/home/echristo/tmp"}
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/subreg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/subreg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/subreg.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/subreg.ll Wed Jan 14 16:27:36 2015
> @@ -28,7 +28,7 @@ declare void @llvm.dbg.value(metadata, i
>  !4 = !{!"0x15\00\000\000\000\000\000\000", !10, !2, null, !5, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !5 = !{null}
>  !6 = !{!"0x24\00short\000\0016\0016\000\000\005", null, !3} ; [
> DW_TAG_base_type ]
> -!7 = !{i32 4, i32 22, !8, null}
> +!7 = !MDLocation(line: 4, column: 22, scope: !8)
>  !8 = !{!"0xb\003\0019\000", !10, !1} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"/home/espindola/llvm/test.c", !"/home/espindola/tmpfs/build"}
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/subregisters.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/subregisters.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/subregisters.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/subregisters.ll Wed Jan 14 16:27:36 2015
> @@ -103,15 +103,15 @@ attributes #4 = { nounwind }
>  !22 = !{i32 2, !"Dwarf Version", i32 2}
>  !23 = !{i32 1, !"Debug Info Version", i32 2}
>  !24 = !{!"clang version 3.5 "}
> -!25 = !{i32 10, i32 0, !4, null}
> -!26 = !{i32 12, i32 0, !4, null}
> +!25 = !MDLocation(line: 10, scope: !4)
> +!26 = !MDLocation(line: 12, scope: !4)
>  !27 = !{!28, !29, i64 0}
>  !28 = !{!"bar", !29, i64 0, !29, i64 4}
>  !29 = !{!"int", !30, i64 0}
>  !30 = !{!"omnipotent char", !31, i64 0}
>  !31 = !{!"Simple C/C++ TBAA"}
> -!32 = !{i32 13, i32 0, !4, null}
> -!33 = !{i32 14, i32 0, !4, null}
> -!34 = !{i32 18, i32 0, !17, null}
> -!35 = !{i32 19, i32 0, !17, null}
> -!36 = !{i32 20, i32 0, !17, null}
> +!32 = !MDLocation(line: 13, scope: !4)
> +!33 = !MDLocation(line: 14, scope: !4)
> +!34 = !MDLocation(line: 18, scope: !17)
> +!35 = !MDLocation(line: 19, scope: !17)
> +!36 = !MDLocation(line: 20, scope: !17)
>
> Modified: llvm/trunk/test/DebugInfo/X86/template.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/template.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/template.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/template.ll Wed Jan 14 16:27:36 2015
> @@ -125,6 +125,6 @@ attributes #0 = { nounwind uwtable "less
>  !33 = !{i32 2, !"Dwarf Version", i32 4}
>  !34 = !{i32 2, !"Debug Info Version", i32 2}
>  !35 = !{!"clang version 3.6.0 (trunk 224394) (llvm/trunk 224384)"}
> -!36 = !{i32 3, i32 12, !10, null}
> -!37 = !{i32 1, i32 96, !14, null}
> -!38 = !{i32 0, i32 0, !28, null}
> +!36 = !MDLocation(line: 3, column: 12, scope: !10)
> +!37 = !MDLocation(line: 1, column: 96, scope: !14)
> +!38 = !MDLocation(line: 0, scope: !28)
>
> Modified: llvm/trunk/test/DebugInfo/X86/tls.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/tls.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/tls.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/tls.ll Wed Jan 14 16:27:36 2015
> @@ -99,4 +99,4 @@ attributes #0 = { nounwind uwtable "less
>  !15 = !{i32 2, !"Dwarf Version", i32 4}
>  !16 = !{i32 1, !"Debug Info Version", i32 2}
>  !17 = !{!"clang version 3.5 "}
> -!18 = !{i32 6, i32 0, !4, null}
> +!18 = !MDLocation(line: 6, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/X86/union-template.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/union-template.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/union-template.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/union-template.ll Wed Jan 14 16:27:36
> 2015
> @@ -53,8 +53,8 @@ attributes #1 = { nounwind readnone }
>  !21 = !{!22}
>  !22 = !{!"0x2f\00T\000\000", null, !8, null} ; [
> DW_TAG_template_type_parameter ]
>  !23 = !{!"0x101\00value\0016777219\000", !4, !11, !8} ; [
> DW_TAG_arg_variable ] [value] [line 3]
> -!24 = !{i32 3, i32 0, !4, null}
> +!24 = !MDLocation(line: 3, scope: !4)
>  !25 = !{!"0x100\00tempValue\004\000", !4, !11, !12} ; [
> DW_TAG_auto_variable ] [tempValue] [line 4]
> -!26 = !{i32 4, i32 0, !4, null}
> -!27 = !{i32 5, i32 0, !4, null}
> +!26 = !MDLocation(line: 4, scope: !4)
> +!27 = !MDLocation(line: 5, scope: !4)
>  !28 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/X86/vla.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/vla.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/X86/vla.ll (original)
> +++ llvm/trunk/test/DebugInfo/X86/vla.ll Wed Jan 14 16:27:36 2015
> @@ -91,17 +91,17 @@ entry:
>  !13 = !{!"0xf\00\000\0064\0064\000\000", null, null, !14} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from char]
>  !14 = !{!"0x24\00char\000\008\008\000\000\006", null, null} ; [
> DW_TAG_base_type ] [char] [line 0, size 8, align 8, offset 0, enc
> DW_ATE_signed_char]
>  !15 = !{!"0x101\00n\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [n] [line 1]
> -!16 = !{i32 1, i32 0, !4, null}
> -!17 = !{i32 2, i32 0, !4, null}
> +!16 = !MDLocation(line: 1, scope: !4)
> +!17 = !MDLocation(line: 2, scope: !4)
>  !18 = !{!"0x100\00a\002\008192", !4, !5, !19} ; [ DW_TAG_auto_variable ]
> [a] [line 2]
>  !19 = !{!"0x1\00\000\000\0032\000\000", null, null, !8, !20, i32 0, null,
> null, null} ; [ DW_TAG_array_type ] [line 0, size 0, align 32, offset 0]
> [from int]
>  !20 = !{!21}
>  !21 = !{!"0x21\000\00-1"}       ; [ DW_TAG_subrange_type ] [unbounded]
> -!22 = !{i32 3, i32 0, !4, null}
> -!23 = !{i32 4, i32 0, !4, null}
> -!24 = !{i32 5, i32 0, !4, null}
> +!22 = !MDLocation(line: 3, scope: !4)
> +!23 = !MDLocation(line: 4, scope: !4)
> +!24 = !MDLocation(line: 5, scope: !4)
>  !25 = !{!"0x101\00argc\0016777223\000", !9, !5, !8} ; [
> DW_TAG_arg_variable ] [argc] [line 7]
> -!26 = !{i32 7, i32 0, !9, null}
> +!26 = !MDLocation(line: 7, scope: !9)
>  !27 = !{!"0x101\00argv\0033554439\000", !9, !5, !12} ; [
> DW_TAG_arg_variable ] [argv] [line 7]
> -!28 = !{i32 8, i32 0, !9, null}
> +!28 = !MDLocation(line: 8, scope: !9)
>  !29 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/array.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/array.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/array.ll (original)
> +++ llvm/trunk/test/DebugInfo/array.ll Wed Jan 14 16:27:36 2015
> @@ -31,8 +31,8 @@ declare void @llvm.dbg.declare(metadata,
>  ;CHECK-NOT: DW_AT_upper_bound
>  ;CHECK-NEXT: End Of Children Mark
>  !10 = !{!"0x21\000\00-1"}        ; [ DW_TAG_subrange_type ]
> -!11 = !{i32 4, i32 7, !7, null}
> -!12 = !{i32 5, i32 3, !7, null}
> +!11 = !MDLocation(line: 4, column: 7, scope: !7)
> +!12 = !MDLocation(line: 5, column: 3, scope: !7)
>  !13 = !{!0}
>  !14 = !{!"array.c", !"/private/tmp"}
>  !15 = !{i32 0}
>
> Modified: llvm/trunk/test/DebugInfo/block-asan.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/block-asan.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/block-asan.ll (original)
> +++ llvm/trunk/test/DebugInfo/block-asan.ll Wed Jan 14 16:27:36 2015
> @@ -81,7 +81,7 @@ attributes #3 = { nounwind }
>  !20 = !{!"0xd\00__size\000\0032\0032\00160\000", !1, !5, !19} ; [
> DW_TAG_member ] [__size] [line 0, size 32, align 32, offset 160] [from int]
>  !21 = !{!"0xd\00x\000\0032\0032\00192\000", !1, !5, !19} ; [
> DW_TAG_member ] [x] [line 0, size 32, align 32, offset 192] [from int]
>  !22 = !{!"0x102\0034\008\006\0034\0024"} ; [ DW_TAG_expression ]
> [DW_OP_plus 8] [DW_OP_deref] [DW_OP_plus 24]
> -!23 = !{i32 4, i32 15, !4, null}
> -!24 = !{i32 4, i32 3, !4, null}
> -!25 = !{i32 5, i32 3, !4, null}
> -!26 = !{i32 6, i32 1, !4, null}
> +!23 = !MDLocation(line: 4, column: 15, scope: !4)
> +!24 = !MDLocation(line: 4, column: 3, scope: !4)
> +!25 = !MDLocation(line: 5, column: 3, scope: !4)
> +!26 = !MDLocation(line: 6, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/constant-pointers.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/constant-pointers.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/constant-pointers.ll (original)
> +++ llvm/trunk/test/DebugInfo/constant-pointers.ll Wed Jan 14 16:27:36 2015
> @@ -48,4 +48,4 @@ attributes #0 = { nounwind uwtable "less
>  !15 = !{i32 2, !"Dwarf Version", i32 4}
>  !16 = !{i32 2, !"Debug Info Version", i32 2}
>  !17 = !{!"clang version 3.5.0 "}
> -!18 = !{i32 3, i32 0, !4, null}
> +!18 = !MDLocation(line: 3, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/cross-cu-inlining.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/cross-cu-inlining.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/cross-cu-inlining.ll (original)
> +++ llvm/trunk/test/DebugInfo/cross-cu-inlining.ll Wed Jan 14 16:27:36 2015
> @@ -131,10 +131,10 @@ attributes #3 = { nounwind }
>  !16 = !{i32 2, !"Dwarf Version", i32 4}
>  !17 = !{i32 2, !"Debug Info Version", i32 2}
>  !18 = !{!"clang version 3.5.0 "}
> -!19 = !{i32 4, i32 0, !4, null}
> +!19 = !MDLocation(line: 4, scope: !4)
>  !20 = !{!"0x101\00x\0016777217\000", !12, !13, !8} ; [
> DW_TAG_arg_variable ] [x] [line 1]
> -!21 = !{i32 1, i32 0, !12, !19}
> -!22 = !{i32 2, i32 0, !12, !19}
> -!23 = !{i32 1, i32 0, !12, null}
> -!24 = !{i32 2, i32 0, !12, null}
> +!21 = !MDLocation(line: 1, scope: !12, inlinedAt: !19)
> +!22 = !MDLocation(line: 2, scope: !12, inlinedAt: !19)
> +!23 = !MDLocation(line: 1, scope: !12)
> +!24 = !MDLocation(line: 2, scope: !12)
>
>
> Modified: llvm/trunk/test/DebugInfo/cross-cu-linkonce-distinct.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/cross-cu-linkonce-distinct.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/cross-cu-linkonce-distinct.ll (original)
> +++ llvm/trunk/test/DebugInfo/cross-cu-linkonce-distinct.ll Wed Jan 14
> 16:27:36 2015
> @@ -91,5 +91,5 @@ attributes #1 = { nounwind readnone }
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>  !21 = !{!"clang version 3.5.0 "}
>  !22 = !{!"0x101\00i\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [i] [line 1]
> -!23 = !{i32 1, i32 0, !4, null}
> -!24 = !{i32 2, i32 0, !4, null}
> +!23 = !MDLocation(line: 1, scope: !4)
> +!24 = !MDLocation(line: 2, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/cross-cu-linkonce.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/cross-cu-linkonce.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/cross-cu-linkonce.ll (original)
> +++ llvm/trunk/test/DebugInfo/cross-cu-linkonce.ll Wed Jan 14 16:27:36 2015
> @@ -69,5 +69,5 @@ attributes #1 = { nounwind readnone }
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>  !19 = !{!"clang version 3.5.0 "}
>  !20 = !{!"0x101\00i\0016777217\000", !4, !6, !9} ; [ DW_TAG_arg_variable
> ] [i] [line 1]
> -!21 = !{i32 1, i32 0, !4, null}
> -!22 = !{i32 2, i32 0, !4, null}
> +!21 = !MDLocation(line: 1, scope: !4)
> +!22 = !MDLocation(line: 2, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/cu-range-hole.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/cu-range-hole.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/cu-range-hole.ll (original)
> +++ llvm/trunk/test/DebugInfo/cu-range-hole.ll Wed Jan 14 16:27:36 2015
> @@ -69,6 +69,6 @@ attributes #1 = { nounwind readnone }
>  !11 = !{i32 2, !"Dwarf Version", i32 4}
>  !12 = !{i32 1, !"Debug Info Version", i32 2}
>  !13 = !{!"0x101\00c\0016777217\000", !5, !6, !9} ; [ DW_TAG_arg_variable
> ] [c] [line 1]
> -!14 = !{i32 1, i32 0, !5, null}
> +!14 = !MDLocation(line: 1, scope: !5)
>  !15 = !{!"0x101\00e\0016777219\000", !10, !6, !9} ; [ DW_TAG_arg_variable
> ] [e] [line 3]
> -!16 = !{i32 3, i32 0, !10, null}
> +!16 = !MDLocation(line: 3, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/cu-ranges.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/cu-ranges.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/cu-ranges.ll (original)
> +++ llvm/trunk/test/DebugInfo/cu-ranges.ll Wed Jan 14 16:27:36 2015
> @@ -63,9 +63,9 @@ attributes #1 = { nounwind readnone }
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5.0 (trunk 204164) (llvm/trunk 204183)"}
>  !13 = !{!"0x101\00a\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [a] [line 1]
> -!14 = !{i32 1, i32 0, !4, null}
> -!15 = !{i32 2, i32 0, !4, null}
> +!14 = !MDLocation(line: 1, scope: !4)
> +!15 = !MDLocation(line: 2, scope: !4)
>  !16 = !{!"0x101\00a\0016777221\000", !9, !5, !8} ; [ DW_TAG_arg_variable
> ] [a] [line 5]
> -!17 = !{i32 5, i32 0, !9, null}
> -!18 = !{i32 6, i32 0, !9, null}
> +!17 = !MDLocation(line: 5, scope: !9)
> +!18 = !MDLocation(line: 6, scope: !9)
>
>
> Modified: llvm/trunk/test/DebugInfo/dead-argument-order.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/dead-argument-order.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/dead-argument-order.ll (original)
> +++ llvm/trunk/test/DebugInfo/dead-argument-order.ll Wed Jan 14 16:27:36
> 2015
> @@ -77,5 +77,5 @@ attributes #1 = { nounwind readnone }
>  !17 = !{i32 2, !"Debug Info Version", i32 2}
>  !18 = !{!"clang version 3.5.0 "}
>  !19 = !{%struct.S* undef}
> -!20 = !{i32 2, i32 0, !9, null}
> +!20 = !MDLocation(line: 2, scope: !9)
>
>
> Modified: llvm/trunk/test/DebugInfo/debug-info-always-inline.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/debug-info-always-inline.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/debug-info-always-inline.ll (original)
> +++ llvm/trunk/test/DebugInfo/debug-info-always-inline.ll Wed Jan 14
> 16:27:36 2015
> @@ -132,12 +132,12 @@ attributes #3 = { "less-precise-fpmad"="
>  !15 = !{i32 786433, null, null, !"", i32 0, i64 320, i64 32, i32 0, i32
> 0, !9, !16, i32 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size
> 320, align 32, offset 0] [from int]
>  !16 = !{!17}
>  !17 = !{i32 786465, i64 0, i64 10}       ; [ DW_TAG_subrange_type ] [0, 9]
> -!18 = !{i32 3, i32 0, !4, null}
> -!19 = !{i32 4, i32 0, !4, null}
> +!18 = !MDLocation(line: 3, scope: !4)
> +!19 = !MDLocation(line: 4, scope: !4)
>  !20 = !{i32 786688, !4, !"sum", !6, i32 5, !9, i32 0, i32 0} ; [
> DW_TAG_auto_variable ] [sum] [line 5]
> -!21 = !{i32 5, i32 0, !4, null}
> -!22 = !{i32 6, i32 0, !4, null}
> -!23 = !{i32 13, i32 0, !10, null}
> +!21 = !MDLocation(line: 5, scope: !4)
> +!22 = !MDLocation(line: 6, scope: !4)
> +!23 = !MDLocation(line: 13, scope: !10)
>  !24 = !{i32 786688, !10, !"i", !6, i32 14, !9, i32 0, i32 0} ; [
> DW_TAG_auto_variable ] [i] [line 14]
> -!25 = !{i32 14, i32 0, !10, null}
> -!26 = !{i32 15, i32 0, !10, null}
> +!25 = !MDLocation(line: 14, scope: !10)
> +!26 = !MDLocation(line: 15, scope: !10)
>
> Modified: llvm/trunk/test/DebugInfo/debug-info-qualifiers.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/debug-info-qualifiers.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/debug-info-qualifiers.ll (original)
> +++ llvm/trunk/test/DebugInfo/debug-info-qualifiers.ll Wed Jan 14 16:27:36
> 2015
> @@ -86,15 +86,15 @@ attributes #1 = { nounwind readnone }
>  !22 = !{i32 1, !"Debug Info Version", i32 2}
>  !23 = !{!"clang version 3.5 "}
>  !24 = !{!"0x100\00a\0011\000", !17, !18, !4} ; [ DW_TAG_auto_variable ]
> [a] [line 11]
> -!25 = !{i32 11, i32 0, !17, null}
> +!25 = !MDLocation(line: 11, scope: !17)
>  !26 = !{!"0x100\00pl\0016\000", !17, !18, !27} ; [ DW_TAG_auto_variable ]
> [pl] [line 16]
>  !27 = !{!"0x1f\00\000\000\000\000\000", null, null, !28, !"_ZTS1A"} ; [
> DW_TAG_ptr_to_member_type ] [line 0, size 0, align 0, offset 0] [from ]
>  !28 = !{!"0x15\00\000\000\000\000\0016384\000", i32 0, null, null, !29,
> null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0,
> offset 0] [reference] [from ]
>  !29 = !{null, !30}
>  !30 = !{!"0xf\00\000\0064\0064\000\001088", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [artificial]
> [from _ZTS1A]
> -!31 = !{i32 16, i32 0, !17, null}
> +!31 = !MDLocation(line: 16, scope: !17)
>  !32 = !{!"0x100\00pr\0021\000", !17, !18, !33} ; [ DW_TAG_auto_variable ]
> [pr] [line 21]
>  !33 = !{!"0x1f\00\000\000\000\000\000", null, null, !34, !"_ZTS1A"} ; [
> DW_TAG_ptr_to_member_type ] [line 0, size 0, align 0, offset 0] [from ]
>  !34 = !{!"0x15\00\000\000\000\000\0032768\000", i32 0, null, null, !29,
> null, null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0,
> offset 0] [rvalue reference] [from ]
> -!35 = !{i32 21, i32 0, !17, null}
> -!36 = !{i32 22, i32 0, !17, null}
> +!35 = !MDLocation(line: 21, scope: !17)
> +!36 = !MDLocation(line: 22, scope: !17)
>
> Modified: llvm/trunk/test/DebugInfo/debuginfofinder-multiple-cu.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/debuginfofinder-multiple-cu.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/debuginfofinder-multiple-cu.ll (original)
> +++ llvm/trunk/test/DebugInfo/debuginfofinder-multiple-cu.ll Wed Jan 14
> 16:27:36 2015
> @@ -36,6 +36,6 @@ define void @g() {
>  !11 = !{!"0x2e\00g\00g\00\001\000\001\000\006\000\000\001", !9, !12, !6,
> null, void ()* @g, null, null, !2} ; [ DW_TAG_subprogram ] [line 1] [def]
> [g]
>  !12 = !{!"0x29", !9}         ; [ DW_TAG_file_type ] [/tmp/test2.c]
>  !13 = !{i32 2, !"Dwarf Version", i32 4}
> -!14 = !{i32 1, i32 0, !4, null}
> -!15 = !{i32 1, i32 0, !11, null}
> +!14 = !MDLocation(line: 1, scope: !4)
> +!15 = !MDLocation(line: 1, scope: !11)
>  !16 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/duplicate_inline.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/duplicate_inline.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/duplicate_inline.ll (original)
> +++ llvm/trunk/test/DebugInfo/duplicate_inline.ll Wed Jan 14 16:27:36 2015
> @@ -20,14 +20,14 @@
>  ; appears to be only one inlined function.
>  ; To fix this, we'd need to add some kind of unique metadata per call
> site, possibly something like:
>  ;
> -; !42 = !{i32 1, i32 0, !43, !44}
> -; !44 = !{i32 2, i32 0, !45, null}
> +; !42 = !MDLocation(line: 1, scope: !43, inlinedAt: !44)
> +; !44 = !MDLocation(line: 2, scope: !45)
>  ;
>  ; ->
>  ;
> -; !42 = !{i32 1, i32 0, !43, !44}
> +; !42 = !MDLocation(line: 1, scope: !43, inlinedAt: !44)
>  ; !44 = !{!45, !44}
> -; !45 = !{i32 2, i32 0, !45, null}
> +; !45 = !MDLocation(line: 2, scope: !45)
>  ;
>  ; since cycles in metadata are not uniqued, the !44 node would not be
> shared
>  ; between calls to the same function from the same location, ensuring
> separate
> @@ -107,11 +107,11 @@ attributes #2 = { "less-precise-fpmad"="
>  !14 = !{!"clang version 3.6.0 "}
>  !15 = !{!"0x101\00x\0016777224\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [x] [line 8]
>  !16 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!17 = !{i32 8, i32 13, !4, null}
> +!17 = !MDLocation(line: 8, column: 13, scope: !4)
>  !18 = !{!"0x101\00y\0033554440\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [y] [line 8]
> -!19 = !{i32 8, i32 20, !4, null}
> -!20 = !{i32 8, i32 25, !4, null}
> +!19 = !MDLocation(line: 8, column: 20, scope: !4)
> +!20 = !MDLocation(line: 8, column: 25, scope: !4)
>  !21 = !{!"0x101\00i\0016777218\000", !9, !5, !8} ; [ DW_TAG_arg_variable
> ] [i] [line 2]
> -!22 = !{i32 2, i32 51, !9, !20}
> -!23 = !{i32 2, i32 56, !9, !20}
> -!24 = !{i32 8, i32 36, !4, null}
> +!22 = !MDLocation(line: 2, column: 51, scope: !9, inlinedAt: !20)
> +!23 = !MDLocation(line: 2, column: 56, scope: !9, inlinedAt: !20)
> +!24 = !MDLocation(line: 8, column: 36, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/dwarf-public-names.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/dwarf-public-names.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/dwarf-public-names.ll (original)
> +++ llvm/trunk/test/DebugInfo/dwarf-public-names.ll Wed Jan 14 16:27:36
> 2015
> @@ -120,12 +120,12 @@ attributes #1 = { nounwind readnone }
>  !27 =
> !{!"0x34\00global_namespace_variable\00global_namespace_variable\00_ZN2ns25global_namespace_variableE\0027\000\001",
> !21, !4, !11, i32* @_ZN2ns25global_namespace_variableE, null} ; [
> DW_TAG_variable ] [global_namespace_variable] [line 27] [def]
>  !28 = !{!"0x101\00this\0016777225\001088", !3, !4, !29} ; [
> DW_TAG_arg_variable ] [this] [line 9]
>  !29 = !{!"0xf\00\000\0064\0064\000\000", null, null, !8} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from C]
> -!30 = !{i32 9, i32 0, !3, null}
> -!31 = !{i32 10, i32 0, !3, null}
> -!32 = !{i32 11, i32 0, !3, null}
> -!33 = !{i32 14, i32 0, !18, null}
> -!34 = !{i32 20, i32 0, !19, null}
> -!35 = !{i32 25, i32 0, !20, null}
> -!36 = !{i32 26, i32 0, !20, null}
> +!30 = !MDLocation(line: 9, scope: !3)
> +!31 = !MDLocation(line: 10, scope: !3)
> +!32 = !MDLocation(line: 11, scope: !3)
> +!33 = !MDLocation(line: 14, scope: !18)
> +!34 = !MDLocation(line: 20, scope: !19)
> +!35 = !MDLocation(line: 25, scope: !20)
> +!36 = !MDLocation(line: 26, scope: !20)
>  !37 = !{!"dwarf-public-names.cpp", !"/usr2/kparzysz/s.hex/t"}
>  !38 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/enum-types.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/enum-types.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/enum-types.ll (original)
> +++ llvm/trunk/test/DebugInfo/enum-types.ll Wed Jan 14 16:27:36 2015
> @@ -71,8 +71,8 @@ attributes #1 = { nounwind readnone }
>  !20 = !{i32 2, !"Debug Info Version", i32 2}
>  !21 = !{!"clang version 3.5.0 (trunk 214102:214133) (llvm/trunk
> 214102:214132)"}
>  !22 = !{!"0x101\00sa\0016777221\000", !7, !8, !"_ZTS2EA"} ; [
> DW_TAG_arg_variable ] [sa] [line 5]
> -!23 = !{i32 5, i32 14, !7, null}
> -!24 = !{i32 6, i32 1, !7, null}
> +!23 = !MDLocation(line: 5, column: 14, scope: !7)
> +!24 = !MDLocation(line: 6, column: 1, scope: !7)
>  !25 = !{!"0x101\00sa\0016777221\000", !17, !18, !"_ZTS2EA"} ; [
> DW_TAG_arg_variable ] [sa] [line 5]
> -!26 = !{i32 5, i32 14, !17, null}
> -!27 = !{i32 6, i32 1, !17, null}
> +!26 = !MDLocation(line: 5, column: 14, scope: !17)
> +!27 = !MDLocation(line: 6, column: 1, scope: !17)
>
> Modified: llvm/trunk/test/DebugInfo/enum.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/enum.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/enum.ll (original)
> +++ llvm/trunk/test/DebugInfo/enum.ll Wed Jan 14 16:27:36 2015
> @@ -75,6 +75,6 @@ attributes #1 = { nounwind readnone }
>  !19 = !{i32 2, !"Dwarf Version", i32 3}
>  !20 = !{!"0x100\00b\004\000", !13, !14, !21} ; [ DW_TAG_auto_variable ]
> [b] [line 4]
>  !21 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
> -!22 = !{i32 4, i32 0, !13, null}
> -!23 = !{i32 5, i32 0, !13, null}
> +!22 = !MDLocation(line: 4, scope: !13)
> +!23 = !MDLocation(line: 5, scope: !13)
>  !24 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/global.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/global.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/global.ll (original)
> +++ llvm/trunk/test/DebugInfo/global.ll Wed Jan 14 16:27:36 2015
> @@ -38,5 +38,5 @@ attributes #0 = { nounwind readnone uwta
>  !9 = !{!10}
>  !10 = !{!"0x34\00i\00i\00_ZL1i\001\001\001", null, !5, !8, null, null} ;
> [ DW_TAG_variable ]
>  !11 = !{i32 2, !"Dwarf Version", i32 3}
> -!12 = !{i32 4, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/incorrect-variable-debugloc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/incorrect-variable-debugloc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/incorrect-variable-debugloc.ll (original)
> +++ llvm/trunk/test/DebugInfo/incorrect-variable-debugloc.ll Wed Jan 14
> 16:27:36 2015
> @@ -375,17 +375,17 @@ attributes #3 = { nounwind readnone }
>  !36 = !{i32 2, !"Dwarf Version", i32 4}
>  !37 = !{i32 2, !"Debug Info Version", i32 2}
>  !38 = !{!"clang version 3.5.0 "}
> -!39 = !{i32 6, i32 0, !32, !40}
> -!40 = !{i32 18, i32 0, !22, null}
> +!39 = !MDLocation(line: 6, scope: !32, inlinedAt: !40)
> +!40 = !MDLocation(line: 18, scope: !22)
>  !41 = !{!42, !43, i64 0}
>  !42 = !{!"_ZTS1B", !43, i64 0}
>  !43 = !{!"int", !44, i64 0}
>  !44 = !{!"omnipotent char", !45, i64 0}
>  !45 = !{!"Simple C/C++ TBAA"}
> -!46 = !{i32 17, i32 0, !22, null}
> -!47 = !{i32 19, i32 0, !22, null}
> -!48 = !{i32 0, i32 0, !28, null}
> -!49 = !{i32 22, i32 0, !28, null}
> -!50 = !{i32 6, i32 0, !32, !51}
> -!51 = !{i32 23, i32 0, !28, null}
> -!52 = !{i32 24, i32 0, !28, null}
> +!46 = !MDLocation(line: 17, scope: !22)
> +!47 = !MDLocation(line: 19, scope: !22)
> +!48 = !MDLocation(line: 0, scope: !28)
> +!49 = !MDLocation(line: 22, scope: !28)
> +!50 = !MDLocation(line: 6, scope: !32, inlinedAt: !51)
> +!51 = !MDLocation(line: 23, scope: !28)
> +!52 = !MDLocation(line: 24, scope: !28)
>
> Modified: llvm/trunk/test/DebugInfo/incorrect-variable-debugloc1.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/incorrect-variable-debugloc1.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/incorrect-variable-debugloc1.ll (original)
> +++ llvm/trunk/test/DebugInfo/incorrect-variable-debugloc1.ll Wed Jan 14
> 16:27:36 2015
> @@ -70,8 +70,8 @@ attributes #2 = { nounwind readnone }
>  !14 = !{!"clang version 3.6.0 (trunk 223522)"}
>  !15 = !{i32 13}
>  !16 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!17 = !{i32 5, i32 16, !4, null}
> -!18 = !{i32 5, i32 3, !4, null}
> -!19 = !{i32 6, i32 7, !4, null}
> -!20 = !{i32 7, i32 3, !4, null}
> +!17 = !MDLocation(line: 5, column: 16, scope: !4)
> +!18 = !MDLocation(line: 5, column: 3, scope: !4)
> +!19 = !MDLocation(line: 6, column: 7, scope: !4)
> +!20 = !MDLocation(line: 7, column: 3, scope: !4)
>
>
> Modified: llvm/trunk/test/DebugInfo/inheritance.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inheritance.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inheritance.ll (original)
> +++ llvm/trunk/test/DebugInfo/inheritance.ll Wed Jan 14 16:27:36 2015
> @@ -126,29 +126,29 @@ declare void @_ZdlPv(i8*) nounwind
>  !18 = !{!"0x2e\00~test1\00~test1\00\004\000\000\001\006\000\000\000", i32
> 0, !8, !19, !8, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !19 = !{!"0x15\00\000\000\000\000\000\000", !4, null, null, !20, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !20 = !{null, !17, !7}
> -!21 = !{i32 11, i32 0, !1, null}
> -!22 = !{i32 13, i32 0, !1, null}
> -!23 = !{i32 14, i32 0, !1, null}
> +!21 = !MDLocation(line: 11, scope: !1)
> +!22 = !MDLocation(line: 13, scope: !1)
> +!23 = !MDLocation(line: 14, scope: !1)
>  !24 = !{!"0x101\00this\0013\000", !25, !4, !26} ; [ DW_TAG_arg_variable ]
>  !25 =
> !{!"0x2e\00test1\00test1\00_ZN5test1C1Ev\001\000\001\000\006\000\000\000",
> i32 0, !4, !15, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !26 = !{!"0x26\00\000\0064\0064\000\0064", !4, null, !27} ; [
> DW_TAG_const_type ]
>  !27 = !{!"0xf\00\000\0064\0064\000\000", !4, null, !8} ; [
> DW_TAG_pointer_type ]
> -!28 = !{i32 1, i32 0, !25, null}
> -!29 = !{i32 1, i32 0, !30, null}
> +!28 = !MDLocation(line: 1, scope: !25)
> +!29 = !MDLocation(line: 1, scope: !30)
>  !30 = !{!"0xb\000\000\000", !44, !31} ; [ DW_TAG_lexical_block ]
>  !31 = !{!"0xb\000\000\000", !44, !25} ; [ DW_TAG_lexical_block ]
>  !32 = !{!"0x101\00this\004\000", !33, !4, !26} ; [ DW_TAG_arg_variable ]
>  !33 =
> !{!"0x2e\00~test1\00~test1\00_ZN5test1D1Ev\004\000\001\001\006\000\000\000",
> i32 0, !8, !15, !8, null, null, null, null} ; [ DW_TAG_subprogram ]
> -!34 = !{i32 4, i32 0, !33, null}
> -!35 = !{i32 5, i32 0, !36, null}
> +!34 = !MDLocation(line: 4, scope: !33)
> +!35 = !MDLocation(line: 5, scope: !36)
>  !36 = !{!"0xb\000\000\000", !44, !33} ; [ DW_TAG_lexical_block ]
> -!37 = !{i32 6, i32 0, !36, null}
> +!37 = !MDLocation(line: 6, scope: !36)
>  !38 = !{!"0x101\00this\004\000", !39, !4, !26} ; [ DW_TAG_arg_variable ]
>  !39 =
> !{!"0x2e\00~test1\00~test1\00_ZN5test1D0Ev\004\000\001\001\006\000\000\000",
> i32 0, !8, !15, !8, null, null, null, null} ; [ DW_TAG_subprogram ]
> -!40 = !{i32 4, i32 0, !39, null}
> -!41 = !{i32 5, i32 0, !42, null}
> +!40 = !MDLocation(line: 4, scope: !39)
> +!41 = !MDLocation(line: 5, scope: !42)
>  !42 = !{!"0xb\000\000\000", !44, !39} ; [ DW_TAG_lexical_block ]
> -!43 = !{i32 6, i32 0, !42, null}
> +!43 = !MDLocation(line: 6, scope: !42)
>  !44 = !{!"inheritance.cpp", !"/tmp/"}
>  !45 = !{i32 0}
>  !46 = !{!"<built-in>", !"/tmp/"}
>
> Modified: llvm/trunk/test/DebugInfo/inline-debug-info-multiret.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inline-debug-info-multiret.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inline-debug-info-multiret.ll (original)
> +++ llvm/trunk/test/DebugInfo/inline-debug-info-multiret.ll Wed Jan 14
> 16:27:36 2015
> @@ -10,8 +10,8 @@
>  ; CHECK: br label %invoke.cont, !dbg ![[MD]]
>  ; The branch instruction has the source location of line 9 and its
> inlined location
>  ; has the source location of line 14.
> -; CHECK: ![[INL:[0-9]+]] = !{i32 14, i32 0, {{.*}}, null}
> -; CHECK: ![[MD]] = !{i32 9, i32 0, {{.*}}, ![[INL]]}
> +; CHECK: ![[INL:[0-9]+]] = !MDLocation(line: 14, scope: {{.*}})
> +; CHECK: ![[MD]] = !MDLocation(line: 9, scope: {{.*}}, inlinedAt:
> ![[INL]])
>
>  ; ModuleID = 'test.cpp'
>  target datalayout =
> "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
> @@ -136,21 +136,21 @@ attributes #2 = { nounwind }
>  !11 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !12, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !12 = !{!9}
>  !13 = !{!"0x101\00k\0016777220\000", !4, !6, !9} ; [ DW_TAG_arg_variable
> ] [k] [line 4]
> -!14 = !{i32 4, i32 0, !4, null}
> +!14 = !MDLocation(line: 4, scope: !4)
>  !15 = !{!"0x100\00k2\005\000", !4, !6, !9} ; [ DW_TAG_auto_variable ]
> [k2] [line 5]
> -!16 = !{i32 5, i32 0, !4, null}
> -!17 = !{i32 6, i32 0, !4, null}
> -!18 = !{i32 7, i32 0, !4, null}
> -!19 = !{i32 8, i32 0, !4, null}
> -!20 = !{i32 9, i32 0, !4, null}
> -!21 = !{i32 14, i32 0, !22, null}
> +!16 = !MDLocation(line: 5, scope: !4)
> +!17 = !MDLocation(line: 6, scope: !4)
> +!18 = !MDLocation(line: 7, scope: !4)
> +!19 = !MDLocation(line: 8, scope: !4)
> +!20 = !MDLocation(line: 9, scope: !4)
> +!21 = !MDLocation(line: 14, scope: !22)
>  !22 = !{!"0xb\0013\000\000", !5, !10} ; [ DW_TAG_lexical_block ]
> [test.cpp]
> -!23 = !{i32 15, i32 0, !22, null}
> +!23 = !MDLocation(line: 15, scope: !22)
>  !24 = !{!"0x100\00e\0016\000", !10, !6, !9} ; [ DW_TAG_auto_variable ]
> [e] [line 16]
> -!25 = !{i32 16, i32 0, !10, null}
> -!26 = !{i32 17, i32 0, !27, null}
> +!25 = !MDLocation(line: 16, scope: !10)
> +!26 = !MDLocation(line: 17, scope: !27)
>  !27 = !{!"0xb\0016\000\001", !5, !10} ; [ DW_TAG_lexical_block ]
> [test.cpp]
> -!28 = !{i32 18, i32 0, !27, null}
> -!29 = !{i32 19, i32 0, !10, null}
> -!30 = !{i32 20, i32 0, !10, null}
> +!28 = !MDLocation(line: 18, scope: !27)
> +!29 = !MDLocation(line: 19, scope: !10)
> +!30 = !MDLocation(line: 20, scope: !10)
>  !31 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/inline-debug-info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inline-debug-info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inline-debug-info.ll (original)
> +++ llvm/trunk/test/DebugInfo/inline-debug-info.ll Wed Jan 14 16:27:36 2015
> @@ -31,8 +31,8 @@
>  ; CHECK: br label %invoke.cont, !dbg ![[MD:[0-9]+]]
>  ; The branch instruction has the source location of line 9 and its
> inlined location
>  ; has the source location of line 14.
> -; CHECK: ![[INL:[0-9]+]] = !{i32 14, i32 0, {{.*}}, null}
> -; CHECK: ![[MD]] = !{i32 9, i32 0, {{.*}}, ![[INL]]}
> +; CHECK: ![[INL:[0-9]+]] = !MDLocation(line: 14, scope: {{.*}})
> +; CHECK: ![[MD]] = !MDLocation(line: 9, scope: {{.*}}, inlinedAt:
> ![[INL]])
>
>  ; ModuleID = 'test.cpp'
>  target datalayout =
> "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
> @@ -154,21 +154,21 @@ attributes #2 = { nounwind }
>  !11 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !12, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !12 = !{!9}
>  !13 = !{!"0x101\00k\0016777220\000", !4, !6, !9} ; [ DW_TAG_arg_variable
> ] [k] [line 4]
> -!14 = !{i32 4, i32 0, !4, null}
> +!14 = !MDLocation(line: 4, scope: !4)
>  !15 = !{!"0x100\00k2\005\000", !4, !6, !9} ; [ DW_TAG_auto_variable ]
> [k2] [line 5]
> -!16 = !{i32 5, i32 0, !4, null}
> -!17 = !{i32 6, i32 0, !4, null}
> -!18 = !{i32 7, i32 0, !4, null}
> -!19 = !{i32 8, i32 0, !4, null}
> -!20 = !{i32 9, i32 0, !4, null}
> -!21 = !{i32 14, i32 0, !22, null}
> +!16 = !MDLocation(line: 5, scope: !4)
> +!17 = !MDLocation(line: 6, scope: !4)
> +!18 = !MDLocation(line: 7, scope: !4)
> +!19 = !MDLocation(line: 8, scope: !4)
> +!20 = !MDLocation(line: 9, scope: !4)
> +!21 = !MDLocation(line: 14, scope: !22)
>  !22 = !{!"0xb\0013\000\000", !5, !10} ; [ DW_TAG_lexical_block ]
> [test.cpp]
> -!23 = !{i32 15, i32 0, !22, null}
> +!23 = !MDLocation(line: 15, scope: !22)
>  !24 = !{!"0x100\00e\0016\000", !10, !6, !9} ; [ DW_TAG_auto_variable ]
> [e] [line 16]
> -!25 = !{i32 16, i32 0, !10, null}
> -!26 = !{i32 17, i32 0, !27, null}
> +!25 = !MDLocation(line: 16, scope: !10)
> +!26 = !MDLocation(line: 17, scope: !27)
>  !27 = !{!"0xb\0016\000\001", !5, !10} ; [ DW_TAG_lexical_block ]
> [test.cpp]
> -!28 = !{i32 18, i32 0, !27, null}
> -!29 = !{i32 19, i32 0, !10, null}
> -!30 = !{i32 20, i32 0, !10, null}
> +!28 = !MDLocation(line: 18, scope: !27)
> +!29 = !MDLocation(line: 19, scope: !10)
> +!30 = !MDLocation(line: 20, scope: !10)
>  !31 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/inline-no-debug-info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inline-no-debug-info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inline-no-debug-info.ll (original)
> +++ llvm/trunk/test/DebugInfo/inline-no-debug-info.ll Wed Jan 14 16:27:36
> 2015
> @@ -21,10 +21,10 @@
>
>  ; Debug location of the code in caller() and of the inlined code that did
> not
>  ; have any debug location before.
> -; CHECK-DAG: [[A]] = !{i32 4, i32 0, !{{[01-9]+}}, null}
> +; CHECK-DAG: [[A]] = !MDLocation(line: 4, scope: !{{[01-9]+}})
>
>  ; Debug location of the inlined code.
> -; CHECK-DAG: [[B]] = !{i32 2, i32 0, !{{[01-9]+}}, [[A]]}
> +; CHECK-DAG: [[B]] = !MDLocation(line: 2, scope: !{{[01-9]+}}, inlinedAt:
> [[A]])
>
>
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
> @@ -65,5 +65,5 @@ attributes #0 = { nounwind uwtable "less
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 2, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5.0 (210174)"}
> -!11 = !{i32 2, i32 0, !7, null}
> -!12 = !{i32 4, i32 0, !4, null}
> +!11 = !MDLocation(line: 2, scope: !7)
> +!12 = !MDLocation(line: 4, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/inline-scopes.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inline-scopes.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inline-scopes.ll (original)
> +++ llvm/trunk/test/DebugInfo/inline-scopes.ll Wed Jan 14 16:27:36 2015
> @@ -114,17 +114,17 @@ attributes #2 = { "less-precise-fpmad"="
>  !16 = !{!"0x100\00b\003\000", !17, !11, !18} ; [ DW_TAG_auto_variable ]
> [b] [line 3]
>  !17 = !{!"0xb\003\000\001", !1, !12} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/inline-scopes.cpp]
>  !18 = !{!"0x24\00bool\000\008\008\000\000\002", null, null} ; [
> DW_TAG_base_type ] [bool] [line 0, size 8, align 8, offset 0, enc
> DW_ATE_boolean]
> -!19 = !{i32 3, i32 0, !17, !20}
> -!20 = !{i32 8, i32 0, !4, null}
> -!21 = !{i32 4, i32 0, !17, !20}
> -!22 = !{i32 5, i32 0, !12, !20}
> -!23 = !{i32 6, i32 0, !12, !20}
> +!19 = !MDLocation(line: 3, scope: !17, inlinedAt: !20)
> +!20 = !MDLocation(line: 8, scope: !4)
> +!21 = !MDLocation(line: 4, scope: !17, inlinedAt: !20)
> +!22 = !MDLocation(line: 5, scope: !12, inlinedAt: !20)
> +!23 = !MDLocation(line: 6, scope: !12, inlinedAt: !20)
>  !24 = !{!"0x100\00b\002\000", !25, !6, !18} ; [ DW_TAG_auto_variable ]
> [b] [line 2]
>  !25 = !{!"0xb\002\000\000", !5, !26} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/y.cc]
>  !26 = !{!"0xb\000", !5, !10} ; [ DW_TAG_lexical_block ]
> [/tmp/dbginfo/y.cc]
> -!27 = !{i32 2, i32 0, !25, !28}
> -!28 = !{i32 9, i32 0, !4, null}
> -!29 = !{i32 3, i32 0, !25, !28}
> -!30 = !{i32 4, i32 0, !26, !28}
> -!31 = !{i32 5, i32 0, !26, !28}
> -!32 = !{i32 10, i32 0, !4, null}
> +!27 = !MDLocation(line: 2, scope: !25, inlinedAt: !28)
> +!28 = !MDLocation(line: 9, scope: !4)
> +!29 = !MDLocation(line: 3, scope: !25, inlinedAt: !28)
> +!30 = !MDLocation(line: 4, scope: !26, inlinedAt: !28)
> +!31 = !MDLocation(line: 5, scope: !26, inlinedAt: !28)
> +!32 = !MDLocation(line: 10, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/inlined-arguments.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inlined-arguments.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inlined-arguments.ll (original)
> +++ llvm/trunk/test/DebugInfo/inlined-arguments.ll Wed Jan 14 16:27:36 2015
> @@ -67,13 +67,13 @@ attributes #2 = { nounwind readnone }
>  !14 = !{!"0x101\00y\0033554438\000", !8, !5, !11} ; [ DW_TAG_arg_variable
> ] [y] [line 6]
>  !15 = !{i32 undef}
>  !16 = !{!"0x101\00x\0016777222\000", !8, !5, !11, !17} ; [
> DW_TAG_arg_variable ] [x] [line 6]
> -!17 = !{i32 4, i32 0, !4, null}
> -!18 = !{i32 6, i32 0, !8, !17}
> +!17 = !MDLocation(line: 4, scope: !4)
> +!18 = !MDLocation(line: 6, scope: !8, inlinedAt: !17)
>  !19 = !{i32 2}
>  !20 = !{!"0x101\00y\0033554438\000", !8, !5, !11, !17} ; [
> DW_TAG_arg_variable ] [y] [line 6]
> -!21 = !{i32 7, i32 0, !8, !17}
> -!22 = !{i32 5, i32 0, !4, null}
> -!23 = !{i32 6, i32 0, !8, null}
> -!24 = !{i32 7, i32 0, !8, null}
> -!25 = !{i32 8, i32 0, !8, null}
> +!21 = !MDLocation(line: 7, scope: !8, inlinedAt: !17)
> +!22 = !MDLocation(line: 5, scope: !4)
> +!23 = !MDLocation(line: 6, scope: !8)
> +!24 = !MDLocation(line: 7, scope: !8)
> +!25 = !MDLocation(line: 8, scope: !8)
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/inlined-vars.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/inlined-vars.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/inlined-vars.ll (original)
> +++ llvm/trunk/test/DebugInfo/inlined-vars.ll Wed Jan 14 16:27:36 2015
> @@ -46,11 +46,11 @@ declare void @llvm.dbg.value(metadata, i
>  ; VARIABLE-NOT: {{.*Abbrev.*DW_TAG_variable}}
>
>  !18 = !{!"0x101\00argument\0016777219\000", !10, !6, !9, !19} ; [
> DW_TAG_arg_variable ]
> -!19 = !{i32 11, i32 10, !5, null}
> -!21 = !{i32 3, i32 25, !10, !19}
> +!19 = !MDLocation(line: 11, column: 10, scope: !5)
> +!21 = !MDLocation(line: 3, column: 25, scope: !10, inlinedAt: !19)
>  !22 = !{!"0x100\00local\004\000", !10, !6, !9, !19} ; [
> DW_TAG_auto_variable ]
> -!23 = !{i32 4, i32 16, !10, !19}
> -!24 = !{i32 5, i32 3, !10, !19}
> -!25 = !{i32 6, i32 3, !10, !19}
> +!23 = !MDLocation(line: 4, column: 16, scope: !10, inlinedAt: !19)
> +!24 = !MDLocation(line: 5, column: 3, scope: !10, inlinedAt: !19)
> +!25 = !MDLocation(line: 6, column: 3, scope: !10, inlinedAt: !19)
>  !26 = !{!"inline-bug.cc", !"/tmp/dbginfo/pr13202"}
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/lto-comp-dir.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/lto-comp-dir.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/lto-comp-dir.ll (original)
> +++ llvm/trunk/test/DebugInfo/lto-comp-dir.ll Wed Jan 14 16:27:36 2015
> @@ -78,7 +78,7 @@ attributes #1 = { uwtable "less-precise-
>  !16 = !{i32 2, !"Dwarf Version", i32 4}
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>  !18 = !{!"clang version 3.5.0 "}
> -!19 = !{i32 2, i32 0, !4, null}
> -!20 = !{i32 3, i32 0, !11, null}
> -!21 = !{i32 4, i32 0, !11, null}
> +!19 = !MDLocation(line: 2, scope: !4)
> +!20 = !MDLocation(line: 3, scope: !11)
> +!21 = !MDLocation(line: 4, scope: !11)
>
>
> Modified: llvm/trunk/test/DebugInfo/member-order.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/member-order.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/member-order.ll (original)
> +++ llvm/trunk/test/DebugInfo/member-order.ll Wed Jan 14 16:27:36 2015
> @@ -61,6 +61,6 @@ attributes #1 = { nounwind readnone }
>  !15 = !{i32 2, !"Dwarf Version", i32 4}
>  !16 = !{!"0x101\00this\0016777216\001088", !14, null, !17} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !17 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS3foo"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS3foo]
> -!18 = !{i32 0, i32 0, !14, null}
> -!19 = !{i32 7, i32 0, !14, null}
> +!18 = !MDLocation(line: 0, scope: !14)
> +!19 = !MDLocation(line: 7, scope: !14)
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/missing-abstract-variable.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/missing-abstract-variable.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/missing-abstract-variable.ll (original)
> +++ llvm/trunk/test/DebugInfo/missing-abstract-variable.ll Wed Jan 14
> 16:27:36 2015
> @@ -161,22 +161,22 @@ attributes #2 = { nounwind readnone }
>  !23 = !{!"clang version 3.5.0 "}
>  !24 = !{i1 false}
>  !25 = !{!"0x101\00b\0016777221\000", !14, !5, !11, !26} ; [
> DW_TAG_arg_variable ] [b] [line 5]
> -!26 = !{i32 14, i32 0, !4, null}
> -!27 = !{i32 5, i32 0, !14, !26}
> -!28 = !{i32 10, i32 0, !14, !26}
> -!29 = !{i32 15, i32 0, !4, null}
> -!30 = !{i32 17, i32 0, !8, null}
> +!26 = !MDLocation(line: 14, scope: !4)
> +!27 = !MDLocation(line: 5, scope: !14, inlinedAt: !26)
> +!28 = !MDLocation(line: 10, scope: !14, inlinedAt: !26)
> +!29 = !MDLocation(line: 15, scope: !4)
> +!30 = !MDLocation(line: 17, scope: !8)
>  !31 = !{!"0x101\00b\0016777221\000", !14, !5, !11, !32} ; [
> DW_TAG_arg_variable ] [b] [line 5]
> -!32 = !{i32 18, i32 0, !8, null}
> -!33 = !{i32 5, i32 0, !14, !32}
> -!34 = !{i32 6, i32 0, !19, !32}
> -!35 = !{i32 7, i32 0, !18, !32}
> +!32 = !MDLocation(line: 18, scope: !8)
> +!33 = !MDLocation(line: 5, scope: !14, inlinedAt: !32)
> +!34 = !MDLocation(line: 6, scope: !19, inlinedAt: !32)
> +!35 = !MDLocation(line: 7, scope: !18, inlinedAt: !32)
>  !36 = !{!37, !37, i64 0}
>  !37 = !{!"int", !38, i64 0}
>  !38 = !{!"omnipotent char", !39, i64 0}
>  !39 = !{!"Simple C/C++ TBAA"}
>  !40 = !{!"0x100\00s\007\000", !18, !5, !20, !32} ; [ DW_TAG_auto_variable
> ] [s] [line 7]
> -!41 = !{i32 8, i32 0, !18, !32}
> -!42 = !{i32 9, i32 0, !18, !32}
> -!43 = !{i32 10, i32 0, !14, !32}
> -!44 = !{i32 19, i32 0, !8, null}
> +!41 = !MDLocation(line: 8, scope: !18, inlinedAt: !32)
> +!42 = !MDLocation(line: 9, scope: !18, inlinedAt: !32)
> +!43 = !MDLocation(line: 10, scope: !14, inlinedAt: !32)
> +!44 = !MDLocation(line: 19, scope: !8)
>
> Modified: llvm/trunk/test/DebugInfo/multiline.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/multiline.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/multiline.ll (original)
> +++ llvm/trunk/test/DebugInfo/multiline.ll Wed Jan 14 16:27:36 2015
> @@ -73,10 +73,10 @@ attributes #1 = { "less-precise-fpmad"="
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 2, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.6.0 (trunk 225000) (llvm/trunk 224999)"}
> -!11 = !{i32 3, i32 3, !4, null}
> -!12 = !{i32 3, i32 9, !4, null}
> -!13 = !{i32 3, i32 15, !4, null}
> -!14 = !{i32 4, i32 3, !4, null}
> -!15 = !{i32 4, i32 9, !4, null}
> -!16 = !{i32 4, i32 15, !4, null}
> -!17 = !{i32 5, i32 1, !4, null}
> +!11 = !MDLocation(line: 3, column: 3, scope: !4)
> +!12 = !MDLocation(line: 3, column: 9, scope: !4)
> +!13 = !MDLocation(line: 3, column: 15, scope: !4)
> +!14 = !MDLocation(line: 4, column: 3, scope: !4)
> +!15 = !MDLocation(line: 4, column: 9, scope: !4)
> +!16 = !MDLocation(line: 4, column: 15, scope: !4)
> +!17 = !MDLocation(line: 5, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/namespace.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/namespace.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/namespace.ll (original)
> +++ llvm/trunk/test/DebugInfo/namespace.ll Wed Jan 14 16:27:36 2015
> @@ -348,19 +348,19 @@ attributes #1 = { nounwind readnone }
>  !57 = !{i32 2, !"Dwarf Version", i32 2}
>  !58 = !{i32 2, !"Debug Info Version", i32 2}
>  !59 = !{!"clang version 3.6.0 "}
> -!60 = !{i32 3, i32 12, !10, null}
> +!60 = !MDLocation(line: 3, column: 12, scope: !10)
>  !61 = !{!"0x101\00\0016777220\000", !14, !18, !13} ; [
> DW_TAG_arg_variable ] [line 4]
>  !62 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!63 = !{i32 4, i32 12, !14, null}
> -!64 = !{i32 4, i32 16, !14, null}
> -!65 = !{i32 20, i32 12, !17, null}
> +!63 = !MDLocation(line: 4, column: 12, scope: !14)
> +!64 = !MDLocation(line: 4, column: 16, scope: !14)
> +!65 = !MDLocation(line: 20, column: 12, scope: !17)
>  !66 = !{!"0x101\00b\0016777237\000", !21, !18, !24} ; [
> DW_TAG_arg_variable ] [b] [line 21]
> -!67 = !{i32 21, i32 15, !21, null}
> -!68 = !{i32 22, i32 7, !21, null}
> -!69 = !{i32 24, i32 5, !38, null}
> -!70 = !{i32 38, i32 3, !21, null}
> -!71 = !{i32 39, i32 1, !21, null}
> -!72 = !{i32 44, i32 15, !25, null}
> -!73 = !{i32 47, i32 21, !26, null}
> -!74 = !{i32 0, i32 0, !75, null}
> +!67 = !MDLocation(line: 21, column: 15, scope: !21)
> +!68 = !MDLocation(line: 22, column: 7, scope: !21)
> +!69 = !MDLocation(line: 24, column: 5, scope: !38)
> +!70 = !MDLocation(line: 38, column: 3, scope: !21)
> +!71 = !MDLocation(line: 39, column: 1, scope: !21)
> +!72 = !MDLocation(line: 44, column: 15, scope: !25)
> +!73 = !MDLocation(line: 47, column: 21, scope: !26)
> +!74 = !MDLocation(line: 0, scope: !75)
>  !75 = !{!"0xb\000", !5, !27} ; [ DW_TAG_lexical_block ] [/tmp/foo.cpp]
>
> Modified: llvm/trunk/test/DebugInfo/namespace_function_definition.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/namespace_function_definition.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/namespace_function_definition.ll (original)
> +++ llvm/trunk/test/DebugInfo/namespace_function_definition.ll Wed Jan 14
> 16:27:36 2015
> @@ -41,4 +41,4 @@ attributes #0 = { nounwind uwtable "less
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 1, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5.0 "}
> -!11 = !{i32 3, i32 0, !4, null}
> +!11 = !MDLocation(line: 3, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/namespace_inline_function_definition.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/namespace_inline_function_definition.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/namespace_inline_function_definition.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/namespace_inline_function_definition.ll Wed
> Jan 14 16:27:36 2015
> @@ -86,7 +86,7 @@ attributes #2 = { nounwind readnone }
>  !13 = !{i32 2, !"Dwarf Version", i32 4}
>  !14 = !{i32 2, !"Debug Info Version", i32 2}
>  !15 = !{!"clang version 3.5.0 "}
> -!16 = !{i32 5, i32 0, !4, null}
> +!16 = !MDLocation(line: 5, scope: !4)
>  !17 = !{!"0x101\00i\0016777222\000", !9, !5, !8} ; [ DW_TAG_arg_variable
> ] [i] [line 6]
> -!18 = !{i32 6, i32 0, !9, !16}
> -!19 = !{i32 6, i32 0, !9, null}
> +!18 = !MDLocation(line: 6, scope: !9, inlinedAt: !16)
> +!19 = !MDLocation(line: 6, scope: !9)
>
> Modified: llvm/trunk/test/DebugInfo/nodebug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/nodebug.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/nodebug.ll (original)
> +++ llvm/trunk/test/DebugInfo/nodebug.ll Wed Jan 14 16:27:36 2015
> @@ -48,4 +48,4 @@ attributes #0 = { uwtable "less-precise-
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 2, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5.0 "}
> -!11 = !{i32 3, i32 0, !4, null}
> +!11 = !MDLocation(line: 3, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/restrict.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/restrict.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/restrict.ll (original)
> +++ llvm/trunk/test/DebugInfo/restrict.ll Wed Jan 14 16:27:36 2015
> @@ -49,5 +49,5 @@ attributes #1 = { nounwind readnone }
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5.0 "}
>  !13 = !{!"0x101\00dst\0016777217\000", !4, !5, !8} ; [
> DW_TAG_arg_variable ] [dst] [line 1]
> -!14 = !{i32 1, i32 0, !4, null}
> -!15 = !{i32 2, i32 0, !4, null}
> +!14 = !MDLocation(line: 1, scope: !4)
> +!15 = !MDLocation(line: 2, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/sugared-constants.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/sugared-constants.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/sugared-constants.ll (original)
> +++ llvm/trunk/test/DebugInfo/sugared-constants.ll Wed Jan 14 16:27:36 2015
> @@ -71,12 +71,12 @@ attributes #2 = { nounwind readnone }
>  !18 = !{i32 1, !"Debug Info Version", i32 2}
>  !19 = !{!"clang version 3.5.0 "}
>  !20 = !{i32 42}
> -!21 = !{i32 5, i32 0, !4, null}
> -!22 = !{i32 6, i32 0, !4, null}
> +!21 = !MDLocation(line: 5, scope: !4)
> +!22 = !MDLocation(line: 6, scope: !4)
>  !23 = !{i32 117}
> -!24 = !{i32 7, i32 0, !4, null}
> -!25 = !{i32 8, i32 0, !4, null}
> +!24 = !MDLocation(line: 7, scope: !4)
> +!25 = !MDLocation(line: 8, scope: !4)
>  !26 = !{i16 7}
> -!27 = !{i32 9, i32 0, !4, null}
> -!28 = !{i32 10, i32 0, !4, null}
> -!29 = !{i32 11, i32 0, !4, null}
> +!27 = !MDLocation(line: 9, scope: !4)
> +!28 = !MDLocation(line: 10, scope: !4)
> +!29 = !MDLocation(line: 11, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/tu-composite.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/tu-composite.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/tu-composite.ll (original)
> +++ llvm/trunk/test/DebugInfo/tu-composite.ll Wed Jan 14 16:27:36 2015
> @@ -161,25 +161,25 @@ attributes #1 = { nounwind readnone }
>  !35 = !{i32 2, !"Dwarf Version", i32 2}
>  !36 = !{!"0x101\00this\0016777216\001088", !31, null, !37} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !37 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1C"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1C]
> -!38 = !{i32 0, i32 0, !31, null}
> -!39 = !{i32 5, i32 0, !31, null}
> +!38 = !MDLocation(line: 0, scope: !31)
> +!39 = !MDLocation(line: 5, scope: !31)
>  !40 = !{!"0x100\00B\0021\000", !32, !7, !41} ; [ DW_TAG_auto_variable ]
> [B] [line 21]
>  !41 = !{!"0x16\00baz\008\000\000\000\000", !1, null, !"_ZTS3bar"} ; [
> DW_TAG_typedef ] [baz] [line 8, size 0, align 0, offset 0] [from _ZTS3bar]
> -!42 = !{i32 21, i32 0, !32, null}
> +!42 = !MDLocation(line: 21, scope: !32)
>  !43 = !{!"0x100\00A\0022\000", !32, !7, !44} ; [ DW_TAG_auto_variable ]
> [A] [line 22]
>  !44 = !{!"0x1\00\000\0024\008\000\000", null, null, !"_ZTS3bar", !45, i32
> 0, null, null, null} ; [ DW_TAG_array_type ] [line 0, size 24, align 8,
> offset 0] [from _ZTS3bar]
>  !45 = !{!46}
>  !46 = !{!"0x21\000\003"}        ; [ DW_TAG_subrange_type ] [0, 2]
> -!47 = !{i32 22, i32 0, !32, null}
> +!47 = !MDLocation(line: 22, scope: !32)
>  !48 = !{!"0x100\00B2\0023\000", !32, !7, !49} ; [ DW_TAG_auto_variable ]
> [B2] [line 23]
>  !49 = !{!"0x16\00baz2\0010\000\000\000\000", !1, !"_ZTS1D", !"_ZTS3bar"}
> ; [ DW_TAG_typedef ] [baz2] [line 10, size 0, align 0, offset 0] [from
> _ZTS3bar]
> -!50 = !{i32 23, i32 0, !32, null}
> +!50 = !MDLocation(line: 23, scope: !32)
>  !51 = !{!"0x100\00e\0024\000", !32, !7, !22} ; [ DW_TAG_auto_variable ]
> [e] [line 24]
> -!52 = !{i32 24, i32 0, !32, null}
> +!52 = !MDLocation(line: 24, scope: !32)
>  !53 = !{!"0x100\00p\0025\000", !32, !7, !54} ; [ DW_TAG_auto_variable ]
> [p] [line 25]
>  !54 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTSN1D7Nested2E"}
> ; [ DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from
> _ZTSN1D7Nested2E]
> -!55 = !{i32 25, i32 0, !32, null}
> +!55 = !MDLocation(line: 25, scope: !32)
>  !56 = !{!"0x100\00t\0026\000", !32, !7, !24} ; [ DW_TAG_auto_variable ]
> [t] [line 26]
> -!57 = !{i32 26, i32 0, !32, null}
> -!58 = !{i32 27, i32 0, !32, null}
> +!57 = !MDLocation(line: 26, scope: !32)
> +!58 = !MDLocation(line: 27, scope: !32)
>  !59 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/DebugInfo/two-cus-from-same-file.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/two-cus-from-same-file.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/two-cus-from-same-file.ll (original)
> +++ llvm/trunk/test/DebugInfo/two-cus-from-same-file.ll Wed Jan 14
> 16:27:36 2015
> @@ -54,15 +54,15 @@ declare void @llvm.dbg.value(metadata, i
>  !19 = !{!21, !22}
>  !21 = !{!"0x101\00argc\0016777227\000", !12, !6, !15} ; [
> DW_TAG_arg_variable ]
>  !22 = !{!"0x101\00argv\0033554443\000", !12, !6, !16} ; [
> DW_TAG_arg_variable ]
> -!23 = !{i32 6, i32 3, !24, null}
> +!23 = !MDLocation(line: 6, column: 3, scope: !24)
>  !24 = !{!"0xb\005\0016\000", !32, !5} ; [ DW_TAG_lexical_block ]
> -!25 = !{i32 7, i32 1, !24, null}
> -!26 = !{i32 11, i32 14, !12, null}
> -!27 = !{i32 11, i32 26, !12, null}
> -!28 = !{i32 12, i32 3, !29, null}
> +!25 = !MDLocation(line: 7, column: 1, scope: !24)
> +!26 = !MDLocation(line: 11, column: 14, scope: !12)
> +!27 = !MDLocation(line: 11, column: 26, scope: !12)
> +!28 = !MDLocation(line: 12, column: 3, scope: !29)
>  !29 = !{!"0xb\0011\0034\000", !32, !12} ; [ DW_TAG_lexical_block ]
> -!30 = !{i32 13, i32 3, !29, null}
> -!31 = !{i32 14, i32 3, !29, null}
> +!30 = !MDLocation(line: 13, column: 3, scope: !29)
> +!31 = !MDLocation(line: 14, column: 3, scope: !29)
>  !32 = !{!"foo.c", !"/tmp"}
>
>  ; This test is simple to be cross platform (many targets don't yet have
>
> Modified: llvm/trunk/test/DebugInfo/unconditional-branch.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/unconditional-branch.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/unconditional-branch.ll (original)
> +++ llvm/trunk/test/DebugInfo/unconditional-branch.ll Wed Jan 14 16:27:36
> 2015
> @@ -58,8 +58,8 @@ attributes #1 = { nounwind readnone }
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5.0 (204712)"}
>  !12 = !{!"0x101\00i\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [i] [line 1]
> -!13 = !{i32 1, i32 0, !4, null}
> -!14 = !{i32 2, i32 0, !4, null}
> -!15 = !{i32 4, i32 0, !16, null}
> +!13 = !MDLocation(line: 1, scope: !4)
> +!14 = !MDLocation(line: 2, scope: !4)
> +!15 = !MDLocation(line: 4, scope: !16)
>  !16 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [D:\work\EPRs\396363/test.c]
> -!17 = !{i32 6, i32 0, !4, null}
> +!17 = !MDLocation(line: 6, scope: !4)
>
> Modified: llvm/trunk/test/DebugInfo/varargs.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/varargs.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/varargs.ll (original)
> +++ llvm/trunk/test/DebugInfo/varargs.ll Wed Jan 14 16:27:36 2015
> @@ -93,10 +93,10 @@ attributes #1 = { nounwind readnone }
>  !19 = !{i32 1, !"Debug Info Version", i32 2}
>  !20 = !{!"clang version 3.5 "}
>  !21 = !{!"0x101\00c\0016777229\000", !14, !15, !10} ; [
> DW_TAG_arg_variable ] [c] [line 13]
> -!22 = !{i32 13, i32 0, !14, null}
> +!22 = !MDLocation(line: 13, scope: !14)
>  !23 = !{!"0x100\00a\0016\000", !14, !15, !4} ; [ DW_TAG_auto_variable ]
> [a] [line 16]
> -!24 = !{i32 16, i32 0, !14, null}
> +!24 = !MDLocation(line: 16, scope: !14)
>  !25 = !{!"0x100\00fptr\0018\000", !14, !15, !26} ; [ DW_TAG_auto_variable
> ] [fptr] [line 18]
>  !26 = !{!"0xf\00\000\0064\0064\000\000", null, null, !16} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from ]
> -!27 = !{i32 18, i32 0, !14, null}
> -!28 = !{i32 22, i32 0, !14, null}
> +!27 = !MDLocation(line: 18, scope: !14)
> +!28 = !MDLocation(line: 22, scope: !14)
>
> Modified: llvm/trunk/test/DebugInfo/version.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/version.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/version.ll (original)
> +++ llvm/trunk/test/DebugInfo/version.ll Wed Jan 14 16:27:36 2015
> @@ -28,5 +28,5 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{!8}
>  !8 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !9 = !{i32 2, !"Dwarf Version", i32 3}
> -!10 = !{i32 7, i32 0, !4, null}
> +!10 = !MDLocation(line: 7, scope: !4)
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Feature/md_on_instruction.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Feature/md_on_instruction.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Feature/md_on_instruction.ll (original)
> +++ llvm/trunk/test/Feature/md_on_instruction.ll Wed Jan 14 16:27:36 2015
> @@ -21,7 +21,7 @@ declare void @llvm.dbg.region.end(metada
>  !0 = !{!"0x2e\00foo\00foo\00foo\001\000\001\000\006\000\000\000", i32 0,
> !1, !2, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !1 = !{!"0x11\0012\00clang 1.0\001\00\000\00\000", !4, !5, !5, !4, null,
> null} ; [ DW_TAG_compile_unit ]
>  !2 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !1} ; [
> DW_TAG_base_type ]
> -!3 = !{i32 1, i32 13, !1, !1}
> +!3 = !MDLocation(line: 1, column: 13, scope: !1, inlinedAt: !1)
>  !4 = !{!"foo.c", !"/tmp"}
>  !5 = !{i32 0}
>  !6 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Instrumentation/AddressSanitizer/debug_info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Instrumentation/AddressSanitizer/debug_info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Instrumentation/AddressSanitizer/debug_info.ll
> (original)
> +++ llvm/trunk/test/Instrumentation/AddressSanitizer/debug_info.ll Wed Jan
> 14 16:27:36 2015
> @@ -42,7 +42,7 @@ declare void @llvm.dbg.declare(metadata,
>  !8 = !{!9, !9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ] [int] [line 0, size 32, align 32, offset 0, enc
> DW_ATE_signed]
>  !10 = !{!"0x101\00p\0016777217\000", !5, !6, !9} ; [ DW_TAG_arg_variable
> ] [p] [line 1]
> -!11 = !{i32 1, i32 0, !5, null}
> +!11 = !MDLocation(line: 1, scope: !5)
>  !12 = !{!"0x100\00r\002\000", !13, !6, !9} ; [ DW_TAG_auto_variable ] [r]
> [line 2]
>
>  ; Verify that debug descriptors for argument and local variable will be
> replaced
> @@ -56,7 +56,7 @@ declare void @llvm.dbg.declare(metadata,
>
>
>  !13 = !{!"0xb\001\000\000", !16, !5} ; [ DW_TAG_lexical_block ]
> [/usr/local/google/llvm_cmake_clang/tmp/debuginfo/a.cc]
> -!14 = !{i32 2, i32 0, !13, null}
> -!15 = !{i32 3, i32 0, !13, null}
> +!14 = !MDLocation(line: 2, scope: !13)
> +!15 = !MDLocation(line: 3, scope: !13)
>  !16 = !{!"a.cc", !"/usr/local/google/llvm_cmake_clang/tmp/debuginfo"}
>  !17 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Instrumentation/DataFlowSanitizer/debug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Instrumentation/DataFlowSanitizer/debug.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Instrumentation/DataFlowSanitizer/debug.ll (original)
> +++ llvm/trunk/test/Instrumentation/DataFlowSanitizer/debug.ll Wed Jan 14
> 16:27:36 2015
> @@ -33,4 +33,4 @@ attributes #0 = { nounwind uwtable "less
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.6.0 "}
> -!12 = !{i32 2, i32 1, !4, null}
> +!12 = !MDLocation(line: 2, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/Instrumentation/MemorySanitizer/store-origin.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Instrumentation/MemorySanitizer/store-origin.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Instrumentation/MemorySanitizer/store-origin.ll
> (original)
> +++ llvm/trunk/test/Instrumentation/MemorySanitizer/store-origin.ll Wed
> Jan 14 16:27:36 2015
> @@ -43,13 +43,13 @@ attributes #1 = { nounwind readnone }
>  !13 = !{i32 2, !"Dwarf Version", i32 4}
>  !14 = !{i32 1, !"Debug Info Version", i32 2}
>  !15 = !{!"clang version 3.5.0 (204220)"}
> -!16 = !{i32 1, i32 0, !4, null}
> -!17 = !{i32 2, i32 0, !4, null}
> +!16 = !MDLocation(line: 1, scope: !4)
> +!17 = !MDLocation(line: 2, scope: !4)
>  !18 = !{!19, !19, i64 0}
>  !19 = !{!"int", !20, i64 0}
>  !20 = !{!"omnipotent char", !21, i64 0}
>  !21 = !{!"Simple C/C++ TBAA"}
> -!22 = !{i32 3, i32 0, !4, null}
> +!22 = !MDLocation(line: 3, scope: !4)
>
>
>  ; CHECK: @Store
>
> Modified: llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll
> (original)
> +++ llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll Wed
> Jan 14 16:27:36 2015
> @@ -16,7 +16,7 @@
>
>  ; Test that __sanitizer_cov call has !dbg pointing to the opening { of
> A::f().
>  ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[A:!.*]]
> -; CHECK: [[A]] = !{i32 6, i32 0, !{{.*}}, null}
> +; CHECK: [[A]] = !MDLocation(line: 6, scope: !{{.*}})
>
>
>  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
> @@ -63,5 +63,5 @@ attributes #1 = { nounwind readnone }
>  !17 = !{i32 2, !"Dwarf Version", i32 4}
>  !18 = !{i32 2, !"Debug Info Version", i32 2}
>  !19 = !{!"clang version 3.5.0 (210251)"}
> -!20 = !{i32 0, i32 0, !13, null}
> -!21 = !{i32 7, i32 0, !13, null}
> +!20 = !MDLocation(line: 0, scope: !13)
> +!21 = !MDLocation(line: 7, scope: !13)
>
> Modified:
> llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll
> (original)
> +++ llvm/trunk/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll Wed
> Jan 14 16:27:36 2015
> @@ -21,9 +21,9 @@ target triple = "x86_64-unknown-linux-gn
>  ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[B:!.*]]
>  ; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[C:!.*]]
>  ; CHECK: ret void
> -; CHECK: [[A]] = !{i32 1, i32 0, !{{.*}}, null}
> -; CHECK: [[B]] = !{i32 3, i32 5, !{{.*}}, null}
> -; CHECK: [[C]] = !{i32 4, i32 1, !{{.*}}, null}
> +; CHECK: [[A]] = !MDLocation(line: 1, scope: !{{.*}})
> +; CHECK: [[B]] = !MDLocation(line: 3, column: 5, scope: !{{.*}})
> +; CHECK: [[C]] = !MDLocation(line: 4, column: 1, scope: !{{.*}})
>
>  define void @_Z3fooPi(i32* %a) #0 {
>  entry:
> @@ -64,12 +64,12 @@ attributes #1 = { nounwind readnone }
>  !12 = !{i32 2, !"Dwarf Version", i32 4}
>  !13 = !{i32 2, !"Debug Info Version", i32 2}
>  !14 = !{!"clang version 3.6.0 (217079)"}
> -!15 = !{i32 1, i32 15, !4, null}
> -!16 = !{i32 2, i32 7, !17, null}
> +!15 = !MDLocation(line: 1, column: 15, scope: !4)
> +!16 = !MDLocation(line: 2, column: 7, scope: !17)
>  !17 = !{!"0xb\002\007\000", !1, !4} ; [ DW_TAG_lexical_block ] [FOO/if.cc]
> -!18 = !{i32 3, i32 5, !17, null}
> +!18 = !MDLocation(line: 3, column: 5, scope: !17)
>  !19 = !{!20, !20, i64 0}
>  !20 = !{!"int", !21, i64 0}
>  !21 = !{!"omnipotent char", !22, i64 0}
>  !22 = !{!"Simple C/C++ TBAA"}
> -!23 = !{i32 4, i32 1, !4, null}
> +!23 = !MDLocation(line: 4, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/JitListener/multiple.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/JitListener/multiple.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/JitListener/multiple.ll (original)
> +++ llvm/trunk/test/JitListener/multiple.ll Wed Jan 14 16:27:36 2015
> @@ -142,26 +142,26 @@ attributes #1 = { nounwind readnone }
>  !14 = !{!"clang version 3.6.0 (trunk)"}
>  !15 = !{!"0x101\00a\0016777217\000", !4, !5, !8}  ; [ DW_TAG_arg_variable
> ] [a] [line 1]
>  !16 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> -!17 = !{i32 1, i32 13, !4, null}
> -!18 = !{i32 2, i32 10, !4, null}
> -!19 = !{i32 2, i32 3, !4, null}
> +!17 = !MDLocation(line: 1, column: 13, scope: !4)
> +!18 = !MDLocation(line: 2, column: 10, scope: !4)
> +!19 = !MDLocation(line: 2, column: 3, scope: !4)
>  !20 = !{!"0x101\00a\0016777221\000", !9, !5, !8}  ; [ DW_TAG_arg_variable
> ] [a] [line 5]
> -!21 = !{i32 5, i32 13, !9, null}
> -!22 = !{i32 6, i32 7, !23, null}
> +!21 = !MDLocation(line: 5, column: 13, scope: !9)
> +!22 = !MDLocation(line: 6, column: 7, scope: !23)
>  !23 = !{!"0xb\006\007\000", !1, !9}               ; [
> DW_TAG_lexical_block ]
> [F:\users\akaylor\llvm-s\llvm\test\JitListener/multiple.c]
> -!24 = !{i32 6, i32 7, !9, null}
> -!25 = !{i32 7, i32 5, !26, null}
> +!24 = !MDLocation(line: 6, column: 7, scope: !9)
> +!25 = !MDLocation(line: 7, column: 5, scope: !26)
>  !26 = !{!"0xb\006\0015\001", !1, !23}             ; [
> DW_TAG_lexical_block ]
> [F:\users\akaylor\llvm-s\llvm\test\JitListener/multiple.c]
> -!27 = !{i32 9, i32 14, !9, null}
> -!28 = !{i32 9, i32 10, !9, null}
> -!29 = !{i32 9, i32 3, !9, null}
> -!30 = !{i32 10, i32 1, !9, null}
> +!27 = !MDLocation(line: 9, column: 14, scope: !9)
> +!28 = !MDLocation(line: 9, column: 10, scope: !9)
> +!29 = !MDLocation(line: 9, column: 3, scope: !9)
> +!30 = !MDLocation(line: 10, column: 1, scope: !9)
>  !31 = !{!"0x101\00a\0016777228\000", !10, !5, !8} ; [ DW_TAG_arg_variable
> ] [a] [line 12]
> -!32 = !{i32 12, i32 15, !10, null}
> -!33 = !{i32 13, i32 11, !10, null}
> -!34 = !{i32 13, i32 3, !10, null}
> -!35 = !{i32 15, i32 7, !36, null}
> +!32 = !MDLocation(line: 12, column: 15, scope: !10)
> +!33 = !MDLocation(line: 13, column: 11, scope: !10)
> +!34 = !MDLocation(line: 13, column: 3, scope: !10)
> +!35 = !MDLocation(line: 15, column: 7, scope: !36)
>  !36 = !{!"0xb\0013\0014\002", !1, !10}            ; [
> DW_TAG_lexical_block ]
> [F:\users\akaylor\llvm-s\llvm\test\JitListener/multiple.c]
> -!37 = !{i32 17, i32 7, !36, null}
> -!38 = !{i32 19, i32 7, !36, null}
> -!39 = !{i32 21, i32 1, !10, null}
> +!37 = !MDLocation(line: 17, column: 7, scope: !36)
> +!38 = !MDLocation(line: 19, column: 7, scope: !36)
> +!39 = !MDLocation(line: 21, column: 1, scope: !10)
>
> Modified: llvm/trunk/test/JitListener/simple.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/JitListener/simple.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/JitListener/simple.ll (original)
> +++ llvm/trunk/test/JitListener/simple.ll Wed Jan 14 16:27:36 2015
> @@ -49,6 +49,6 @@ attributes #1 = { nounwind readnone }
>  !11 = !{!"clang version 3.6.0 (trunk)"}
>  !12 = !{!"0x101\00a\0016777217\000", !4, !5, !8}  ; [ DW_TAG_arg_variable
> ] [a] [line 1]
>  !13 = !{!"0x102"}                                 ; [ DW_TAG_expression ]
> -!14 = !{i32 1, i32 13, !4, null}
> -!15 = !{i32 2, i32 10, !4, null}
> -!16 = !{i32 2, i32 3, !4, null}
> +!14 = !MDLocation(line: 1, column: 13, scope: !4)
> +!15 = !MDLocation(line: 2, column: 10, scope: !4)
> +!16 = !MDLocation(line: 2, column: 3, scope: !4)
>
> Modified: llvm/trunk/test/Linker/2011-08-04-DebugLoc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-04-DebugLoc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-04-DebugLoc.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-04-DebugLoc.ll Wed Jan 14 16:27:36 2015
> @@ -23,7 +23,7 @@ define i32 @foo() nounwind ssp {
>  !3 = !{!"0x15\00\000\000\000\000\000\000", !8, !2, null, !4, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !4 = !{!5}
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
> -!6 = !{i32 2, i32 13, !7, null}
> +!6 = !MDLocation(line: 2, column: 13, scope: !7)
>  !7 = !{!"0xb\002\0011\000", !8, !1} ; [ DW_TAG_lexical_block ]
>  !8 = !{!"a.c", !"/private/tmp"}
>  !9 = !{i32 0}
>
> Modified: llvm/trunk/test/Linker/2011-08-04-DebugLoc2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-04-DebugLoc2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-04-DebugLoc2.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-04-DebugLoc2.ll Wed Jan 14 16:27:36 2015
> @@ -20,7 +20,7 @@ define i32 @bar() nounwind ssp {
>  !3 = !{!"0x15\00\000\000\000\000\000\000", !8, !2, null, !4, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !4 = !{!5}
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
> -!6 = !{i32 1, i32 13, !7, null}
> +!6 = !MDLocation(line: 1, column: 13, scope: !7)
>  !7 = !{!"0xb\001\0011\000", !8, !1} ; [ DW_TAG_lexical_block ]
>  !8 = !{!"b.c", !"/private/tmp"}
>  !9 = !{i32 0}
>
> Modified: llvm/trunk/test/Linker/2011-08-04-Metadata.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-04-Metadata.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-04-Metadata.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-04-Metadata.ll Wed Jan 14 16:27:36 2015
> @@ -27,7 +27,7 @@ entry:
>  !4 = !{null}
>  !5 = !{!"0x34\00x\00x\00\002\001\001", !0, !2, !6, i32* @x} ; [
> DW_TAG_variable ]
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
> -!7 = !{i32 3, i32 14, !8, null}
> +!7 = !MDLocation(line: 3, column: 14, scope: !8)
>  !8 = !{!"0xb\003\0012\000", !9, !1} ; [ DW_TAG_lexical_block ]
>  !9 = !{!"/tmp/one.c", !"/Volumes/Lalgate/Slate/D"}
>  !10 = !{!1}
>
> Modified: llvm/trunk/test/Linker/2011-08-04-Metadata2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-04-Metadata2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-04-Metadata2.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-04-Metadata2.ll Wed Jan 14 16:27:36 2015
> @@ -26,7 +26,7 @@ entry:
>  !4 = !{null}
>  !5 = !{!"0x34\00x\00x\00\001\001\001", !0, !2, !6, i32* @x} ; [
> DW_TAG_variable ]
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
> -!7 = !{i32 2, i32 14, !8, null}
> +!7 = !MDLocation(line: 2, column: 14, scope: !8)
>  !8 = !{!"0xb\002\0012\000", !9, !1} ; [ DW_TAG_lexical_block ]
>  !9 = !{!"/tmp/two.c", !"/Volumes/Lalgate/Slate/D"}
>  !10 = !{!1}
>
> Modified: llvm/trunk/test/Linker/2011-08-18-unique-class-type.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-18-unique-class-type.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-18-unique-class-type.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-18-unique-class-type.ll Wed Jan 14
> 16:27:36 2015
> @@ -32,8 +32,8 @@ declare void @llvm.dbg.declare(metadata,
>  !10 = !{!"0x2\00A\003\008\008\000\000\000", !17, !11, null, !2, null,
> null, null} ; [ DW_TAG_class_type ] [A] [line 3, size 8, align 8, offset 0]
> [def] [from ]
>  !11 = !{!"0x39\00N1\002", !17, null} ; [ DW_TAG_namespace ]
>  !12 = !{!"0x29", !17} ; [ DW_TAG_file_type ]
> -!13 = !{i32 4, i32 12, !5, null}
> -!14 = !{i32 4, i32 18, !15, null}
> +!13 = !MDLocation(line: 4, column: 12, scope: !5)
> +!14 = !MDLocation(line: 4, column: 18, scope: !15)
>  !15 = !{!"0xb\004\0017\000", !16, !5} ; [ DW_TAG_lexical_block ]
>  !16 = !{!"n1.c", !"/private/tmp"}
>  !17 = !{!"./n.h", !"/private/tmp"}
>
> Modified: llvm/trunk/test/Linker/2011-08-18-unique-class-type2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-18-unique-class-type2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-18-unique-class-type2.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-18-unique-class-type2.ll Wed Jan 14
> 16:27:36 2015
> @@ -30,8 +30,8 @@ declare void @llvm.dbg.declare(metadata,
>  !10 = !{!"0x2\00A\003\008\008\000\000\000", !17, !11, null, !2, null,
> null, null} ; [ DW_TAG_class_type ] [A] [line 3, size 8, align 8, offset 0]
> [def] [from ]
>  !11 = !{!"0x39\00N1\002", !17, null} ; [ DW_TAG_namespace ]
>  !12 = !{!"0x29", !17} ; [ DW_TAG_file_type ]
> -!13 = !{i32 4, i32 12, !5, null}
> -!14 = !{i32 4, i32 20, !15, null}
> +!13 = !MDLocation(line: 4, column: 12, scope: !5)
> +!14 = !MDLocation(line: 4, column: 20, scope: !15)
>  !15 = !{!"0xb\004\0019\000", !16, !5} ; [ DW_TAG_lexical_block ]
>  !16 = !{!"n2.c", !"/private/tmp"}
>  !17 = !{!"./n.h", !"/private/tmp"}
>
> Modified: llvm/trunk/test/Linker/2011-08-18-unique-debug-type.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-18-unique-debug-type.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-18-unique-debug-type.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-18-unique-debug-type.ll Wed Jan 14
> 16:27:36 2015
> @@ -21,7 +21,7 @@ entry:
>  !7 = !{!"0x15\00\000\000\000\000\000\000", !12, !6, null, !8, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !8 = !{!9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
> -!10 = !{i32 1, i32 13, !11, null}
> +!10 = !MDLocation(line: 1, column: 13, scope: !11)
>  !11 = !{!"0xb\001\0011\000", !12, !5} ; [ DW_TAG_lexical_block ]
>  !12 = !{!"one.c", !"/private/tmp"}
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/2011-08-18-unique-debug-type2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/2011-08-18-unique-debug-type2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/2011-08-18-unique-debug-type2.ll (original)
> +++ llvm/trunk/test/Linker/2011-08-18-unique-debug-type2.ll Wed Jan 14
> 16:27:36 2015
> @@ -21,7 +21,7 @@ entry:
>  !7 = !{!"0x15\00\000\000\000\000\000\000", !12, !6, null, !8, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !8 = !{!9}
>  !9 = !{!"0x24\00int\000\0032\0032\000\000\005", null, null} ; [
> DW_TAG_base_type ]
> -!10 = !{i32 1, i32 13, !11, null}
> +!10 = !MDLocation(line: 1, column: 13, scope: !11)
>  !11 = !{!"0xb\001\0011\000", !12, !5} ; [ DW_TAG_lexical_block ]
>  !12 = !{!"two.c", !"/private/tmp"}
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/DbgDeclare.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/DbgDeclare.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/DbgDeclare.ll (original)
> +++ llvm/trunk/test/Linker/DbgDeclare.ll Wed Jan 14 16:27:36 2015
> @@ -51,10 +51,10 @@ declare void @test(i32, i8**)
>  !12 = !{!"0x26\00\000\000\000\000\000", null, null, !13} ; [
> DW_TAG_const_type ]
>  !13 = !{!"0x24\00char\000\008\008\000\000\006", null, null} ; [
> DW_TAG_base_type ]
>  !14 = !{!"0x101\00argc\0016777219\000", !5, !6, !9} ; [
> DW_TAG_arg_variable ]
> -!15 = !{i32 3, i32 0, !5, null}
> +!15 = !MDLocation(line: 3, scope: !5)
>  !16 = !{!"0x101\00argv\0033554435\000", !5, !6, !10} ; [
> DW_TAG_arg_variable ]
> -!17 = !{i32 5, i32 0, !18, null}
> +!17 = !MDLocation(line: 5, scope: !18)
>  !18 = !{!"0xb\004\000\000", !20, !5} ; [ DW_TAG_lexical_block ]
> -!19 = !{i32 6, i32 0, !18, null}
> +!19 = !MDLocation(line: 6, scope: !18)
>  !20 = !{!"main.cpp", !"/private/tmp"}
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/DbgDeclare2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/DbgDeclare2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/DbgDeclare2.ll (original)
> +++ llvm/trunk/test/Linker/DbgDeclare2.ll Wed Jan 14 16:27:36 2015
> @@ -64,16 +64,16 @@ declare i32 @puts(i8*)
>  !12 = !{!"0x26\00\000\000\000\000\000", null, null, !13} ; [
> DW_TAG_const_type ]
>  !13 = !{!"0x24\00char\000\008\008\000\000\006", null, null} ; [
> DW_TAG_base_type ]
>  !14 = !{!"0x101\00argc\0016777220\000", !5, !6, !9} ; [
> DW_TAG_arg_variable ]
> -!15 = !{i32 4, i32 0, !5, null}
> +!15 = !MDLocation(line: 4, scope: !5)
>  !16 = !{!"0x101\00argv\0033554436\000", !5, !6, !10} ; [
> DW_TAG_arg_variable ]
>  !17 = !{!"0x100\00i\006\000", !18, !6, !9} ; [ DW_TAG_auto_variable ]
>  !18 = !{!"0xb\006\000\001", !26, !19} ; [ DW_TAG_lexical_block ]
>  !19 = !{!"0xb\005\000\000", !26, !5} ; [ DW_TAG_lexical_block ]
> -!20 = !{i32 6, i32 0, !18, null}
> -!21 = !{i32 8, i32 0, !22, null}
> +!20 = !MDLocation(line: 6, scope: !18)
> +!21 = !MDLocation(line: 8, scope: !22)
>  !22 = !{!"0xb\007\000\002", !26, !18} ; [ DW_TAG_lexical_block ]
> -!23 = !{i32 9, i32 0, !22, null}
> -!24 = !{i32 10, i32 0, !19, null}
> +!23 = !MDLocation(line: 9, scope: !22)
> +!24 = !MDLocation(line: 10, scope: !19)
>  !25 = !{!"main.cpp", !"/private/tmp"}
>  !26 = !{!"test.cpp", !"/private/tmp"}
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified:
> llvm/trunk/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> ---
> llvm/trunk/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll
> (original)
> +++
> llvm/trunk/test/Linker/Inputs/replaced-function-matches-first-subprogram.ll
> Wed Jan 14 16:27:36 2015
> @@ -24,4 +24,4 @@ entry:
>  !9 = !{i32 2, !"Debug Info Version", i32 2}
>  !10 = !{i32 1, !"PIC Level", i32 2}
>  !11 = !{!"clang version 3.6.0 (trunk 224193) (llvm/trunk 224197)"}
> -!12 = !{i32 2, i32 15, !4, null}
> +!12 = !MDLocation(line: 2, column: 15, scope: !4)
>
> Modified: llvm/trunk/test/Linker/Inputs/type-unique-inheritance-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/Inputs/type-unique-inheritance-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/Inputs/type-unique-inheritance-a.ll (original)
> +++ llvm/trunk/test/Linker/Inputs/type-unique-inheritance-a.ll Wed Jan 14
> 16:27:36 2015
> @@ -87,8 +87,8 @@ attributes #1 = { nounwind readnone }
>  !18 = !{null, !12}
>  !19 = !{i32 2, !"Dwarf Version", i32 2}
>  !20 = !{!"0x101\00a\0016777221\000", !15, !16, !12} ; [
> DW_TAG_arg_variable ] [a] [line 5]
> -!21 = !{i32 5, i32 0, !15, null}
> +!21 = !MDLocation(line: 5, scope: !15)
>  !22 = !{!"0x100\00t\006\000", !15, !16, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 6]
> -!23 = !{i32 6, i32 0, !15, null}
> -!24 = !{i32 7, i32 0, !15, null}
> +!23 = !MDLocation(line: 6, scope: !15)
> +!24 = !MDLocation(line: 7, scope: !15)
>  !25 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/Inputs/type-unique-inheritance-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/Inputs/type-unique-inheritance-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/Inputs/type-unique-inheritance-b.ll (original)
> +++ llvm/trunk/test/Linker/Inputs/type-unique-inheritance-b.ll Wed Jan 14
> 16:27:36 2015
> @@ -69,13 +69,13 @@ attributes #3 = { "less-precise-fpmad"="
>  !26 = !{!8}
>  !27 = !{i32 2, !"Dwarf Version", i32 2}
>  !28 = !{!"0x101\00a\0016777220\000", !20, !21, !8} ; [
> DW_TAG_arg_variable ] [a] [line 4]
> -!29 = !{i32 4, i32 0, !20, null}
> +!29 = !MDLocation(line: 4, scope: !20)
>  !30 = !{!"0x100\00t\005\000", !20, !21, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 5]
> -!31 = !{i32 5, i32 0, !20, null}
> -!32 = !{i32 6, i32 0, !20, null}
> +!31 = !MDLocation(line: 5, scope: !20)
> +!32 = !MDLocation(line: 6, scope: !20)
>  !33 = !{!"0x100\00a\0010\000", !24, !21, !11} ; [ DW_TAG_auto_variable ]
> [a] [line 10]
> -!34 = !{i32 10, i32 0, !24, null}
> -!35 = !{i32 11, i32 0, !24, null}
> -!36 = !{i32 12, i32 0, !24, null}
> -!37 = !{i32 13, i32 0, !24, null}
> +!34 = !MDLocation(line: 10, scope: !24)
> +!35 = !MDLocation(line: 11, scope: !24)
> +!36 = !MDLocation(line: 12, scope: !24)
> +!37 = !MDLocation(line: 13, scope: !24)
>  !38 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/Inputs/type-unique-simple2-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/Inputs/type-unique-simple2-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/Inputs/type-unique-simple2-a.ll (original)
> +++ llvm/trunk/test/Linker/Inputs/type-unique-simple2-a.ll Wed Jan 14
> 16:27:36 2015
> @@ -81,8 +81,8 @@ attributes #1 = { nounwind readnone }
>  !15 = !{null, !8}
>  !16 = !{i32 2, !"Dwarf Version", i32 2}
>  !17 = !{!"0x101\00a\0016777219\000", !12, !13, !8} ; [
> DW_TAG_arg_variable ] [a] [line 3]
> -!18 = !{i32 3, i32 0, !12, null}
> +!18 = !MDLocation(line: 3, scope: !12)
>  !19 = !{!"0x100\00t\004\000", !12, !13, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 4]
> -!20 = !{i32 4, i32 0, !12, null}
> -!21 = !{i32 5, i32 0, !12, null}
> +!20 = !MDLocation(line: 4, scope: !12)
> +!21 = !MDLocation(line: 5, scope: !12)
>  !22 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/Inputs/type-unique-simple2-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/Inputs/type-unique-simple2-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/Inputs/type-unique-simple2-b.ll (original)
> +++ llvm/trunk/test/Linker/Inputs/type-unique-simple2-b.ll Wed Jan 14
> 16:27:36 2015
> @@ -57,11 +57,11 @@ attributes #3 = { "less-precise-fpmad"="
>  !18 = !{!8}
>  !19 = !{i32 2, !"Dwarf Version", i32 2}
>  !20 = !{!"0x101\00a\0016777220\000", !12, !13, !8} ; [
> DW_TAG_arg_variable ] [a] [line 4]
> -!21 = !{i32 4, i32 0, !12, null}
> +!21 = !MDLocation(line: 4, scope: !12)
>  !22 = !{!"0x100\00t\005\000", !12, !13, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 5]
> -!23 = !{i32 5, i32 0, !12, null}
> -!24 = !{i32 6, i32 0, !12, null}
> -!25 = !{i32 8, i32 0, !16, null}
> -!26 = !{i32 9, i32 0, !16, null}
> -!27 = !{i32 10, i32 0, !16, null}
> +!23 = !MDLocation(line: 5, scope: !12)
> +!24 = !MDLocation(line: 6, scope: !12)
> +!25 = !MDLocation(line: 8, scope: !16)
> +!26 = !MDLocation(line: 9, scope: !16)
> +!27 = !MDLocation(line: 10, scope: !16)
>  !28 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified:
> llvm/trunk/test/Linker/replaced-function-matches-first-subprogram.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/replaced-function-matches-first-subprogram.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/replaced-function-matches-first-subprogram.ll
> (original)
> +++ llvm/trunk/test/Linker/replaced-function-matches-first-subprogram.ll
> Wed Jan 14 16:27:36 2015
> @@ -68,8 +68,8 @@ entry:
>  !11 = !{i32 2, !"Debug Info Version", i32 2}
>  !12 = !{i32 1, !"PIC Level", i32 2}
>  !13 = !{!"clang version 3.6.0 (trunk 224193) (llvm/trunk 224197)"}
> -!14 = !{i32 2, i32 20, !4, null}
> +!14 = !MDLocation(line: 2, column: 20, scope: !4)
>
>  ; The same subprogram should be pointed to by inside the !dbg reference.
> -; CHECK: ![[LOC]] = !{i32 2, i32 15, ![[SP2]], null}
> -!15 = !{i32 2, i32 15, !7, null}
> +; CHECK: ![[LOC]] = !MDLocation(line: 2, column: 15, scope: ![[SP2]])
> +!15 = !MDLocation(line: 2, column: 15, scope: !7)
>
> Modified: llvm/trunk/test/Linker/type-unique-odr-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-odr-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-odr-a.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-odr-a.ll Wed Jan 14 16:27:36 2015
> @@ -96,7 +96,7 @@ attributes #1 = { nounwind readnone }
>  !20 = !{i32 2, !"Dwarf Version", i32 4}
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>  !22 = !{!"clang version 3.5.0 "}
> -!23 = !{i32 11, i32 0, !15, null}
> +!23 = !MDLocation(line: 11, scope: !15)
>  !24 = !{!"0x100\00a\008\000", !19, !16, !"_ZTS1A"} ; [
> DW_TAG_auto_variable ] [a] [line 8]
> -!25 = !{i32 8, i32 0, !19, null}
> -!26 = !{i32 9, i32 0, !19, null}
> +!25 = !MDLocation(line: 8, scope: !19)
> +!26 = !MDLocation(line: 9, scope: !19)
>
> Modified: llvm/trunk/test/Linker/type-unique-odr-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-odr-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-odr-b.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-odr-b.ll Wed Jan 14 16:27:36 2015
> @@ -80,7 +80,7 @@ attributes #1 = { nounwind readnone }
>  !23 = !{!"clang version 3.5.0 "}
>  !24 = !{!"0x101\00this\0016777216\001088", !15, null, !25} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !25 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!26 = !{i32 0, i32 0, !15, null}
> -!27 = !{i32 8, i32 0, !15, null}
> -!28 = !{i32 11, i32 0, !16, null}
> -!29 = !{i32 10, i32 0, !20, null}
> +!26 = !MDLocation(line: 0, scope: !15)
> +!27 = !MDLocation(line: 8, scope: !15)
> +!28 = !MDLocation(line: 11, scope: !16)
> +!29 = !MDLocation(line: 10, scope: !20)
>
> Modified: llvm/trunk/test/Linker/type-unique-simple-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-simple-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-simple-a.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-simple-a.ll Wed Jan 14 16:27:36 2015
> @@ -84,8 +84,8 @@ attributes #1 = { nounwind readnone }
>  !13 = !{null, !8}
>  !14 = !{i32 2, !"Dwarf Version", i32 2}
>  !15 = !{!"0x101\00a\0016777219\000", !10, !11, !8} ; [
> DW_TAG_arg_variable ] [a] [line 3]
> -!16 = !{i32 3, i32 0, !10, null}
> +!16 = !MDLocation(line: 3, scope: !10)
>  !17 = !{!"0x100\00t\004\000", !10, !11, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 4]
> -!18 = !{i32 4, i32 0, !10, null}
> -!19 = !{i32 5, i32 0, !10, null}
> +!18 = !MDLocation(line: 4, scope: !10)
> +!19 = !MDLocation(line: 5, scope: !10)
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/type-unique-simple-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-simple-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-simple-b.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-simple-b.ll Wed Jan 14 16:27:36 2015
> @@ -57,11 +57,11 @@ attributes #3 = { "less-precise-fpmad"="
>  !16 = !{!8}
>  !17 = !{i32 2, !"Dwarf Version", i32 2}
>  !18 = !{!"0x101\00a\0016777220\000", !10, !11, !8} ; [
> DW_TAG_arg_variable ] [a] [line 4]
> -!19 = !{i32 4, i32 0, !10, null}
> +!19 = !MDLocation(line: 4, scope: !10)
>  !20 = !{!"0x100\00t\005\000", !10, !11, !4} ; [ DW_TAG_auto_variable ]
> [t] [line 5]
> -!21 = !{i32 5, i32 0, !10, null}
> -!22 = !{i32 6, i32 0, !10, null}
> -!23 = !{i32 8, i32 0, !14, null}
> -!24 = !{i32 9, i32 0, !14, null}
> -!25 = !{i32 10, i32 0, !14, null}
> +!21 = !MDLocation(line: 5, scope: !10)
> +!22 = !MDLocation(line: 6, scope: !10)
> +!23 = !MDLocation(line: 8, scope: !14)
> +!24 = !MDLocation(line: 9, scope: !14)
> +!25 = !MDLocation(line: 10, scope: !14)
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Linker/type-unique-simple2-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-simple2-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-simple2-a.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-simple2-a.ll Wed Jan 14 16:27:36
> 2015
> @@ -118,12 +118,12 @@ attributes #4 = { nounwind readnone }
>  !35 = !{i32 2, !"Dwarf Version", i32 2}
>  !36 = !{i32 1, !"Debug Info Version", i32 2}
>  !37 = !{!"clang version 3.5 "}
> -!38 = !{i32 3, i32 0, !27, null}
> +!38 = !MDLocation(line: 3, scope: !27)
>  !39 = !{!"0x101\00this\0016777216\001088", !31, null, !40} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !40 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!41 = !{i32 0, i32 0, !31, null}
> -!42 = !{i32 2, i32 0, !43, null}
> +!41 = !MDLocation(line: 0, scope: !31)
> +!42 = !MDLocation(line: 2, scope: !43)
>  !43 = !{!"0xb\000", !5, !31} ; [ DW_TAG_lexical_block ] [/./ab.h]
>  !44 = !{!"0x101\00this\0016777216\001088", !34, null, !40} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!45 = !{i32 0, i32 0, !34, null}
> -!46 = !{i32 2, i32 0, !34, null}
> +!45 = !MDLocation(line: 0, scope: !34)
> +!46 = !MDLocation(line: 2, scope: !34)
>
> Modified: llvm/trunk/test/Linker/type-unique-simple2-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-simple2-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-simple2-b.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-simple2-b.ll Wed Jan 14 16:27:36
> 2015
> @@ -81,8 +81,8 @@ attributes #1 = { nounwind readnone }
>  !31 = !{!"clang version 3.5 "}
>  !32 = !{!"0x101\00this\0016777216\001088", !26, null, !33} ; [
> DW_TAG_arg_variable ] [this] [line 0]
>  !33 = !{!"0xf\00\000\0064\0064\000\000", null, null, !"_ZTS1A"} ; [
> DW_TAG_pointer_type ] [line 0, size 64, align 64, offset 0] [from _ZTS1A]
> -!34 = !{i32 0, i32 0, !26, null}
> -!35 = !{i32 2, i32 0, !26, null}
> +!34 = !MDLocation(line: 0, scope: !26)
> +!35 = !MDLocation(line: 2, scope: !26)
>  !36 = !{!"0x101\00this\0016777216\001088", !28, null, !33} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!37 = !{i32 0, i32 0, !28, null}
> -!38 = !{i32 4, i32 0, !28, null}
> +!37 = !MDLocation(line: 0, scope: !28)
> +!38 = !MDLocation(line: 4, scope: !28)
>
> Modified: llvm/trunk/test/Linker/type-unique-type-array-a.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-type-array-a.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-type-array-a.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-type-array-a.ll Wed Jan 14 16:27:36
> 2015
> @@ -117,13 +117,13 @@ attributes #3 = { nounwind }
>  !22 = !{i32 2, !"Debug Info Version", i32 2}
>  !23 = !{!"clang version 3.5.0 (trunk 214102:214113M) (llvm/trunk
> 214102:214115M)"}
>  !24 = !{!"0x101\00a\0016777227\000", !15, !16, !19} ; [
> DW_TAG_arg_variable ] [a] [line 11]
> -!25 = !{i32 11, i32 14, !15, null}
> +!25 = !MDLocation(line: 11, column: 14, scope: !15)
>  !26 = !{!"0x101\00sa\0033554443\000", !15, !16, !"_ZTS2SA"} ; [
> DW_TAG_arg_variable ] [sa] [line 11]
> -!27 = !{i32 11, i32 20, !15, null}
> -!28 = !{i32 12, i32 3, !15, null}
> -!29 = !{i32 13, i32 1, !15, null}
> +!27 = !MDLocation(line: 11, column: 20, scope: !15)
> +!28 = !MDLocation(line: 12, column: 3, scope: !15)
> +!29 = !MDLocation(line: 13, column: 1, scope: !15)
>  !30 = !{!"0x101\00this\0016777216\001088", !20, null, !19} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!31 = !{i32 0, i32 0, !20, null}
> +!31 = !MDLocation(line: 0, scope: !20)
>  !32 = !{!"0x101\00a\0033554439\000", !20, !16, !"_ZTS2SA"} ; [
> DW_TAG_arg_variable ] [a] [line 7]
> -!33 = !{i32 7, i32 17, !20, null}
> -!34 = !{i32 8, i32 3, !20, null}
> +!33 = !MDLocation(line: 7, column: 17, scope: !20)
> +!34 = !MDLocation(line: 8, column: 3, scope: !20)
>
> Modified: llvm/trunk/test/Linker/type-unique-type-array-b.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Linker/type-unique-type-array-b.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Linker/type-unique-type-array-b.ll (original)
> +++ llvm/trunk/test/Linker/type-unique-type-array-b.ll Wed Jan 14 16:27:36
> 2015
> @@ -96,13 +96,13 @@ attributes #3 = { nounwind }
>  !22 = !{i32 2, !"Debug Info Version", i32 2}
>  !23 = !{!"clang version 3.5.0 (trunk 214102:214113M) (llvm/trunk
> 214102:214115M)"}
>  !24 = !{!"0x101\00b\0016777227\000", !15, !16, !19} ; [
> DW_TAG_arg_variable ] [b] [line 11]
> -!25 = !{i32 11, i32 14, !15, null}
> +!25 = !MDLocation(line: 11, column: 14, scope: !15)
>  !26 = !{!"0x101\00sa\0033554443\000", !15, !16, !"_ZTS2SA"} ; [
> DW_TAG_arg_variable ] [sa] [line 11]
> -!27 = !{i32 11, i32 20, !15, null}
> -!28 = !{i32 12, i32 3, !15, null}
> -!29 = !{i32 13, i32 1, !15, null}
> +!27 = !MDLocation(line: 11, column: 20, scope: !15)
> +!28 = !MDLocation(line: 12, column: 3, scope: !15)
> +!29 = !MDLocation(line: 13, column: 1, scope: !15)
>  !30 = !{!"0x101\00this\0016777216\001088", !20, null, !19} ; [
> DW_TAG_arg_variable ] [this] [line 0]
> -!31 = !{i32 0, i32 0, !20, null}
> +!31 = !MDLocation(line: 0, scope: !20)
>  !32 = !{!"0x101\00sa\0033554439\000", !20, !16, !"_ZTS2SA"} ; [
> DW_TAG_arg_variable ] [sa] [line 7]
> -!33 = !{i32 7, i32 17, !20, null}
> -!34 = !{i32 8, i32 3, !20, null}
> +!33 = !MDLocation(line: 7, column: 17, scope: !20)
> +!34 = !MDLocation(line: 8, column: 3, scope: !20)
>
> Modified: llvm/trunk/test/MC/ARM/coff-debugging-secrel.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/coff-debugging-secrel.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/MC/ARM/coff-debugging-secrel.ll (original)
> +++ llvm/trunk/test/MC/ARM/coff-debugging-secrel.ll Wed Jan 14 16:27:36
> 2015
> @@ -16,7 +16,7 @@ entry:
>  !llvm.dbg.cu = !{!7}
>  !llvm.module.flags = !{!9, !10}
>
> -!0 = !{i32 1, i32 0, !1, null}
> +!0 = !MDLocation(line: 1, scope: !1)
>  !1 = !{!"0x2e\00function\00function\00\001\000\001\000\006\000\000\001",
> !2, !3, !4, null, void ()* @function, null, null, !6} ; [ DW_TAG_subprogram
> ], [line 1], [def], [function]
>  !2 = !{!"/Users/compnerd/work/llvm/test/MC/ARM/reduced.c",
> !"/Users/compnerd/work/llvm"}
>  !3 = !{!"0x29", !2} ; [ DW_TAG_file_type]
> [/Users/compnerd/work/llvm/test/MC/ARM/reduced.c]
>
> Modified: llvm/trunk/test/MC/ELF/cfi-version.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ELF/cfi-version.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/MC/ELF/cfi-version.ll (original)
> +++ llvm/trunk/test/MC/ELF/cfi-version.ll Wed Jan 14 16:27:36 2015
> @@ -34,7 +34,7 @@ attributes #1 = { "less-precise-fpmad"="
>  !9 = !{i32 2, !"Dwarf Version", i32 4}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5.0 "}
> -!12 = !{i32 2, i32 0, !4, null}
> +!12 = !MDLocation(line: 2, scope: !4)
>
>  ; DWARF2:      .debug_frame contents:
>  ; DWARF2:        Version:               1
>
> Modified: llvm/trunk/test/Transforms/AddDiscriminators/basic.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/AddDiscriminators/basic.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/AddDiscriminators/basic.ll (original)
> +++ llvm/trunk/test/Transforms/AddDiscriminators/basic.ll Wed Jan 14
> 16:27:36 2015
> @@ -50,10 +50,10 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5 "}
> -!10 = !{i32 3, i32 0, !11, null}
> +!10 = !MDLocation(line: 3, scope: !11)
>  !11 = !{!"0xb\003\000\000", !1, !4} ; [ DW_TAG_lexical_block ] [basic.c]
> -!12 = !{i32 4, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
>
> -; CHECK: !12 = !{i32 3, i32 0, !13, null}
> +; CHECK: !12 = !MDLocation(line: 3, scope: !13)
>  ; CHECK: !13 = !{!"0xb\001", !1, !11} ; [ DW_TAG_lexical_block ]
> [./basic.c]
> -; CHECK: !14 = !{i32 4, i32 0, !4, null}
> +; CHECK: !14 = !MDLocation(line: 4, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/AddDiscriminators/first-only.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/AddDiscriminators/first-only.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/AddDiscriminators/first-only.ll (original)
> +++ llvm/trunk/test/Transforms/AddDiscriminators/first-only.ll Wed Jan 14
> 16:27:36 2015
> @@ -60,23 +60,23 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5 (trunk 199750) (llvm/trunk 199751)"}
> -!10 = !{i32 3, i32 0, !11, null}
> +!10 = !MDLocation(line: 3, scope: !11)
>
>  !11 = !{!"0xb\003\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [first-only.c]
>  ; CHECK: !11 = !{!"0xb\003\000\000", !1, !4}
>
> -!12 = !{i32 3, i32 0, !13, null}
> +!12 = !MDLocation(line: 3, scope: !13)
>
>  !13 = !{!"0xb\003\000\001", !1, !11} ; [ DW_TAG_lexical_block ]
> [first-only.c]
>  ; CHECK: !13 = !{!"0xb\001", !1, !14} ; [ DW_TAG_lexical_block ]
> [./first-only.c]
>
> -!14 = !{i32 4, i32 0, !13, null}
> +!14 = !MDLocation(line: 4, scope: !13)
>  ; CHECK: !14 = !{!"0xb\003\000\001", !1, !11}
>
> -!15 = !{i32 5, i32 0, !13, null}
> -; CHECK: !15 = !{i32 4, i32 0, !14, null}
> +!15 = !MDLocation(line: 5, scope: !13)
> +; CHECK: !15 = !MDLocation(line: 4, scope: !14)
>
> -!16 = !{i32 6, i32 0, !4, null}
> -; CHECK: !16 = !{i32 5, i32 0, !14, null}
> -; CHECK: !17 = !{i32 6, i32 0, !4, null}
> +!16 = !MDLocation(line: 6, scope: !4)
> +; CHECK: !16 = !MDLocation(line: 5, scope: !14)
> +; CHECK: !17 = !MDLocation(line: 6, scope: !4)
>
>
> Modified: llvm/trunk/test/Transforms/AddDiscriminators/multiple.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/AddDiscriminators/multiple.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/AddDiscriminators/multiple.ll (original)
> +++ llvm/trunk/test/Transforms/AddDiscriminators/multiple.ll Wed Jan 14
> 16:27:36 2015
> @@ -61,11 +61,11 @@ attributes #0 = { nounwind uwtable "less
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5 (trunk 199750) (llvm/trunk 199751)"}
> -!10 = !{i32 3, i32 0, !11, null}
> +!10 = !MDLocation(line: 3, scope: !11)
>  !11 = !{!"0xb\003\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [multiple.c]
> -!12 = !{i32 4, i32 0, !4, null}
> +!12 = !MDLocation(line: 4, scope: !4)
>
> -; CHECK: !12 = !{i32 3, i32 0, !13, null}
> +; CHECK: !12 = !MDLocation(line: 3, scope: !13)
>  ; CHECK: !13 = !{!"0xb\001", !1, !11} ; [ DW_TAG_lexical_block ]
> [./multiple.c]
> -; CHECK: !14 = !{i32 3, i32 0, !15, null}
> +; CHECK: !14 = !MDLocation(line: 3, scope: !15)
>  ; CHECK: !15 = !{!"0xb\002", !1, !11} ; [ DW_TAG_lexical_block ]
> [./multiple.c]
>
> Modified: llvm/trunk/test/Transforms/AddDiscriminators/no-discriminators.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/AddDiscriminators/no-discriminators.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/AddDiscriminators/no-discriminators.ll
> (original)
> +++ llvm/trunk/test/Transforms/AddDiscriminators/no-discriminators.ll Wed
> Jan 14 16:27:36 2015
> @@ -63,9 +63,9 @@ attributes #1 = { nounwind readnone }
>  !11 = !{i32 1, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5.0 "}
>  !13 = !{!"0x101\00i\0016777217\000", !4, !5, !9} ; [ DW_TAG_arg_variable
> ] [i] [line 1]
> -!14 = !{i32 1, i32 0, !4, null}
> -!15 = !{i32 2, i32 0, !16, null}
> -; CHECK: !15 = !{i32 2, i32 0, !16, null}
> +!14 = !MDLocation(line: 1, scope: !4)
> +!15 = !MDLocation(line: 2, scope: !16)
> +; CHECK: !15 = !MDLocation(line: 2, scope: !16)
>  !16 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [./no-discriminators]
>  ; CHECK: !16 = !{!"0xb\002\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [./no-discriminators]
> -!17 = !{i32 3, i32 0, !4, null}
> +!17 = !MDLocation(line: 3, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/ArgumentPromotion/dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/ArgumentPromotion/dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/ArgumentPromotion/dbg.ll (original)
> +++ llvm/trunk/test/Transforms/ArgumentPromotion/dbg.ll Wed Jan 14
> 16:27:36 2015
> @@ -20,7 +20,7 @@ define void @caller(i32** %Y) {
>  !llvm.dbg.cu = !{!3}
>
>  !0 = !{i32 2, !"Debug Info Version", i32 2}
> -!1 = !{i32 8, i32 0, !2, null}
> +!1 = !MDLocation(line: 8, scope: !2)
>  !2 = !{!"0x2e\00test\00test\00\003\001\001\000\006\00256\000\003", null,
> null, null, null, void (i32**)* @test, null, null, null} ; [
> DW_TAG_subprogram ]
>  !3 = !{!"0x11\004\00clang version 3.5.0 \000\00\000\00\002", null, null,
> null, !4, null, null} ; [ DW_TAG_compile_unit ]
> [/usr/local/google/home/blaikie/dev/scratch/pr20038/reduce/<stdin>]
> [DW_LANG_C_plus_plus]
>  !4 = !{!2}
>
> Modified: llvm/trunk/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll (original)
> +++ llvm/trunk/test/Transforms/DeadArgElim/2010-04-30-DbgInfo.ll Wed Jan
> 14 16:27:36 2015
> @@ -58,7 +58,7 @@ declare void @llvm.dbg.value(metadata, i
>  !10 = !{!"0x101\00len\009\000", !1, !2, !9} ; [ DW_TAG_arg_variable ]
>  !11 = !{!"0x101\00hash\0010\000", !1, !2, !9} ; [ DW_TAG_arg_variable ]
>  !12 = !{!"0x101\00flags\0011\000", !1, !2, !9} ; [ DW_TAG_arg_variable ]
> -!13 = !{i32 13, i32 0, !14, null}
> +!13 = !MDLocation(line: 13, scope: !14)
>  !14 = !{!"0xb\0012\000\000", !28, !1} ; [ DW_TAG_lexical_block ]
>  !15 = !{!"0x101\00name\0017\000", !16, !2, !6} ; [ DW_TAG_arg_variable ]
>  !16 =
> !{!"0x2e\00add_name_internal\00add_name_internal\00add_name_internal\0022\001\001\000\006\000\000\000",
> !28, !2, !17, null, null, null, null, null} ; [ DW_TAG_subprogram ]
> @@ -69,10 +69,10 @@ declare void @llvm.dbg.value(metadata, i
>  !21 = !{!"0x101\00hash\0019\000", !16, !2, !9} ; [ DW_TAG_arg_variable ]
>  !22 = !{!"0x101\00extra\0020\000", !16, !2, !19} ; [ DW_TAG_arg_variable ]
>  !23 = !{!"0x101\00flags\0021\000", !16, !2, !9} ; [ DW_TAG_arg_variable ]
> -!24 = !{i32 23, i32 0, !25, null}
> +!24 = !MDLocation(line: 23, scope: !25)
>  !25 = !{!"0xb\0022\000\000", !28, !16} ; [ DW_TAG_lexical_block ]
> -!26 = !{i32 24, i32 0, !25, null}
> -!27 = !{i32 26, i32 0, !25, null}
> +!26 = !MDLocation(line: 24, scope: !25)
> +!27 = !MDLocation(line: 26, scope: !25)
>  !28 = !{!"tail.c", !"/Users/echeng/LLVM/radars/r7927803/"}
>  !29 = !{i32 0}
>  !30 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/DeadArgElim/dbginfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/DeadArgElim/dbginfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/DeadArgElim/dbginfo.ll (original)
> +++ llvm/trunk/test/Transforms/DeadArgElim/dbginfo.ll Wed Jan 14 16:27:36
> 2015
> @@ -62,9 +62,9 @@ attributes #2 = { nounwind readnone }
>  !12 = !{i32 2, !"Dwarf Version", i32 4}
>  !13 = !{i32 2, !"Debug Info Version", i32 2}
>  !14 = !{!"clang version 3.6.0 "}
> -!15 = !{i32 5, i32 3, !4, null}
> -!16 = !{i32 6, i32 1, !4, null}
> +!15 = !MDLocation(line: 5, column: 3, scope: !4)
> +!16 = !MDLocation(line: 6, column: 1, scope: !4)
>  !17 = !{!"0x101\00\0016777217\000", !8, !5, !11} ; [ DW_TAG_arg_variable
> ] [line 1]
>  !18 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!19 = !{i32 1, i32 19, !8, null}
> -!20 = !{i32 2, i32 1, !8, null}
> +!19 = !MDLocation(line: 1, column: 19, scope: !8)
> +!20 = !MDLocation(line: 2, column: 1, scope: !8)
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/function-numbering.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/function-numbering.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/function-numbering.ll
> (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/function-numbering.ll Wed Jan
> 14 16:27:36 2015
> @@ -52,5 +52,5 @@ define void @baz() {
>  !9 = !{i32 2, !"Dwarf Version", i32 2}
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.6.0 "}
> -!12 = !{i32 1, i32 13, !4, null}
> -!13 = !{i32 3, i32 13, !8, null}
> +!12 = !MDLocation(line: 1, column: 13, scope: !4)
> +!13 = !MDLocation(line: 3, column: 13, scope: !8)
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/global-ctor.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/global-ctor.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/global-ctor.ll (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/global-ctor.ll Wed Jan 14
> 16:27:36 2015
> @@ -51,6 +51,6 @@ attributes #1 = { "less-precise-fpmad"="
>  !10 = !{i32 2, !"Dwarf Version", i32 4}
>  !11 = !{i32 2, !"Debug Info Version", i32 2}
>  !12 = !{!"clang version 3.5.0 (trunk 210217)"}
> -!13 = !{i32 2, i32 0, !4, null}
> -!14 = !{i32 0, i32 0, !15, null}
> +!13 = !MDLocation(line: 2, scope: !4)
> +!14 = !MDLocation(line: 0, scope: !15)
>  !15 = !{!"0xb\000", !5, !8} ; [ DW_TAG_lexical_block ]
> [/home/nlewycky/global-ctor.ll]
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/linezero.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/linezero.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/linezero.ll (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/linezero.ll Wed Jan 14
> 16:27:36 2015
> @@ -124,19 +124,19 @@ attributes #3 = { noreturn nounwind }
>  !27 = !{!"0x100\00__range\000\0064", !28, null, !29} ; [
> DW_TAG_auto_variable ] [__range] [line 0]
>  !28 = !{!"0xb\0051\000\000", !5, !15} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
>  !29 = !{!"0x42\00\000\000\000\000\000", null, null, !"_ZTS6vector"} ; [
> DW_TAG_rvalue_reference_type ] [line 0, size 0, align 0, offset 0] [from
> _ZTS6vector]
> -!30 = !{i32 0, i32 0, !28, null}
> -!31 = !{i32 51, i32 0, !28, null}
> +!30 = !MDLocation(line: 0, scope: !28)
> +!31 = !MDLocation(line: 51, scope: !28)
>  !32 = !{!"0x100\00__begin\000\0064", !28, null, !10} ; [
> DW_TAG_auto_variable ] [__begin] [line 0]
>  !33 = !{!"0x100\00__end\000\0064", !28, null, !10} ; [
> DW_TAG_auto_variable ] [__end] [line 0]
> -!34 = !{i32 51, i32 0, !35, null}
> +!34 = !MDLocation(line: 51, scope: !35)
>  !35 = !{!"0xb\0051\000\005", !5, !36} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
>  !36 = !{!"0xb\0051\000\001", !5, !28} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
>  !37 = !{!"0x100\00spec\0051\000", !28, !16, !11} ; [ DW_TAG_auto_variable
> ] [spec] [line 51]
> -!38 = !{i32 51, i32 0, !39, null}
> +!38 = !MDLocation(line: 51, scope: !39)
>  !39 = !{!"0xb\0051\000\002", !5, !28} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
> -!40 = !{i32 51, i32 0, !41, null}
> +!40 = !MDLocation(line: 51, scope: !41)
>  !41 = !{!"0xb\0051\000\004", !5, !28} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
> -!42 = !{i32 51, i32 0, !43, null}
> +!42 = !MDLocation(line: 51, scope: !43)
>  !43 = !{!"0xb\0051\000\003", !5, !28} ; [ DW_TAG_lexical_block ]
> [./linezero.cc]
> -!44 = !{i32 52, i32 0, !15, null}
> -!45 = !{i32 54, i32 0, !20, null}
> +!44 = !MDLocation(line: 52, scope: !15)
> +!45 = !MDLocation(line: 54, scope: !20)
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/linkagename.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/linkagename.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/linkagename.ll (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/linkagename.ll Wed Jan 14
> 16:27:36 2015
> @@ -21,7 +21,7 @@ entry:
>  !5 = !{!"0x2e\00foo\00foo\00_Z3foov\001\000\001\000\006\00256\000\001",
> !1, !1, !6, null, void ()* @_Z3foov, null, null, !3} ; [ DW_TAG_subprogram
> ] [line 1] [def] [foo]
>  !6 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !7, i32 0}
> ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
>  !7 = !{null}
> -!8 = !{i32 1, i32 0, !5, null}
> +!8 = !MDLocation(line: 1, scope: !5)
>
>
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll Wed Jan 14
> 16:27:36 2015
> @@ -52,11 +52,11 @@ attributes #2 = { nounwind }
>  !11 = !{i32 2, !"Dwarf Version", i32 4}
>  !12 = !{i32 2, !"Debug Info Version", i32 2}
>  !13 = !{!"clang version 3.6.0 (trunk 223182)"}
> -!14 = !{i32 6, i32 3, !4, null}
> -!15 = !{i32 7, i32 7, !4, null}
> -!16 = !{i32 8, i32 5, !17, null}
> +!14 = !MDLocation(line: 6, column: 3, scope: !4)
> +!15 = !MDLocation(line: 7, column: 7, scope: !4)
> +!16 = !MDLocation(line: 8, column: 5, scope: !17)
>  !17 = !{!"0xb\007\007\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [return-block.c]
> -!18 = !{i32 9, i32 1, !4, null}
> +!18 = !MDLocation(line: 9, column: 1, scope: !4)
>
>  ; There should be no destination edges for block 1.
>  ; CHECK: Block : 0 Counter : 0
>
> Modified: llvm/trunk/test/Transforms/GCOVProfiling/version.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GCOVProfiling/version.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GCOVProfiling/version.ll (original)
> +++ llvm/trunk/test/Transforms/GCOVProfiling/version.ll Wed Jan 14
> 16:27:36 2015
> @@ -23,7 +23,7 @@ define void @test() {
>  !5 = !{!"0x2e\00test\00test\00\001\000\001\000\006\00256\000\001", !10,
> !6, !7, null, void ()* @test, null, null, !3} ; [ DW_TAG_subprogram ] [line
> 1] [def] [test]
>  !6 = !{!"0x29", !10} ; [ DW_TAG_file_type ]
>  !7 = !{!"0x15\00\000\000\000\000\000\000", i32 0, null, null, !3, i32 0}
> ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0] [from ]
> -!8 = !{i32 1, i32 0, !5, null}
> +!8 = !MDLocation(line: 1, scope: !5)
>  ;; !9 is added through the echo line at the top.
>  !10 = !{!"<stdin>", !"."}
>  !11 = !{!"version", !"/usr/local/google/home/nlewycky"}
>
> Modified: llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll (original)
> +++ llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll Wed Jan 14
> 16:27:36 2015
> @@ -62,18 +62,18 @@ declare void @llvm.dbg.value(metadata, i
>  !4 = !{!"0x2e\00foo\00foo\00foo\004\000\001\000\006\000\000\000", i32 0,
> !1, !5, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !5 = !{!"0x15\00\000\000\000\000\000\000", !1, null, null, !6, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !6 = !{!2, !2}
> -!7 = !{i32 5, i32 0, !8, null}
> +!7 = !MDLocation(line: 5, scope: !8)
>  !8 = !{!"0xb\000\000\000", !20, !4} ; [ DW_TAG_lexical_block ]
> -!9 = !{i32 6, i32 0, !8, null}
> -!10 = !{i32 7, i32 0, !8, null}
> -!11 = !{i32 9, i32 0, !8, null}
> -!12 = !{i32 11, i32 0, !8, null}
> -!13 = !{i32 14, i32 0, !14, null}
> +!9 = !MDLocation(line: 6, scope: !8)
> +!10 = !MDLocation(line: 7, scope: !8)
> +!11 = !MDLocation(line: 9, scope: !8)
> +!12 = !MDLocation(line: 11, scope: !8)
> +!13 = !MDLocation(line: 14, scope: !14)
>  !14 = !{!"0xb\000\000\000", !20, !15} ; [ DW_TAG_lexical_block ]
>  !15 = !{!"0x2e\00bar\00bar\00bar\0013\000\001\000\006\000\000\000", i32
> 0, !1, !16, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !16 = !{!"0x15\00\000\000\000\000\000\000", !1, null, null, !17, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !17 = !{!2}
> -!18 = !{i32 15, i32 0, !14, null}
> -!19 = !{i32 16, i32 0, !14, null}
> +!18 = !MDLocation(line: 15, scope: !14)
> +!19 = !MDLocation(line: 16, scope: !14)
>  !20 = !{!"g.c", !"/tmp"}
>  !21 = !{i32 0}
>
> Modified: llvm/trunk/test/Transforms/Inline/debug-invoke.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/Inline/debug-invoke.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/Inline/debug-invoke.ll (original)
> +++ llvm/trunk/test/Transforms/Inline/debug-invoke.ll Wed Jan 14 16:27:36
> 2015
> @@ -5,8 +5,8 @@
>  ; CHECK: invoke void @test()
>  ; CHECK-NEXT: to label {{.*}} unwind label {{.*}}, !dbg [[INL_LOC:!.*]]
>  ; CHECK: [[EMPTY:.*]] = !{}
> -; CHECK: [[INL_LOC]] = !{i32 1, i32 0, [[EMPTY]], [[INL_AT:.*]]}
> -; CHECK: [[INL_AT]] = !{i32 2, i32 0, [[EMPTY]], null}
> +; CHECK: [[INL_LOC]] = !MDLocation(line: 1, scope: [[EMPTY]], inlinedAt:
> [[INL_AT:.*]])
> +; CHECK: [[INL_AT]] = !MDLocation(line: 2, scope: [[EMPTY]])
>
>  declare void @test()
>  declare i32 @__gxx_personality_v0(...)
> @@ -33,5 +33,5 @@ lpad:
>  !llvm.module.flags = !{!1}
>  !1 = !{i32 2, !"Debug Info Version", i32 2}
>  !2 = !{}
> -!3 = !{i32 1, i32 0, !2, null}
> -!4 = !{i32 2, i32 0, !2, null}
> +!3 = !MDLocation(line: 1, scope: !2)
> +!4 = !MDLocation(line: 2, scope: !2)
>
> Modified: llvm/trunk/test/Transforms/Inline/inline_dbg_declare.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/Inline/inline_dbg_declare.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/Inline/inline_dbg_declare.ll (original)
> +++ llvm/trunk/test/Transforms/Inline/inline_dbg_declare.ll Wed Jan 14
> 16:27:36 2015
> @@ -85,12 +85,12 @@ attributes #1 = { nounwind readnone }
>  !15 = !{!"clang version 3.6.0 (trunk)"}
>  !16 = !{!"0x101\00x\0016777217\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [x] [line 1]
>  !17 = !{!"0x102"}               ; [ DW_TAG_expression ]
> -!18 = !{i32 1, i32 17, !4, null}
> -!19 = !{i32 3, i32 5, !4, null}
> +!18 = !MDLocation(line: 1, column: 17, scope: !4)
> +!19 = !MDLocation(line: 3, column: 5, scope: !4)
>  !20 = !{!"0x101\00dst\0016777222\000", !9, !5, !12} ; [
> DW_TAG_arg_variable ] [dst] [line 6]
> -!21 = !{i32 6, i32 17, !9, null}
> -!22 = !{i32 8, i32 14, !9, null}
> -!23 = !{i32 9, i32 1, !9, null}
> +!21 = !MDLocation(line: 6, column: 17, scope: !9)
> +!22 = !MDLocation(line: 8, column: 14, scope: !9)
> +!23 = !MDLocation(line: 9, column: 1, scope: !9)
>
>  ; CHECK: [[m23]] = !{!"0x101\00x\0016777217\000", !4, !5, !8, !22} ; [
> DW_TAG_arg_variable ] [x] [line 1]
> -; CHECK: [[m24]] = !{i32 1, i32 17, !4, !22}
> +; CHECK: [[m24]] = !MDLocation(line: 1, column: 17, scope: !4, inlinedAt:
> !22)
>
> Modified: llvm/trunk/test/Transforms/InstCombine/debug-line.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/debug-line.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/InstCombine/debug-line.ll (original)
> +++ llvm/trunk/test/Transforms/InstCombine/debug-line.ll Wed Jan 14
> 16:27:36 2015
> @@ -20,9 +20,9 @@ declare i32 @printf(i8*, ...)
>  !2 = !{!"0x11\0012\00clang\001\00\000\00\000", !8, !4, !4, !9, null,
> null} ; [ DW_TAG_compile_unit ]
>  !3 = !{!"0x15\00\000\000\000\000\000\000", !8, !1, null, !4, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !4 = !{null}
> -!5 = !{i32 5, i32 2, !6, null}
> +!5 = !MDLocation(line: 5, column: 2, scope: !6)
>  !6 = !{!"0xb\004\0012\000", !8, !0} ; [ DW_TAG_lexical_block ]
> -!7 = !{i32 6, i32 1, !6, null}
> +!7 = !MDLocation(line: 6, column: 1, scope: !6)
>  !8 = !{!"m.c", !"/private/tmp"}
>  !9 = !{!0}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/InstCombine/debuginfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/InstCombine/debuginfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/InstCombine/debuginfo.ll (original)
> +++ llvm/trunk/test/Transforms/InstCombine/debuginfo.ll Wed Jan 14
> 16:27:36 2015
> @@ -44,10 +44,10 @@ entry:
>  !10 = !{!"0x16\00size_t\0080\000\000\000\000", !27, !3, !11} ; [
> DW_TAG_typedef ]
>  !11 = !{!"0x16\00__darwin_size_t\0090\000\000\000\000", !27, !3, !12} ; [
> DW_TAG_typedef ]
>  !12 = !{!"0x24\00long unsigned int\000\0064\0064\000\000\007", null, !3}
> ; [ DW_TAG_base_type ]
> -!16 = !{i32 78, i32 28, !1, null}
> -!18 = !{i32 78, i32 40, !1, null}
> -!20 = !{i32 78, i32 54, !1, null}
> -!21 = !{i32 80, i32 3, !22, null}
> +!16 = !MDLocation(line: 78, column: 28, scope: !1)
> +!18 = !MDLocation(line: 78, column: 40, scope: !1)
> +!20 = !MDLocation(line: 78, column: 54, scope: !1)
> +!21 = !MDLocation(line: 80, column: 3, scope: !22)
>  !22 = !{!"0xb\0080\003\007", !27, !23} ; [ DW_TAG_lexical_block ]
>  !23 = !{!"0xb\0079\001\006", !27, !1} ; [ DW_TAG_lexical_block ]
>  !24 = !{!1}
>
> Modified: llvm/trunk/test/Transforms/LICM/debug-value.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LICM/debug-value.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LICM/debug-value.ll (original)
> +++ llvm/trunk/test/Transforms/LICM/debug-value.ll Wed Jan 14 16:27:36 2015
> @@ -47,19 +47,19 @@ declare void @llvm.dbg.value(metadata, i
>  !8 = !{null}
>  !9 = !{!"0x2e\00daxpy\00daxpy\00\00230\000\001\000\006\00256\000\000",
> !25, !1, !7, i32 0, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !10 = !{!"0x2e\00dgefa\00dgefa\00\00267\000\001\000\006\00256\000\000",
> !25, !1, !7, null, null, null, null, null} ; [ DW_TAG_subprogram ] [line
> 267] [def] [scope 0] [dgefa]
> -!11 = !{i32 281, i32 9, !12, null}
> +!11 = !MDLocation(line: 281, column: 9, scope: !12)
>  !12 = !{!"0xb\00272\005\0032", !25, !13} ; [ DW_TAG_lexical_block ]
>  !13 = !{!"0xb\00271\005\0031", !25, !14} ; [ DW_TAG_lexical_block ]
>  !14 = !{!"0xb\00267\001\0030", !25, !10} ; [ DW_TAG_lexical_block ]
> -!15 = !{i32 271, i32 5, !14, null}
> -!16 = !{i32 284, i32 10, !17, null}
> +!15 = !MDLocation(line: 271, column: 5, scope: !14)
> +!16 = !MDLocation(line: 284, column: 10, scope: !17)
>  !17 = !{!"0xb\00282\009\0033", !25, !12} ; [ DW_TAG_lexical_block ]
>  !18 = !{double undef}
>  !19 = !{!"0x100\00temp\00268\000", !14, !1, !20} ; [ DW_TAG_auto_variable
> ]
>  !20 = !{!"0x24\00double\000\0064\0064\000\000\004", null, !2} ; [
> DW_TAG_base_type ]
> -!21 = !{i32 286, i32 14, !22, null}
> +!21 = !MDLocation(line: 286, column: 14, scope: !22)
>  !22 = !{!"0xb\00285\0013\0034", !25, !17} ; [ DW_TAG_lexical_block ]
> -!23 = !{i32 296, i32 13, !17, null}
> -!24 = !{i32 313, i32 1, !14, null}
> +!23 = !MDLocation(line: 296, column: 13, scope: !17)
> +!24 = !MDLocation(line: 313, column: 1, scope: !14)
>  !25 =
> !{!"/Volumes/Lalgate/work/llvm/projects/llvm-test/SingleSource/Benchmarks/CoyoteBench/lpbench.c",
> !"/private/tmp"}
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/LoopIdiom/debug-line.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopIdiom/debug-line.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopIdiom/debug-line.ll (original)
> +++ llvm/trunk/test/Transforms/LoopIdiom/debug-line.ll Wed Jan 14 16:27:36
> 2015
> @@ -38,15 +38,15 @@ declare void @llvm.dbg.value(metadata, i
>  !5 = !{!"0x101\00a\0016777218\000", !0, !1, !6} ; [ DW_TAG_arg_variable ]
>  !6 = !{!"0xf\00\000\0064\0064\000\000", null, !2, !7} ; [
> DW_TAG_pointer_type ]
>  !7 = !{!"0x24\00double\000\0064\0064\000\000\004", null, !2} ; [
> DW_TAG_base_type ]
> -!8 = !{i32 2, i32 18, !0, null}
> +!8 = !MDLocation(line: 2, column: 18, scope: !0)
>  !9 = !{i32 0}
>  !10 = !{!"0x100\00i\003\000", !11, !1, !13} ; [ DW_TAG_auto_variable ]
>  !11 = !{!"0xb\003\003\001", !18, !12} ; [ DW_TAG_lexical_block ]
>  !12 = !{!"0xb\002\0021\000", !18, !0} ; [ DW_TAG_lexical_block ]
>  !13 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [
> DW_TAG_base_type ]
> -!14 = !{i32 3, i32 3, !12, null}
> -!15 = !{i32 4, i32 5, !11, null}
> -!16 = !{i32 3, i32 29, !11, null}
> -!17 = !{i32 5, i32 1, !12, null}
> +!14 = !MDLocation(line: 3, column: 3, scope: !12)
> +!15 = !MDLocation(line: 4, column: 5, scope: !11)
> +!16 = !MDLocation(line: 3, column: 29, scope: !11)
> +!17 = !MDLocation(line: 5, column: 1, scope: !12)
>  !18 = !{!"li.c", !"/private/tmp"}
>  !19 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/LoopRotate/dbgvalue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopRotate/dbgvalue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopRotate/dbgvalue.ll (original)
> +++ llvm/trunk/test/Transforms/LoopRotate/dbgvalue.ll Wed Jan 14 16:27:36
> 2015
> @@ -91,17 +91,17 @@ for.end:
>  !4 = !{!5}
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x101\00x\0032\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!7 = !{i32 32, i32 13, !0, null}
> +!7 = !MDLocation(line: 32, column: 13, scope: !0)
>  !8 = !{!"0x101\00y\0032\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!9 = !{i32 32, i32 20, !0, null}
> +!9 = !MDLocation(line: 32, column: 20, scope: !0)
>  !10 = !{!"0x101\00z\0032\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!11 = !{i32 32, i32 27, !0, null}
> -!12 = !{i32 33, i32 3, !13, null}
> +!11 = !MDLocation(line: 32, column: 27, scope: !0)
> +!12 = !MDLocation(line: 33, column: 3, scope: !13)
>  !13 = !{!"0xb\0032\0030\006", !18, !0} ; [ DW_TAG_lexical_block ]
> -!14 = !{i32 34, i32 5, !15, null}
> +!14 = !MDLocation(line: 34, column: 5, scope: !15)
>  !15 = !{!"0xb\0033\0014\007", !18, !13} ; [ DW_TAG_lexical_block ]
> -!16 = !{i32 36, i32 3, !13, null}
> -!17 = !{i32 37, i32 1, !13, null}
> +!16 = !MDLocation(line: 36, column: 3, scope: !13)
> +!17 = !MDLocation(line: 37, column: 1, scope: !13)
>  !18 =
> !{!"/Volumes/Lalgate/cj/llvm/projects/llvm-test/SingleSource/Benchmarks/BenchmarkGame/recursive.c",
> !"/Volumes/Lalgate/cj/D/projects/llvm-test/SingleSource/Benchmarks/BenchmarkGame"}
>  !19 = !{i32 0}
>  !20 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified:
> llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> ---
> llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
> (original)
> +++
> llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks-missed.ll
> Wed Jan 14 16:27:36 2015
> @@ -134,28 +134,28 @@ attributes #0 = { nounwind }
>  !9 = !{i32 2, !"Dwarf Version", i32 2}
>  !10 = !{i32 2, !"Debug Info Version", i32 2}
>  !11 = !{!"clang version 3.5.0"}
> -!12 = !{i32 3, i32 8, !13, null}
> +!12 = !MDLocation(line: 3, column: 8, scope: !13)
>  !13 = !{!"0xb\003\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
>  !14 = !{!14, !15, !15}
>  !15 = !{!"llvm.loop.vectorize.enable", i1 true}
> -!16 = !{i32 4, i32 5, !17, null}
> +!16 = !MDLocation(line: 4, column: 5, scope: !17)
>  !17 = !{!"0xb\003\0036\000", !1, !13} ; [ DW_TAG_lexical_block ]
>  !18 = !{!19, !19, i64 0}
>  !19 = !{!"int", !20, i64 0}
>  !20 = !{!"omnipotent char", !21, i64 0}
>  !21 = !{!"Simple C/C++ TBAA"}
> -!22 = !{i32 5, i32 9, !23, null}
> +!22 = !MDLocation(line: 5, column: 9, scope: !23)
>  !23 = !{!"0xb\005\009\000", !1, !17} ; [ DW_TAG_lexical_block ]
> -!24 = !{i32 8, i32 1, !4, null}
> -!25 = !{i32 12, i32 8, !26, null}
> +!24 = !MDLocation(line: 8, column: 1, scope: !4)
> +!25 = !MDLocation(line: 12, column: 8, scope: !26)
>  !26 = !{!"0xb\0012\003\000", !1, !7} ; [ DW_TAG_lexical_block ]
>  !27 = !{!27, !28, !29}
>  !28 = !{!"llvm.loop.interleave.count", i32 1}
>  !29 = !{!"llvm.loop.vectorize.width", i32 1}
> -!30 = !{i32 13, i32 5, !26, null}
> -!31 = !{i32 14, i32 1, !7, null}
> -!32 = !{i32 18, i32 8, !33, null}
> +!30 = !MDLocation(line: 13, column: 5, scope: !26)
> +!31 = !MDLocation(line: 14, column: 1, scope: !7)
> +!32 = !MDLocation(line: 18, column: 8, scope: !33)
>  !33 = !{!"0xb\0018\003\000", !1, !8} ; [ DW_TAG_lexical_block ]
>  !34 = !{!34, !15}
> -!35 = !{i32 19, i32 5, !33, null}
> -!36 = !{i32 20, i32 1, !8, null}
> +!35 = !MDLocation(line: 19, column: 5, scope: !33)
> +!36 = !MDLocation(line: 20, column: 1, scope: !8)
>
> Modified:
> llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll
> (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/X86/vectorization-remarks.ll
> Wed Jan 14 16:27:36 2015
> @@ -58,17 +58,17 @@ declare void @ibar(i32*) #1
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5.0 "}
> -!10 = !{i32 8, i32 3, !4, null}
> +!10 = !MDLocation(line: 8, column: 3, scope: !4)
>  !11 = !{!12, !12, i64 0}
>  !12 = !{!"int", !13, i64 0}
>  !13 = !{!"omnipotent char", !14, i64 0}
>  !14 = !{!"Simple C/C++ TBAA"}
> -!15 = !{i32 17, i32 8, !16, null}
> +!15 = !MDLocation(line: 17, column: 8, scope: !16)
>  !16 = !{!"0xb\0017\008\002", !1, !17} ; [ DW_TAG_lexical_block ]
> [./vectorization-remarks.c]
>  !17 = !{!"0xb\0017\008\001", !1, !18} ; [ DW_TAG_lexical_block ]
> [./vectorization-remarks.c]
>  !18 = !{!"0xb\0017\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [./vectorization-remarks.c]
> -!19 = !{i32 18, i32 5, !20, null}
> +!19 = !MDLocation(line: 18, column: 5, scope: !20)
>  !20 = !{!"0xb\0017\0027\000", !1, !18} ; [ DW_TAG_lexical_block ]
> [./vectorization-remarks.c]
>  !21 = !{!13, !13, i64 0}
> -!22 = !{i32 20, i32 3, !4, null}
> -!23 = !{i32 21, i32 3, !4, null}
> +!22 = !MDLocation(line: 20, column: 3, scope: !4)
> +!23 = !MDLocation(line: 21, column: 3, scope: !4)
>
> Modified:
> llvm/trunk/test/Transforms/LoopVectorize/conditional-assignment.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/conditional-assignment.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/conditional-assignment.ll
> (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/conditional-assignment.ll Wed
> Jan 14 16:27:36 2015
> @@ -46,13 +46,13 @@ attributes #0 = { nounwind }
>  !7 = !{i32 2, !"Dwarf Version", i32 2}
>  !8 = !{i32 2, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.6.0"}
> -!10 = !{i32 2, i32 8, !11, null}
> +!10 = !MDLocation(line: 2, column: 8, scope: !11)
>  !11 = !{!"0xb\002\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 3, i32 9, !13, null}
> +!12 = !MDLocation(line: 3, column: 9, scope: !13)
>  !13 = !{!"0xb\003\009\000", !1, !11} ; [ DW_TAG_lexical_block ]
>  !14 = !{!15, !15, i64 0}
>  !15 = !{!"int", !16, i64 0}
>  !16 = !{!"omnipotent char", !17, i64 0}
>  !17 = !{!"Simple C/C++ TBAA"}
> -!18 = !{i32 3, i32 29, !13, null}
> -!19 = !{i32 4, i32 1, !4, null}
> +!18 = !MDLocation(line: 3, column: 29, scope: !13)
> +!19 = !MDLocation(line: 4, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/LoopVectorize/control-flow.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/control-flow.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/control-flow.ll (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/control-flow.ll Wed Jan 14
> 16:27:36 2015
> @@ -65,14 +65,14 @@ attributes #0 = { nounwind }
>  !7 = !{i32 2, !"Dwarf Version", i32 2}
>  !8 = !{i32 2, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5.0"}
> -!10 = !{i32 3, i32 8, !11, null}
> +!10 = !MDLocation(line: 3, column: 8, scope: !11)
>  !11 = !{!"0xb\003\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 5, i32 9, !13, null}
> +!12 = !MDLocation(line: 5, column: 9, scope: !13)
>  !13 = !{!"0xb\005\009\000", !1, !14} ; [ DW_TAG_lexical_block ]
>  !14 = !{!"0xb\004\003\000", !1, !11} ; [ DW_TAG_lexical_block ]
>  !15 = !{!16, !16, i64 0}
>  !16 = !{!"int", !17, i64 0}
>  !17 = !{!"omnipotent char", !18, i64 0}
>  !18 = !{!"Simple C/C++ TBAA"}
> -!19 = !{i32 8, i32 7, !13, null}
> -!20 = !{i32 12, i32 3, !4, null}
> +!19 = !MDLocation(line: 8, column: 7, scope: !13)
> +!20 = !MDLocation(line: 12, column: 3, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll Wed Jan 14
> 16:27:36 2015
> @@ -62,9 +62,9 @@ attributes #1 = { nounwind readnone }
>  !15 = !{i32 786465, i64 0, i64 1024}
>  !16 = !{!"0x34\00B\00B\00\002\000\001", null, !4, !13, [1024 x i32]* @B,
> null} ; [ DW_TAG_variable ]
>  !17 = !{!"0x34\00C\00C\00\003\000\001", null, !4, !13, [1024 x i32]* @C,
> null} ; [ DW_TAG_variable ]
> -!18 = !{i32 6, i32 0, !10, null}
> -!19 = !{i32 7, i32 0, !20, null}
> +!18 = !MDLocation(line: 6, scope: !10)
> +!19 = !MDLocation(line: 7, scope: !20)
>  !20 = !{!"0xb\006\000\001", !25, !10} ; [ DW_TAG_lexical_block ]
> -!24 = !{i32 9, i32 0, !3, null}
> +!24 = !MDLocation(line: 9, scope: !3)
>  !25 = !{!"test", !"/path/to/somewhere"}
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/LoopVectorize/debugloc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/debugloc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/debugloc.ll (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/debugloc.ll Wed Jan 14
> 16:27:36 2015
> @@ -82,9 +82,9 @@ attributes #1 = { nounwind readnone }
>  !16 = !{!"0x100\00i\005\000", !17, !6, !11} ; [ DW_TAG_auto_variable ]
> [i] [line 5]
>  !17 = !{!"0xb\005\000\000", !5, !4} ; [ DW_TAG_lexical_block ]
> [/Volumes/Data/backedup/dev/os/llvm/debug/<stdin>]
>  !18 = !{i32 2, !"Dwarf Version", i32 3}
> -!19 = !{i32 3, i32 0, !4, null}
> -!20 = !{i32 4, i32 0, !4, null}
> -!21 = !{i32 5, i32 0, !17, null}
> -!22 = !{i32 6, i32 0, !17, null}
> -!26 = !{i32 7, i32 0, !4, null}
> +!19 = !MDLocation(line: 3, scope: !4)
> +!20 = !MDLocation(line: 4, scope: !4)
> +!21 = !MDLocation(line: 5, scope: !17)
> +!22 = !MDLocation(line: 6, scope: !17)
> +!26 = !MDLocation(line: 7, scope: !4)
>  !27 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/LoopVectorize/no_array_bounds.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/no_array_bounds.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/no_array_bounds.ll (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/no_array_bounds.ll Wed Jan 14
> 16:27:36 2015
> @@ -82,20 +82,20 @@ attributes #0 = { nounwind }
>  !7 = !{i32 2, !"Dwarf Version", i32 2}
>  !8 = !{i32 2, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5.0"}
> -!10 = !{i32 4, i32 8, !11, null}
> +!10 = !MDLocation(line: 4, column: 8, scope: !11)
>  !11 = !{!"0xb\004\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
>  !12 = !{!12, !13}
>  !13 = !{!"llvm.loop.vectorize.enable", i1 true}
> -!14 = !{i32 5, i32 5, !15, null}
> +!14 = !MDLocation(line: 5, column: 5, scope: !15)
>  !15 = !{!"0xb\004\0036\000", !1, !11} ; [ DW_TAG_lexical_block ]
> -!16 = !{i32 9, i32 8, !17, null}
> +!16 = !MDLocation(line: 9, column: 8, scope: !17)
>  !17 = !{!"0xb\009\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
>  !18 = !{!18, !13, !19}
>  !19 = !{!"llvm.loop.vectorize.width", i32 1}
> -!20 = !{i32 10, i32 5, !21, null}
> +!20 = !MDLocation(line: 10, column: 5, scope: !21)
>  !21 = !{!"0xb\009\0036\000", !1, !17} ; [ DW_TAG_lexical_block ]
>  !22 = !{!23, !23, i64 0}
>  !23 = !{!"int", !24, i64 0}
>  !24 = !{!"omnipotent char", !25, i64 0}
>  !25 = !{!"Simple C/C++ TBAA"}
> -!26 = !{i32 12, i32 1, !4, null}
> +!26 = !MDLocation(line: 12, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/LoopVectorize/no_switch.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/LoopVectorize/no_switch.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/LoopVectorize/no_switch.ll (original)
> +++ llvm/trunk/test/Transforms/LoopVectorize/no_switch.ll Wed Jan 14
> 16:27:36 2015
> @@ -69,18 +69,18 @@ attributes #0 = { nounwind }
>  !7 = !{i32 2, !"Dwarf Version", i32 2}
>  !8 = !{i32 2, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5.0"}
> -!10 = !{i32 3, i32 8, !11, null}
> +!10 = !MDLocation(line: 3, column: 8, scope: !11)
>  !11 = !{!"0xb\003\003\000", !1, !4} ; [ DW_TAG_lexical_block ]
>  !12 = !{!12, !13, !13}
>  !13 = !{!"llvm.loop.vectorize.enable", i1 true}
> -!14 = !{i32 4, i32 5, !15, null}
> +!14 = !MDLocation(line: 4, column: 5, scope: !15)
>  !15 = !{!"0xb\003\0036\000", !1, !11} ; [ DW_TAG_lexical_block ]
>  !16 = !{!17, !17, i64 0}
>  !17 = !{!"int", !18, i64 0}
>  !18 = !{!"omnipotent char", !19, i64 0}
>  !19 = !{!"Simple C/C++ TBAA"}
> -!20 = !{i32 6, i32 7, !21, null}
> +!20 = !MDLocation(line: 6, column: 7, scope: !21)
>  !21 = !{!"0xb\004\0018\000", !1, !15} ; [ DW_TAG_lexical_block ]
> -!22 = !{i32 7, i32 5, !21, null}
> -!23 = !{i32 9, i32 7, !21, null}
> -!24 = !{i32 14, i32 1, !4, null}
> +!22 = !MDLocation(line: 7, column: 5, scope: !21)
> +!23 = !MDLocation(line: 9, column: 7, scope: !21)
> +!24 = !MDLocation(line: 14, column: 1, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo.ll (original)
> +++ llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo.ll Wed Jan 14
> 16:27:36 2015
> @@ -43,9 +43,9 @@ declare void @llvm.dbg.declare(metadata,
>  !5 = !{!6, !7, !6}
>  !6 = !{!"0x24\00double\000\0064\0064\000\000\004", !12, !2} ; [
> DW_TAG_base_type ]
>  !7 = !{!"0x24\00int\000\0032\0032\000\000\005", !12, !2} ; [
> DW_TAG_base_type ]
> -!8 = !{i32 2, i32 0, !1, null}
> +!8 = !MDLocation(line: 2, scope: !1)
>  !9 = !{!"0x101\00j\002\000", !1, !2, !6} ; [ DW_TAG_arg_variable ]
> -!10 = !{i32 3, i32 0, !11, null}
> +!10 = !MDLocation(line: 3, scope: !11)
>  !11 = !{!"0xb\002\000\000", !12, !1} ; [ DW_TAG_lexical_block ]
>  !12 = !{!"testfunc.c", !"/tmp"}
>  !13 = !{i32 0}
>
> Modified: llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll (original)
> +++ llvm/trunk/test/Transforms/Mem2Reg/ConvertDebugInfo2.ll Wed Jan 14
> 16:27:36 2015
> @@ -39,19 +39,19 @@ return:
>  !4 = !{!"0x15\00\000\000\000\000\000\000", !20, !2, null, !5, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !5 = !{null, !6}
>  !6 = !{!"0x24\00int\000\0032\0032\000\000\005", !20, !2} ; [
> DW_TAG_base_type ]
> -!7 = !{i32 8, i32 0, !1, null}
> -!8 = !{i32 9, i32 0, !1, null}
> +!7 = !MDLocation(line: 8, scope: !1)
> +!8 = !MDLocation(line: 9, scope: !1)
>  !9 = !{!"0x101\00x\004\000", !10, !2, !6} ; [ DW_TAG_arg_variable ]
>  !10 = !{!"0x2e\00bar\00bar\00bar\004\001\001\000\006\000\000\004", !20,
> !2, !11, null, null, null, null, null} ; [ DW_TAG_subprogram ]
>  !11 = !{!"0x15\00\000\000\000\000\000\000", !20, !2, null, !12, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !12 = !{null, !6, !13, !14}
>  !13 = !{!"0x24\00long int\000\0064\0064\000\000\005", !20, !2} ; [
> DW_TAG_base_type ]
>  !14 = !{!"0xf\00\000\0064\0064\000\000", !20, !2, null} ; [
> DW_TAG_pointer_type ]
> -!15 = !{i32 4, i32 0, !10, !8}
> +!15 = !MDLocation(line: 4, scope: !10, inlinedAt: !8)
>  !16 = !{!"0x101\00y\004\000", !10, !2, !13} ; [ DW_TAG_arg_variable ]
>  !17 = !{!"0x101\00z\004\000", !10, !2, !14} ; [ DW_TAG_arg_variable ]
> -!18 = !{i32 5, i32 0, !10, !8}
> -!19 = !{i32 10, i32 0, !1, null}
> +!18 = !MDLocation(line: 5, scope: !10, inlinedAt: !8)
> +!19 = !MDLocation(line: 10, scope: !1)
>  !20 = !{!"bar.c", !"/tmp/"}
>  !21 = !{i32 0}
>  !22 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified:
> llvm/trunk/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> ---
> llvm/trunk/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
> (original)
> +++
> llvm/trunk/test/Transforms/ObjCARC/ensure-that-exception-unwind-path-is-visited.ll
> Wed Jan 14 16:27:36 2015
> @@ -148,27 +148,27 @@ declare void @llvm.dbg.value(metadata, i
>  !34 = !{i32 1, !"Objective-C Image Info Version", i32 0}
>  !35 = !{i32 1, !"Objective-C Image Info Section", !"__DATA,
> __objc_imageinfo, regular, no_dead_strip"}
>  !36 = !{i32 4, !"Objective-C Garbage Collection", i32 0}
> -!37 = !{i32 11, i32 0, !13, null}
> +!37 = !MDLocation(line: 11, scope: !13)
>  !38 = !{}
> -!39 = !{i32 15, i32 0, !26, null}
> -!40 = !{i32 17, i32 0, !41, null}
> +!39 = !MDLocation(line: 15, scope: !26)
> +!40 = !MDLocation(line: 17, scope: !41)
>  !41 = !{!"0xb\0016\000\003", !60, !26} ; [ DW_TAG_lexical_block ]
> [/Volumes/Files/gottesmmcab/Radar/12906997/test.m]
> -!42 = !{i32 22, i32 0, !26, null}
> -!43 = !{i32 23, i32 0, !22, null}
> -!44 = !{i32 19, i32 0, !41, null}
> +!42 = !MDLocation(line: 22, scope: !26)
> +!43 = !MDLocation(line: 23, scope: !22)
> +!44 = !MDLocation(line: 19, scope: !41)
>  !45 = !{i8 0}
> -!46 = !{i32 20, i32 0, !47, null}
> +!46 = !MDLocation(line: 20, scope: !47)
>  !47 = !{!"0xb\0019\000\005", !60, !48} ; [ DW_TAG_lexical_block ]
> [/Volumes/Files/gottesmmcab/Radar/12906997/test.m]
>  !48 = !{!"0xb\0019\000\004", !60, !26} ; [ DW_TAG_lexical_block ]
> [/Volumes/Files/gottesmmcab/Radar/12906997/test.m]
> -!49 = !{i32 21, i32 0, !47, null}
> -!50 = !{i32 24, i32 0, !51, null}
> +!49 = !MDLocation(line: 21, scope: !47)
> +!50 = !MDLocation(line: 24, scope: !51)
>  !51 = !{!"0xb\0023\000\006", !60, !22} ; [ DW_TAG_lexical_block ]
> [/Volumes/Files/gottesmmcab/Radar/12906997/test.m]
> -!52 = !{i32 25, i32 0, !51, null}
> -!53 = !{i32 27, i32 0, !13, null}
> -!54 = !{i32 28, i32 0, !13, null}
> -!55 = !{i32 4, i32 0, !27, null}
> -!56 = !{i32 6, i32 0, !57, null}
> +!52 = !MDLocation(line: 25, scope: !51)
> +!53 = !MDLocation(line: 27, scope: !13)
> +!54 = !MDLocation(line: 28, scope: !13)
> +!55 = !MDLocation(line: 4, scope: !27)
> +!56 = !MDLocation(line: 6, scope: !57)
>  !57 = !{!"0xb\005\000\007", !60, !27} ; [ DW_TAG_lexical_block ]
> [/Volumes/Files/gottesmmcab/Radar/12906997/test.m]
> -!58 = !{i32 7, i32 0, !57, null}
> +!58 = !MDLocation(line: 7, scope: !57)
>  !60 = !{!"test.m", !"/Volumes/Files/gottesmmcab/Radar/12906997"}
>  !61 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/SLPVectorizer/X86/debug_info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SLPVectorizer/X86/debug_info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SLPVectorizer/X86/debug_info.ll (original)
> +++ llvm/trunk/test/Transforms/SLPVectorizer/X86/debug_info.ll Wed Jan 14
> 16:27:36 2015
> @@ -18,8 +18,8 @@ target triple = "x86_64-apple-macosx10.7
>  ;CHECK: load <2 x double>* {{.*}}, !dbg ![[LOC]]
>  ;CHECK: store <2 x double> {{.*}}, !dbg ![[LOC2:[0-9]+]]
>  ;CHECK: ret
> -;CHECK: ![[LOC]] = !{i32 4, i32 0,
> -;CHECK: ![[LOC2]] = !{i32 7, i32 0,
> +;CHECK: ![[LOC]] = !MDLocation(line: 4, scope:
> +;CHECK: ![[LOC2]] = !MDLocation(line: 7, scope:
>
>  define i32 @depth(double* nocapture %A, i32 %m) #0 {
>  entry:
> @@ -76,14 +76,14 @@ attributes #1 = { nounwind readnone }
>  !16 = !{!"0x100\00i\003\000", !17, !5, !8} ; [ DW_TAG_auto_variable ] [i]
> [line 3]
>  !17 = !{!"0xb\003\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [/Users/nadav/file.c]
>  !18 = !{i32 2, !"Dwarf Version", i32 2}
> -!19 = !{i32 1, i32 0, !4, null}
> +!19 = !MDLocation(line: 1, scope: !4)
>  !20 = !{double 0.000000e+00}
> -!21 = !{i32 2, i32 0, !4, null}
> +!21 = !MDLocation(line: 2, scope: !4)
>  !22 = !{double 1.000000e+00}
> -!23 = !{i32 3, i32 0, !17, null}
> -!24 = !{i32 4, i32 0, !25, null}
> +!23 = !MDLocation(line: 3, scope: !17)
> +!24 = !MDLocation(line: 4, scope: !25)
>  !25 = !{!"0xb\003\000\001", !1, !17} ; [ DW_TAG_lexical_block ]
> [/Users/nadav/file.c]
> -!29 = !{i32 5, i32 0, !25, null}
> -!30 = !{i32 7, i32 0, !4, null}
> -!31 = !{i32 8, i32 0, !4, null}
> +!29 = !MDLocation(line: 5, scope: !25)
> +!30 = !MDLocation(line: 7, scope: !4)
> +!31 = !MDLocation(line: 8, scope: !4)
>  !32 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/SampleProfile/branch.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/branch.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SampleProfile/branch.ll (original)
> +++ llvm/trunk/test/Transforms/SampleProfile/branch.ll Wed Jan 14 16:27:36
> 2015
> @@ -125,19 +125,19 @@ attributes #4 = { nounwind readonly }
>  !24 = !{!"0xb\0011\000\000", !1, !22} ; [ DW_TAG_lexical_block ]
> [./branch.cc]
>  !25 = !{i32 2, !"Dwarf Version", i32 4}
>  !26 = !{!"clang version 3.4 (trunk 192896) (llvm/trunk 192895)"}
> -!27 = !{i32 4, i32 0, !4, null}
> -!28 = !{i32 5, i32 0, !29, null}
> +!27 = !MDLocation(line: 4, scope: !4)
> +!28 = !MDLocation(line: 5, scope: !29)
>  !29 = !{!"0xb\005\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [./branch.cc]
> -!30 = !{i32 8, i32 0, !4, null}
> +!30 = !MDLocation(line: 8, scope: !4)
>  !31 = !{!32, !32, i64 0}
>  !32 = !{!"any pointer", !33, i64 0}
>  !33 = !{!"omnipotent char", !34, i64 0}
>  !34 = !{!"Simple C/C++ TBAA"}
> -!35 = !{i32 9, i32 0, !20, null}
> -!36 = !{i32 13, i32 0, !24, null}
> -!37 = !{i32 14, i32 0, !24, null}
> -!38 = !{i32 11, i32 0, !22, null}
> -!39 = !{i32 20, i32 0, !4, null}
> -!40 = !{i32 21, i32 0, !4, null}
> -!41 = !{i32 22, i32 0, !4, null}
> +!35 = !MDLocation(line: 9, scope: !20)
> +!36 = !MDLocation(line: 13, scope: !24)
> +!37 = !MDLocation(line: 14, scope: !24)
> +!38 = !MDLocation(line: 11, scope: !22)
> +!39 = !MDLocation(line: 20, scope: !4)
> +!40 = !MDLocation(line: 21, scope: !4)
> +!41 = !MDLocation(line: 22, scope: !4)
>  !42 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/SampleProfile/calls.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/calls.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SampleProfile/calls.ll (original)
> +++ llvm/trunk/test/Transforms/SampleProfile/calls.ll Wed Jan 14 16:27:36
> 2015
> @@ -103,18 +103,18 @@ declare i32 @printf(i8*, ...) #2
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 1, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5 "}
> -!11 = !{i32 4, i32 0, !4, null}
> -!12 = !{i32 8, i32 0, !7, null}
> -!13 = !{i32 9, i32 0, !7, null}
> -!14 = !{i32 9, i32 0, !15, null}
> +!11 = !MDLocation(line: 4, scope: !4)
> +!12 = !MDLocation(line: 8, scope: !7)
> +!13 = !MDLocation(line: 9, scope: !7)
> +!14 = !MDLocation(line: 9, scope: !15)
>  !15 = !{!"0xb\001", !1, !7} ; [ DW_TAG_lexical_block ] [./calls.cc]
> -!16 = !{i32 10, i32 0, !17, null}
> +!16 = !MDLocation(line: 10, scope: !17)
>  !17 = !{!"0xb\0010\000\000", !1, !7} ; [ DW_TAG_lexical_block ]
> [./calls.cc]
> -!18 = !{i32 10, i32 0, !19, null}
> +!18 = !MDLocation(line: 10, scope: !19)
>  !19 = !{!"0xb\001", !1, !17} ; [ DW_TAG_lexical_block ] [./calls.cc]
> -!20 = !{i32 10, i32 0, !21, null}
> +!20 = !MDLocation(line: 10, scope: !21)
>  !21 = !{!"0xb\002", !1, !17} ; [ DW_TAG_lexical_block ] [./calls.cc]
> -!22 = !{i32 10, i32 0, !23, null}
> +!22 = !MDLocation(line: 10, scope: !23)
>  !23 = !{!"0xb\003", !1, !17} ; [ DW_TAG_lexical_block ] [./calls.cc]
> -!24 = !{i32 11, i32 0, !7, null}
> -!25 = !{i32 12, i32 0, !7, null}
> +!24 = !MDLocation(line: 11, scope: !7)
> +!25 = !MDLocation(line: 12, scope: !7)
>
> Modified: llvm/trunk/test/Transforms/SampleProfile/discriminator.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/discriminator.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SampleProfile/discriminator.ll (original)
> +++ llvm/trunk/test/Transforms/SampleProfile/discriminator.ll Wed Jan 14
> 16:27:36 2015
> @@ -76,15 +76,15 @@ while.end:
>  !7 = !{i32 2, !"Dwarf Version", i32 4}
>  !8 = !{i32 1, !"Debug Info Version", i32 2}
>  !9 = !{!"clang version 3.5 "}
> -!10 = !{i32 2, i32 0, !4, null}
> -!11 = !{i32 3, i32 0, !4, null}
> -!12 = !{i32 3, i32 0, !13, null}
> +!10 = !MDLocation(line: 2, scope: !4)
> +!11 = !MDLocation(line: 3, scope: !4)
> +!12 = !MDLocation(line: 3, scope: !13)
>  !13 = !{!"0xb\001", !1, !4} ; [ DW_TAG_lexical_block ] [discriminator.c]
> -!14 = !{i32 4, i32 0, !15, null}
> +!14 = !MDLocation(line: 4, scope: !15)
>  !15 = !{!"0xb\004\000\001", !1, !16} ; [ DW_TAG_lexical_block ]
> [discriminator.c]
>  !16 = !{!"0xb\003\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [discriminator.c]
> -!17 = !{i32 4, i32 0, !18, null}
> +!17 = !MDLocation(line: 4, scope: !18)
>  !18 = !{!"0xb\001", !1, !15} ; [ DW_TAG_lexical_block ] [discriminator.c]
> -!19 = !{i32 5, i32 0, !16, null}
> -!20 = !{i32 6, i32 0, !16, null}
> -!21 = !{i32 7, i32 0, !4, null}
> +!19 = !MDLocation(line: 5, scope: !16)
> +!20 = !MDLocation(line: 6, scope: !16)
> +!21 = !MDLocation(line: 7, scope: !4)
>
> Modified: llvm/trunk/test/Transforms/SampleProfile/fnptr.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/fnptr.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SampleProfile/fnptr.ll (original)
> +++ llvm/trunk/test/Transforms/SampleProfile/fnptr.ll Wed Jan 14 16:27:36
> 2015
> @@ -129,27 +129,27 @@ declare i32 @printf(i8* nocapture readon
>
>  !0 = !{i32 2, !"Debug Info Version", i32 2}
>  !1 = !{!"clang version 3.6.0 "}
> -!2 = !{i32 9, i32 3, !3, null}
> +!2 = !MDLocation(line: 9, column: 3, scope: !3)
>  !3 = !{!"0x2e\00foo\00foo\00\008\000\001\000\000\00256\001\008", !4, !5,
> !6, null, double (i32)* @_Z3fooi, null, null, !7} ; [ DW_TAG_subprogram ]
> [line 8] [def] [foo]
>  !4 = !{!"fnptr.cc", !"."}
>  !5 = !{!"0x29", !4}    ; [ DW_TAG_file_type ] [./fnptr.cc]
>  !6 = !{!"0x15\00\000\000\000\000\000\000", null, null, null, !7, null,
> null, null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset
> 0] [from ]
>  !7 = !{}
> -!8 = !{i32 9, i32 14, !3, null}
> -!9 = !{i32 13, i32 3, !10, null}
> +!8 = !MDLocation(line: 9, column: 14, scope: !3)
> +!9 = !MDLocation(line: 13, column: 3, scope: !10)
>  !10 = !{!"0x2e\00bar\00bar\00\0012\000\001\000\000\00256\001\0012", !4,
> !5, !6, null, double (i32)* @_Z3bari, null, null, !7} ; [ DW_TAG_subprogram
> ] [line 12] [def] [bar]
> -!11 = !{i32 13, i32 14, !10, null}
> -!12 = !{i32 19, i32 3, !13, null}
> +!11 = !MDLocation(line: 13, column: 14, scope: !10)
> +!12 = !MDLocation(line: 19, column: 3, scope: !13)
>  !13 = !{!"0x2e\00main\00main\00\0016\000\001\000\000\00256\001\0016", !4,
> !5, !6, null, i32 ()* @main, null, null, !7} ; [ DW_TAG_subprogram ] [line
> 16] [def] [main]
> -!14 = !{i32 20, i32 5, !13, null}
> -!15 = !{i32 21, i32 15, !13, null}
> -!16 = !{i32 22, i32 11, !13, null}
> +!14 = !MDLocation(line: 20, column: 5, scope: !13)
> +!15 = !MDLocation(line: 21, column: 15, scope: !13)
> +!16 = !MDLocation(line: 22, column: 11, scope: !13)
>  !17 = !{!"branch_weights", i32 534, i32 2064}
> -!18 = !{i32 23, i32 14, !13, null}
> -!19 = !{i32 25, i32 14, !13, null}
> -!20 = !{i32 20, i32 28, !13, null}
> +!18 = !MDLocation(line: 23, column: 14, scope: !13)
> +!19 = !MDLocation(line: 25, column: 14, scope: !13)
> +!20 = !MDLocation(line: 20, column: 28, scope: !13)
>  !21 = !{!"branch_weights", i32 0, i32 1075}
> -!22 = !{i32 19, i32 26, !13, null}
> +!22 = !MDLocation(line: 19, column: 26, scope: !13)
>  !23 = !{!"branch_weights", i32 0, i32 534}
> -!24 = !{i32 27, i32 3, !13, null}
> -!25 = !{i32 28, i32 3, !13, null}
> +!24 = !MDLocation(line: 27, column: 3, scope: !13)
> +!25 = !MDLocation(line: 28, column: 3, scope: !13)
>
> Modified: llvm/trunk/test/Transforms/SampleProfile/propagate.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/propagate.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SampleProfile/propagate.ll (original)
> +++ llvm/trunk/test/Transforms/SampleProfile/propagate.ll Wed Jan 14
> 16:27:36 2015
> @@ -209,35 +209,35 @@ attributes #2 = { "less-precise-fpmad"="
>  !8 = !{i32 2, !"Dwarf Version", i32 4}
>  !9 = !{i32 1, !"Debug Info Version", i32 2}
>  !10 = !{!"clang version 3.5 "}
> -!11 = !{i32 4, i32 0, !12, null}
> +!11 = !MDLocation(line: 4, scope: !12)
>  !12 = !{!"0xb\004\000\000", !1, !4} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!13 = !{i32 5, i32 0, !14, null}
> +!13 = !MDLocation(line: 5, scope: !14)
>  !14 = !{!"0xb\004\000\000", !1, !12} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!15 = !{i32 7, i32 0, !16, null}
> +!15 = !MDLocation(line: 7, scope: !16)
>  !16 = !{!"0xb\007\000\000", !1, !17} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
>  !17 = !{!"0xb\006\000\000", !1, !12} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!18 = !{i32 8, i32 0, !19, null}
> +!18 = !MDLocation(line: 8, scope: !19)
>  !19 = !{!"0xb\008\000\000", !1, !20} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
>  !20 = !{!"0xb\007\000\000", !1, !16} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!21 = !{i32 9, i32 0, !19, null}
> -!22 = !{i32 10, i32 0, !23, null}
> +!21 = !MDLocation(line: 9, scope: !19)
> +!22 = !MDLocation(line: 10, scope: !23)
>  !23 = !{!"0xb\0010\000\000", !1, !20} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!24 = !{i32 11, i32 0, !25, null}
> +!24 = !MDLocation(line: 11, scope: !25)
>  !25 = !{!"0xb\0010\000\000", !1, !23} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!26 = !{i32 12, i32 0, !25, null}
> -!27 = !{i32 13, i32 0, !25, null}
> -!28 = !{i32 14, i32 0, !29, null}
> +!26 = !MDLocation(line: 12, scope: !25)
> +!27 = !MDLocation(line: 13, scope: !25)
> +!28 = !MDLocation(line: 14, scope: !29)
>  !29 = !{!"0xb\0014\000\000", !1, !30} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
>  !30 = !{!"0xb\0013\000\000", !1, !23} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!31 = !{i32 15, i32 0, !32, null}
> +!31 = !MDLocation(line: 15, scope: !32)
>  !32 = !{!"0xb\0014\000\000", !1, !29} ; [ DW_TAG_lexical_block ]
> [propagate.cc]
> -!33 = !{i32 16, i32 0, !32, null}
> -!34 = !{i32 17, i32 0, !32, null}
> -!35 = !{i32 19, i32 0, !20, null}
> -!36 = !{i32 21, i32 0, !4, null}
> -!37 = !{i32 22, i32 0, !4, null}
> -!38 = !{i32 25, i32 0, !7, null}
> -!39 = !{i32 26, i32 0, !7, null}
> -!40 = !{i32 27, i32 0, !7, null}
> -!41 = !{i32 28, i32 0, !7, null}
> -!42 = !{i32 29, i32 0, !7, null}
> +!33 = !MDLocation(line: 16, scope: !32)
> +!34 = !MDLocation(line: 17, scope: !32)
> +!35 = !MDLocation(line: 19, scope: !20)
> +!36 = !MDLocation(line: 21, scope: !4)
> +!37 = !MDLocation(line: 22, scope: !4)
> +!38 = !MDLocation(line: 25, scope: !7)
> +!39 = !MDLocation(line: 26, scope: !7)
> +!40 = !MDLocation(line: 27, scope: !7)
> +!41 = !MDLocation(line: 28, scope: !7)
> +!42 = !MDLocation(line: 29, scope: !7)
>
> Modified: llvm/trunk/test/Transforms/ScalarRepl/debuginfo-preserved.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/ScalarRepl/debuginfo-preserved.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/ScalarRepl/debuginfo-preserved.ll (original)
> +++ llvm/trunk/test/Transforms/ScalarRepl/debuginfo-preserved.ll Wed Jan
> 14 16:27:36 2015
> @@ -49,16 +49,16 @@ declare void @llvm.dbg.declare(metadata,
>  !4 = !{!5}
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !0} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x101\00a\0016777217\000", !1, !2, !5} ; [ DW_TAG_arg_variable ]
> -!7 = !{i32 1, i32 11, !1, null}
> +!7 = !MDLocation(line: 1, column: 11, scope: !1)
>  !8 = !{!"0x101\00b\0033554433\000", !1, !2, !5} ; [ DW_TAG_arg_variable ]
> -!9 = !{i32 1, i32 18, !1, null}
> +!9 = !MDLocation(line: 1, column: 18, scope: !1)
>  !10 = !{!"0x100\00c\002\000", !11, !2, !5} ; [ DW_TAG_auto_variable ]
>  !11 = !{!"0xb\001\0021\000", !18, !1} ; [ DW_TAG_lexical_block ]
> -!12 = !{i32 2, i32 9, !11, null}
> -!13 = !{i32 2, i32 14, !11, null}
> -!14 = !{i32 3, i32 5, !11, null}
> -!15 = !{i32 4, i32 5, !11, null}
> -!16 = !{i32 5, i32 5, !11, null}
> +!12 = !MDLocation(line: 2, column: 9, scope: !11)
> +!13 = !MDLocation(line: 2, column: 14, scope: !11)
> +!14 = !MDLocation(line: 3, column: 5, scope: !11)
> +!15 = !MDLocation(line: 4, column: 5, scope: !11)
> +!16 = !MDLocation(line: 5, column: 5, scope: !11)
>  !17 = !{!1}
>  !18 = !{!"/d/j/debug-test.c", !"/Volumes/Data/b"}
>  !19 = !{i32 0}
>
> Modified: llvm/trunk/test/Transforms/Scalarizer/dbginfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/Scalarizer/dbginfo.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/Scalarizer/dbginfo.ll (original)
> +++ llvm/trunk/test/Transforms/Scalarizer/dbginfo.ll Wed Jan 14 16:27:36
> 2015
> @@ -77,10 +77,10 @@ attributes #1 = { nounwind readnone }
>  !17 = !{!"0x101\00c\0050331651\000", !4, !5, !8} ; [ DW_TAG_arg_variable
> ] [c] [line 3]
>  !18 = !{i32 2, !"Dwarf Version", i32 4}
>  !19 = !{!"clang version 3.4 (trunk 194134) (llvm/trunk 194126)"}
> -!20 = !{i32 3, i32 0, !4, null}
> -!21 = !{i32 5, i32 0, !4, null}
> +!20 = !MDLocation(line: 3, scope: !4)
> +!21 = !MDLocation(line: 5, scope: !4)
>  !22 = !{!23, !23, i64 0}
>  !23 = !{!"omnipotent char", !24, i64 0}
>  !24 = !{!"Simple C/C++ TBAA"}
> -!25 = !{i32 6, i32 0, !4, null}
> +!25 = !MDLocation(line: 6, scope: !4)
>  !26 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/SimplifyCFG/branch-fold-dbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/branch-fold-dbg.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SimplifyCFG/branch-fold-dbg.ll (original)
> +++ llvm/trunk/test/Transforms/SimplifyCFG/branch-fold-dbg.ll Wed Jan 14
> 16:27:36 2015
> @@ -46,14 +46,14 @@ declare void @llvm.dbg.value(metadata, i
>  !2 = !{!"0x11\0012\00clang (trunk 129006)\001\00\000\00\000", !15, !4,
> !4, null, null, null} ; [ DW_TAG_compile_unit ]
>  !3 = !{!"0x15\00\000\000\000\000\000\000", !15, !1, null, !4, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !4 = !{null}
> -!5 = !{i32 131, i32 2, !0, null}
> -!6 = !{i32 134, i32 2, !0, null}
> +!5 = !MDLocation(line: 131, column: 2, scope: !0)
> +!6 = !MDLocation(line: 134, column: 2, scope: !0)
>  !7 = !{!"0x100\00bar\00232\000", !8, !1, !9} ; [ DW_TAG_auto_variable ]
>  !8 = !{!"0xb\00231\001\003", !15, !0} ; [ DW_TAG_lexical_block ]
>  !9 = !{!"0xf\00\000\0032\0032\000\000", null, !2, !10} ; [
> DW_TAG_pointer_type ]
>  !10 = !{!"0x26\00\000\000\000\000\000", null, !2, !11} ; [
> DW_TAG_const_type ]
>  !11 = !{!"0x24\00unsigned int\000\0032\0032\000\000\007", null, !2} ; [
> DW_TAG_base_type ]
> -!12 = !{i32 232, i32 40, !8, null}
> -!13 = !{i32 234, i32 2, !8, null}
> -!14 = !{i32 274, i32 1, !8, null}
> +!12 = !MDLocation(line: 232, column: 40, scope: !8)
> +!13 = !MDLocation(line: 234, column: 2, scope: !8)
> +!14 = !MDLocation(line: 274, column: 1, scope: !8)
>  !15 = !{!"a.c", !"/private/tmp"}
>
> Modified: llvm/trunk/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll (original)
> +++ llvm/trunk/test/Transforms/SimplifyCFG/hoist-dbgvalue.ll Wed Jan 14
> 16:27:36 2015
> @@ -39,18 +39,18 @@ declare void @llvm.dbg.value(metadata, i
>  !4 = !{!5}
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", null, !2} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x101\00i\0016777218\000", !0, !1, !5} ; [ DW_TAG_arg_variable ]
> -!7 = !{i32 2, i32 13, !0, null}
> +!7 = !MDLocation(line: 2, column: 13, scope: !0)
>  !8 = !{i32 0}
>  !9 = !{!"0x100\00k\003\000", !10, !1, !5} ; [ DW_TAG_auto_variable ]
>  !10 = !{!"0xb\002\0016\000", !20, !0} ; [ DW_TAG_lexical_block ]
> -!11 = !{i32 3, i32 12, !10, null}
> -!12 = !{i32 4, i32 3, !10, null}
> -!13 = !{i32 5, i32 5, !14, null}
> +!11 = !MDLocation(line: 3, column: 12, scope: !10)
> +!12 = !MDLocation(line: 4, column: 3, scope: !10)
> +!13 = !MDLocation(line: 5, column: 5, scope: !14)
>  !14 = !{!"0xb\004\0010\001", !20, !10} ; [ DW_TAG_lexical_block ]
> -!15 = !{i32 6, i32 3, !14, null}
> -!16 = !{i32 7, i32 5, !17, null}
> +!15 = !MDLocation(line: 6, column: 3, scope: !14)
> +!16 = !MDLocation(line: 7, column: 5, scope: !17)
>  !17 = !{!"0xb\006\0010\002", !20, !10} ; [ DW_TAG_lexical_block ]
> -!18 = !{i32 8, i32 3, !17, null}
> -!19 = !{i32 9, i32 3, !10, null}
> +!18 = !MDLocation(line: 8, column: 3, scope: !17)
> +!19 = !MDLocation(line: 9, column: 3, scope: !10)
>  !20 = !{!"b.c", !"/private/tmp"}
>  !21 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/SimplifyCFG/trap-debugloc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SimplifyCFG/trap-debugloc.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/SimplifyCFG/trap-debugloc.ll (original)
> +++ llvm/trunk/test/Transforms/SimplifyCFG/trap-debugloc.ll Wed Jan 14
> 16:27:36 2015
> @@ -16,9 +16,9 @@ define void @foo() nounwind ssp {
>  !2 = !{!"0x11\0012\00Apple clang version 3.0 (tags/Apple/clang-206.1)
> (based on LLVM 3.0svn)\001\00\000\00\000", !8, !4, !4, !9, null, null} ; [
> DW_TAG_compile_unit ]
>  !3 = !{!"0x15\00\000\000\000\000\000\000", !8, !1, null, !4, null, null,
> null} ; [ DW_TAG_subroutine_type ] [line 0, size 0, align 0, offset 0]
> [from ]
>  !4 = !{null}
> -!5 = !{i32 4, i32 2, !6, null}
> +!5 = !MDLocation(line: 4, column: 2, scope: !6)
>  !6 = !{!"0xb\003\0012\000", !8, !0} ; [ DW_TAG_lexical_block ]
> -!7 = !{i32 5, i32 1, !6, null}
> +!7 = !MDLocation(line: 5, column: 1, scope: !6)
>  !8 = !{!"foo.c", !"/private/tmp"}
>  !9 = !{!0}
>  !10 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
> (original)
> +++ llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll Wed
> Jan 14 16:27:36 2015
> @@ -28,7 +28,7 @@ declare void @llvm.dbg.value(metadata, i
>  !7 = !{!"0x24\00int\000\0032\0032\000\000\005", !12, !1} ; [
> DW_TAG_base_type ]
>  !8 = !{!"0x34\00x\00x\00\001\000\001", !1, !1, !7, i32* @x} ; [
> DW_TAG_variable ]
>  !9 = !{i32 0}
> -!10 = !{i32 3, i32 0, !6, null}
> -!11 = !{i32 4, i32 0, !6, null}
> +!10 = !MDLocation(line: 3, scope: !6)
> +!11 = !MDLocation(line: 4, scope: !6)
>  !12 = !{!"b.c", !"/tmp"}
>  !13 = !{i32 1, !"Debug Info Version", i32 2}
>
> Modified: llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll (original)
> +++ llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll Wed Jan 14
> 16:27:36 2015
> @@ -15,7 +15,7 @@ entry:
>  !5 = !{!"0x24\00int\000\0032\0032\000\000\005", !10, !1} ; [
> DW_TAG_base_type ]
>  !6 = !{!"0x34\00i\00i\00i\002\001\001", !1, !1, !7, i32 0, null} ; [
> DW_TAG_variable ]
>  !7 = !{!"0x26\00\000\000\000\000\000", !10, !1, !5} ; [ DW_TAG_const_type
> ]
> -!8 = !{i32 3, i32 13, !9, null}
> +!8 = !MDLocation(line: 3, column: 13, scope: !9)
>  !9 = !{!"0xb\003\0011\000", !10, !0} ; [ DW_TAG_lexical_block ]
>  !10 = !{!"/tmp/a.c", !"/Volumes/Lalgate/clean/D.CW"}
>  !11 = !{i32 0}
>
> Modified: llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll?rev=226048&r1=226047&r2=226048&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll
> (original)
> +++ llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll Wed
> Jan 14 16:27:36 2015
> @@ -48,10 +48,10 @@ attributes #2 = { nounwind readonly ssp
>  !15 = !{!"0x101\00i\007\000", !10, !5, !9} ; [ DW_TAG_arg_variable ]
>  !16 = !{!"0x34\00abcd\00abcd\00\002\001\001", !5, !5, !9, null, null} ; [
> DW_TAG_variable ]
>  !17 = !{!"0x34\00xyz\00xyz\00\003\000\001", !5, !5, !9, i32* @xyz, null}
> ; [ DW_TAG_variable ]
> -!18 = !{i32 6, i32 0, !19, null}
> +!18 = !MDLocation(line: 6, scope: !19)
>  !19 = !{!"0xb\006\000\000", !1, !6} ; [ DW_TAG_lexical_block ] [/tmp//g.c]
> -!20 = !{i32 7, i32 0, !10, null}
> -!21 = !{i32 10, i32 0, !22, null}
> +!20 = !MDLocation(line: 7, scope: !10)
> +!21 = !MDLocation(line: 10, scope: !22)
>  !22 = !{!"0xb\007\000\000", !1, !10} ; [ DW_TAG_lexical_block ]
> [/tmp//g.c]
>  !23 = !{!3, !6, !10}
>  !24 = !{!16, !17}
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150114/ac5d50e9/attachment.html>


More information about the llvm-commits mailing list