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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226048 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith
2015-01-14 22:27:36 +00:00
parent de8202b084
commit 37ac8d3622
299 changed files with 1587 additions and 1580 deletions

View File

@@ -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)