1adcdc1bdSPaul Robinson; The .bc file was generated from this source using llvm-as from r347766. 2adcdc1bdSPaul Robinson; A 7.0 release version should work to recreate it if necessary. 3adcdc1bdSPaul Robinson; RUN: llvm-dis < %s.bc | FileCheck %s 4adcdc1bdSPaul Robinson 5adcdc1bdSPaul Robinson; CHECK: define void @_Z3foov() !dbg !9 6adcdc1bdSPaul Robinsondefine void @_Z3foov() !dbg !9 { 7adcdc1bdSPaul Robinson ret void 8adcdc1bdSPaul Robinson} 9adcdc1bdSPaul Robinson 10adcdc1bdSPaul Robinson; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9, !10, !11, !12, !13, !14, !15, !16, !17, !18} 11adcdc1bdSPaul Robinson!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9, !10, !11, !12, !13, !14, !15, !16, !17, !18} 12adcdc1bdSPaul Robinson 13adcdc1bdSPaul Robinson!0 = !{null} 14adcdc1bdSPaul Robinson!1 = distinct !DICompositeType(tag: DW_TAG_structure_type) 15adcdc1bdSPaul Robinson!2 = !DIFile(filename: "path/to/file", directory: "/path/to/dir") 16adcdc1bdSPaul Robinson!3 = !DISubroutineType(types: !0) 17adcdc1bdSPaul Robinson!4 = distinct !DICompositeType(tag: DW_TAG_structure_type) 18adcdc1bdSPaul Robinson!5 = distinct !{} 19adcdc1bdSPaul Robinson!6 = distinct !{} 20adcdc1bdSPaul Robinson 21adcdc1bdSPaul Robinson; CHECK: !7 = distinct !DISubprogram(scope: null, spFlags: DISPFlagDefinition, unit: !8) 22adcdc1bdSPaul Robinson!7 = distinct !DISubprogram(unit: !8) 23adcdc1bdSPaul Robinson 24adcdc1bdSPaul Robinson!8 = distinct !DICompileUnit(language: DW_LANG_C99, producer: "clang", 25adcdc1bdSPaul Robinson file: !2, isOptimized: true, flags: "-O2") 26adcdc1bdSPaul Robinson 27*7d0556fcSFangrui Song; CHECK: !9 = distinct !DISubprogram(scope: null, spFlags: 0) 28*7d0556fcSFangrui Song!9 = distinct !DISubprogram(isDefinition: false) 29adcdc1bdSPaul Robinson 30adcdc1bdSPaul Robinson; CHECK: !10 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagPureVirtual | DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, 31adcdc1bdSPaul Robinson!10 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 32adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 33adcdc1bdSPaul Robinson isLocal: true, isDefinition: true, isOptimized: true, 34adcdc1bdSPaul Robinson virtuality: DW_VIRTUALITY_pure_virtual, 35adcdc1bdSPaul Robinson unit: !8) 36adcdc1bdSPaul Robinson 37adcdc1bdSPaul Robinson; CHECK: !11 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagVirtual | DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, 38adcdc1bdSPaul Robinson!11 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 39adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 40adcdc1bdSPaul Robinson isLocal: true, isDefinition: true, isOptimized: true, 41adcdc1bdSPaul Robinson virtuality: DW_VIRTUALITY_virtual, 42adcdc1bdSPaul Robinson unit: !8) 43adcdc1bdSPaul Robinson 44adcdc1bdSPaul Robinson; CHECK: !12 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, 45adcdc1bdSPaul Robinson!12 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 46adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 47adcdc1bdSPaul Robinson isLocal: true, isDefinition: true, isOptimized: true, 48adcdc1bdSPaul Robinson virtuality: DW_VIRTUALITY_none, 49adcdc1bdSPaul Robinson unit: !8) 50adcdc1bdSPaul Robinson 51adcdc1bdSPaul Robinson; CHECK: !13 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagDefinition | DISPFlagOptimized, 52adcdc1bdSPaul Robinson!13 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 53adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 54adcdc1bdSPaul Robinson isLocal: false, isDefinition: true, isOptimized: true, 55adcdc1bdSPaul Robinson unit: !8) 56adcdc1bdSPaul Robinson 57adcdc1bdSPaul Robinson; CHECK: !14 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagLocalToUnit | DISPFlagOptimized) 58adcdc1bdSPaul Robinson!14 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 59adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 60adcdc1bdSPaul Robinson isLocal: true, isDefinition: false, isOptimized: true) 61adcdc1bdSPaul Robinson 62adcdc1bdSPaul Robinson; CHECK: !15 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, 63adcdc1bdSPaul Robinson!15 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 64adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 65adcdc1bdSPaul Robinson isLocal: true, isDefinition: true, isOptimized: false, 66adcdc1bdSPaul Robinson unit: !8) 67adcdc1bdSPaul Robinson 68adcdc1bdSPaul Robinson; CHECK: !16 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagLocalToUnit) 69adcdc1bdSPaul Robinson!16 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 70adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 71adcdc1bdSPaul Robinson isLocal: true, isDefinition: false, isOptimized: false) 72adcdc1bdSPaul Robinson 73adcdc1bdSPaul Robinson; CHECK: !17 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagDefinition, 74adcdc1bdSPaul Robinson!17 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 75adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 76adcdc1bdSPaul Robinson isLocal: false, isDefinition: true, isOptimized: false, 77adcdc1bdSPaul Robinson unit: !8) 78adcdc1bdSPaul Robinson 79adcdc1bdSPaul Robinson; CHECK: !18 = distinct !DISubprogram({{.*}}, spFlags: DISPFlagOptimized) 80adcdc1bdSPaul Robinson!18 = distinct !DISubprogram(name: "foo", linkageName: "_Zfoov", scope: !1, 81adcdc1bdSPaul Robinson file: !2, line: 7, type: !3, containingType: !4, 82adcdc1bdSPaul Robinson isLocal: false, isDefinition: false, isOptimized: true) 83adcdc1bdSPaul Robinson 84adcdc1bdSPaul Robinson!19 = !{i32 1, !"Debug Info Version", i32 3} 85adcdc1bdSPaul Robinson!llvm.module.flags = !{!19} 86adcdc1bdSPaul Robinson!llvm.dbg.cu = !{!8} 87