1 ; RUN: opt -S -strip-nonlinetable-debuginfo %s -o - | FileCheck %s
2 ; RUN: opt -S -passes=strip-nonlinetable-debuginfo %s -o - | FileCheck %s
3 !llvm.dbg.cu = !{!2, !6}
5 !llvm.module.flags = !{!7}
7 !1 = !DIFile(filename: "path/to/file", directory: "/path/to/dir")
8 ; The first CU is used for the line table, the second one is a module skeleton
9 ; and should be stripped.
10 ; CHECK: !llvm.dbg.cu = !{![[CU:[0-9]+]]}
11 ; CHECK: ![[CU]] = distinct !DICompileUnit({{.*}}"abc.debug"{{.*}}LineTablesOnly
12 ; CHECK-NOT: retainedTypes:
14 ; CHECK-NOT: DICompositeType
15 !2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang",
16 isOptimized: true, flags: "-O2", runtimeVersion: 2,
17 splitDebugFilename: "abc.debug", emissionKind: FullDebug,
19 !3 = !{!"path/to/file.o", !2}
21 !5 = !DICompositeType(tag: DW_TAG_structure_type, file: !1, identifier: "ThisWillBeStripped")
22 !6 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang",
23 splitDebugFilename: "abc.dwo", emissionKind: FullDebug,
25 !7 = !{i32 1, !"Debug Info Version", i32 3}