OLD | NEW |
(Empty) | |
| 1 ; RUN: opt -S -strip-metadata %s | FileCheck %s --check-prefix=STRIPMETA |
| 2 ; RUN: opt -S -strip-module-flags %s | FileCheck %s --check-prefix=STRIPMODF |
| 3 ; RUN: opt -S -strip-metadata -strip-module-flags -strip-debug %s | FileCheck %s
--check-prefix=STRIPALL |
| 4 |
| 5 define i32 @foo(i32 %c) { |
| 6 ; STRIPMETA: @foo |
| 7 ; STRIPMETA-NEXT: call void @llvm.dbg{{.*}}, !dbg |
| 8 ; STRIPMETA-NEXT: ret{{.*}}, !dbg |
| 9 ; STRIPMODF: @foo |
| 10 ; STRIPMODF-NEXT: call void @llvm.dbg{{.*}}, !dbg |
| 11 ; STRIPMODF-NEXT: ret{{.*}}, !dbg |
| 12 ; STRIPALL: @foo |
| 13 ; STRIPALL-NOT: !dbg |
| 14 tail call void @llvm.dbg.value(metadata !{i32 %c}, i64 0, metadata !9), !dbg !
10 |
| 15 ret i32 %c, !dbg !11 |
| 16 } |
| 17 |
| 18 ; STRIPMETA: @llvm.dbg.value |
| 19 ; STRIPMODF: @llvm.dbg.value |
| 20 ; STRIPALL: ret i32 |
| 21 ; STRIPALL-NOT: @llvm.dbg.value |
| 22 declare void @llvm.dbg.value(metadata, i64, metadata) #1 |
| 23 |
| 24 ; STRIPMETA-NOT: MadeUpMetadata |
| 25 ; STRIPMODF-NOT: MadeUpMetadata |
| 26 !MadeUpMetadata = !{} |
| 27 |
| 28 ; STRIPMETA: !llvm.dbg.cu |
| 29 ; STRIPMODF: !llvm.dbg.cu |
| 30 !llvm.dbg.cu = !{!0} |
| 31 |
| 32 ; STRIPMETA: llvm.module.flags |
| 33 ; STRIPMODF-NOT: llvm.module.flags |
| 34 ; STRIPALL-NOT: llvm.module.flags |
| 35 !llvm.module.flags = !{!12,!13} |
| 36 |
| 37 ; STRIPMETA: !0 = |
| 38 ; STRIPMODF: !0 = |
| 39 !0 = metadata !{i32 786449, i32 0, i32 12, metadata !"test.c", metadata !"/tmp",
metadata !"clang version 3.3 (trunk 176732) (llvm/trunk 176733)", i1 true, i1 t
rue, metadata !"", i32 0, metadata !1, metadata !1, metadata !2, metadata !1, me
tadata !""} ; [ DW_TAG_compile_unit ] [/tmp/test.c] [DW_LANG_C99] |
| 40 !1 = metadata !{i32 0} |
| 41 !2 = metadata !{metadata !3} |
| 42 !3 = metadata !{i32 786478, i32 0, metadata !4, metadata !"foo", metadata !"foo"
, metadata !"", metadata !4, i32 1, metadata !5, i1 false, i1 true, i32 0, i32 0
, null, i32 256, i1 true, i32 (i32)* @foo, null, null, metadata !8, i32 1} ; [ D
W_TAG_subprogram ] [line 1] [def] [foo] |
| 43 !4 = metadata !{i32 786473, metadata !"test.c", metadata !"/tmp", null} ; [ DW_T
AG_file_type ] |
| 44 !5 = metadata !{i32 786453, i32 0, metadata !"", i32 0, i32 0, i64 0, i64 0, i64
0, i32 0, null, metadata !6, i32 0, i32 0} ; [ DW_TAG_subroutine_type ] [line 0
, size 0, align 0, offset 0] [from ] |
| 45 !6 = metadata !{metadata !7, metadata !7} |
| 46 !7 = metadata !{i32 786468, null, metadata !"int", null, i32 0, i64 32, i64 32,
i64 0, i32 0, i32 5} ; [ DW_TAG_base_type ] [int] [line 0, size 32, align 32, of
fset 0, enc DW_ATE_signed] |
| 47 !8 = metadata !{metadata !9} |
| 48 !9 = metadata !{i32 786689, metadata !3, metadata !"c", metadata !4, i32 1677721
7, metadata !7, i32 0, i32 0} ; [ DW_TAG_arg_variable ] [c] [line 1] |
| 49 !10 = metadata !{i32 1, i32 0, metadata !3, null} |
| 50 !11 = metadata !{i32 2, i32 0, metadata !3, null} |
| 51 ; STRIPMETA: Linker Options |
| 52 ; STRIPMODF-NOT: Linker Options |
| 53 ; STRIPALL-NOT: Linker Options |
| 54 !12 = metadata !{ i32 6, metadata !"Linker Options", |
| 55 metadata !{ |
| 56 metadata !{ metadata !"-lz" }, |
| 57 metadata !{ metadata !"-framework", metadata !"Cocoa" } } } |
| 58 ; STRIPMETA: Debug Info Version |
| 59 ; STRIPMODF-NOT: Debug Info Version |
| 60 ; STRIPALL-NOT: Debug Info Version |
| 61 !13 = metadata !{i32 1, metadata !"Debug Info Version", i32 2} |
OLD | NEW |