1; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s
2; RUN: verify-uselistorder %s
3
4; CHECK: !named = !{!0, !1, !2, !3, !4, !4, !5, !6, !7, !7}
5!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9}
6
7!0 = distinct !{}
8!1 = !MDSubprogram(name: "foo", scope: !2)
9!2 = !MDFile(filename: "path/to/file", directory: "/path/to/dir")
10
11; CHECK: !3 = !MDLexicalBlock(scope: !1, file: !2, line: 7, column: 35)
12!3 = !MDLexicalBlock(scope: !1, file: !2, line: 7, column: 35)
13
14; CHECK: !4 = !MDLexicalBlock(scope: !1)
15!4 = !MDLexicalBlock(scope: !1)
16!5 = !MDLexicalBlock(scope: !1, file: null, line: 0, column: 0)
17
18; CHECK: !5 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 0)
19; CHECK: !6 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 1)
20!6 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 0)
21!7 = !MDLexicalBlockFile(scope: !3, file: !2, discriminator: 1)
22
23; CHECK: !7 = !MDLexicalBlockFile(scope: !3, discriminator: 7)
24!8 = !MDLexicalBlockFile(scope: !3, discriminator: 7)
25!9 = !MDLexicalBlockFile(scope: !3, file: null, discriminator: 7)
26