; CHECK: !named = !{!0, !1, !2, !3, !3}
!named = !{!0, !1, !2, !3, !4}
+!llvm.module.flags = !{!7}
+!llvm.dbg.cu = !{!5}
+
; CHECK: !0 = distinct !DISubprogram({{.*}})
; CHECK-NEXT: !1 = !DICompositeType({{.*}})
!0 = distinct !DISubprogram(name: "foo")
!4 = !DIImportedEntity(tag: DW_TAG_imported_module, name: "", scope: !0, entity: null,
line: 0)
+!5 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !6,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!0})
+!6 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
+!7 = !{i32 2, !"Debug Info Version", i32 3}
; CHECK: !named = !{!0, !1, !2, !3, !4, !4, !5, !6, !7, !7}
!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9}
+!llvm.module.flags = !{!11}
+!llvm.dbg.cu = !{!10}
+
!0 = distinct !{}
!1 = distinct !DISubprogram(name: "foo", scope: !2)
!2 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
; CHECK: !7 = !DILexicalBlockFile(scope: !3, discriminator: 7)
!8 = !DILexicalBlockFile(scope: !3, discriminator: 7)
!9 = !DILexicalBlockFile(scope: !3, file: null, discriminator: 7)
+
+!10 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !2,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!1})
+!11 = !{i32 2, !"Debug Info Version", i32 3}
; CHECK: !named = !{!0, !1}
!named = !{!0, !1}
+!llvm.module.flags = !{!4}
+!llvm.dbg.cu = !{!2}
+
!0 = distinct !DISubprogram()
; CHECK: !1 = !DILocalVariable(name: "foo", arg: 65535, scope: !0)
!1 = !DILocalVariable(name: "foo", arg: 65535, scope: !0)
+
+!2 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !3,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!0})
+!3 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
+!4 = !{i32 2, !"Debug Info Version", i32 3}
; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8}
!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8}
+!llvm.module.flags = !{!10}
+!llvm.dbg.cu = !{!9}
+
!0 = distinct !DISubprogram()
!1 = distinct !{}
!2 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
; CHECK: !8 = !DILocalVariable(scope: !0)
!7 = !DILocalVariable(scope: !0, arg: 1)
!8 = !DILocalVariable(scope: !0)
+
+!9 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !2,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!0})
+!10 = !{i32 2, !"Debug Info Version", i32 3}
; CHECK: !named = !{!0, !1, !1, !2, !2, !3, !3, !4}
!named = !{!0, !1, !2, !3, !4, !5, !6, !7}
+!llvm.module.flags = !{!10}
+!llvm.dbg.cu = !{!8}
+
; CHECK: !0 = distinct !DISubprogram(
!0 = distinct !DISubprogram()
; CHECK-NEXT: !4 = !DILocation(line: 4294967295, column: 65535, scope: !0)
!7 = !DILocation(line: 4294967295, column: 65535, scope: !0)
+
+!8 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !9,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!0})
+!9 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
+!10 = !{i32 2, !"Debug Info Version", i32 3}
!12 = !{i32 1, !"Debug Info Version", i32 3}
!llvm.module.flags = !{!12}
+!llvm.dbg.cu = !{!13}
+
+!13 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang",
+ file: !2,
+ isOptimized: true, flags: "-O2",
+ splitDebugFilename: "abc.debug", emissionKind: 2,
+ subprograms: !{!7, !9, !10, !11})