blob: 3bfbd1ff30b388a53f4587a05657ead2122e1943 [file] [log] [blame]
Duncan P. N. Exon Smith6cc81ef2015-05-06 22:51:12 +00001; RUN: llvm-as < %s | llvm-bcanalyzer -dump | FileCheck %s -check-prefix=BC
2; PR23436: Actually emit DEBUG_LOC_AGAIN records.
3
4; BC: <DEBUG_LOC op
5; BC: <DEBUG_LOC_AGAIN/>
6; BC: <DEBUG_LOC op
7; BC: <DEBUG_LOC_AGAIN/>
8
9; RUN: llvm-as < %s | llvm-dis | FileCheck %s
10; RUN: verify-uselistorder %s
11; Check that this round-trips correctly.
12
13define void @foo() {
14entry:
15 %a = add i32 0, 0, !dbg !3
16 %b = add i32 0, 1, !dbg !3
17 %c = add i32 0, 2, !dbg !4
18 ret void, !dbg !4
19}
20
21; CHECK-LABEL: entry:
22; CHECK-NEXT: %a = add i32 0, 0, !dbg ![[LINE1:[0-9]+]]
23; CHECK-NEXT: %b = add i32 0, 1, !dbg ![[LINE1]]
24; CHECK-NEXT: %c = add i32 0, 2, !dbg ![[LINE2:[0-9]+]]
25; CHECK-NEXT: ret void, !dbg ![[LINE2]]
26; CHECK: ![[LINE1]] = !DILocation(line: 1,
27; CHECK: ![[LINE2]] = !DILocation(line: 2,
28
29!llvm.module.flags = !{!0}
Davide Italianoa528f3f2016-03-31 03:40:07 +000030!llvm.dbg.cu = !{!1}
Duncan P. N. Exon Smith6cc81ef2015-05-06 22:51:12 +000031
32!0 = !{i32 2, !"Debug Info Version", i32 3}
Adrian Prantl4eeaa0d2016-04-15 15:57:41 +000033!1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !DIFile(filename: "f", directory: "/d"))
34!2 = distinct !DISubprogram(name: "foo", unit: !1)
Duncan P. N. Exon Smith6cc81ef2015-05-06 22:51:12 +000035!3 = !DILocation(line: 1, scope: !2)
36!4 = !DILocation(line: 2, scope: !2)