brintos

brintos / llvm-project-archived public Read only

0
0
Text · 23.5 KiB · e7e09a5 Raw
510 lines · plain
1; RUN: llc -mtriple=nvptx64-nvidia-cuda -mattr=+ptx70 < %s | FileCheck %s2; RUN: %if ptxas-isa-7.0 %{ llc -mtriple=nvptx64-nvidia-cuda < %s -mattr=+ptx70 | %ptxas-verify %}3 4; CHECK: .target sm_{{[0-9]+}}, debug5 6; CHECK: .extern .func  (.param .b32 func_retval0) _ZN1A3fooEv7; CHECK: (8; CHECK: .param .b64 _ZN1A3fooEv_param_09; CHECK: )10 11%struct.A = type { ptr, i32 }12 13; CHECK: .visible .func  (.param .b32 func_retval0) _Z3bari(14; CHECK: {15; CHECK: .loc [[CU1:[0-9]+]] 1 016; CHECK: $L__func_begin0:17; CHECK: .loc [[CU1]] 1 018 19; CHECK: //DEBUG_VALUE: bar:b <- {{[0-9]+}}20; CHECK: //DEBUG_VALUE: bar:b <- {{[0-9]+}}21; CHECK: .loc [[CU1]] 2 022; CHECK: ret;23; CHECK: }24 25; Function Attrs: nounwind26define i32 @_Z3bari(i32 %b) #0 !dbg !4 {27entry:28  %b.addr = alloca i32, align 429  store i32 %b, ptr %b.addr, align 430  call void @llvm.dbg.value(metadata i32 0, metadata !21, metadata !DIExpression()), !dbg !2231  %0 = load i32, ptr %b.addr, align 4, !dbg !2332  call void @llvm.dbg.value(metadata i32 1, metadata !21, metadata !DIExpression()), !dbg !2233  %add = add nsw i32 %0, 4, !dbg !2334  ret i32 %add, !dbg !2335}36 37; Function Attrs: nounwind readnone38declare void @llvm.dbg.declare(metadata, metadata, metadata) #139 40declare void @llvm.dbg.value(metadata, metadata, metadata) #141 42; CHECK: .visible .func _Z3baz1A(43; CHECK: {44; CHECK: .loc [[CU2:[0-9]+]] 6 045; CHECK: $L__func_begin1:46; CHECK: .loc [[CU2]] 6 047; CHECK-NOT: //DEBUG_VALUE: baz:z48; CHECK: //DEBUG_VALUE: baz:z <- undef49; CHECK: .loc [[CU2]] 10 050; CHECK: ret;51; CHECK: }52 53define void @_Z3baz1A(ptr %a) #2 !dbg !14 {54entry:55  %z = alloca i32, align 456  call void @llvm.dbg.declare(metadata ptr %a, metadata !24, metadata !DIExpression(DW_OP_deref)), !dbg !2557  call void @llvm.dbg.declare(metadata ptr %z, metadata !26, metadata !DIExpression()), !dbg !2758  store i32 2, ptr %z, align 4, !dbg !2759  %var = getelementptr inbounds %struct.A, ptr %a, i32 0, i32 1, !dbg !2860  %0 = load i32, ptr %var, align 4, !dbg !2861  %cmp = icmp sgt i32 %0, 2, !dbg !2862  br i1 %cmp, label %if.then, label %if.end, !dbg !2863 64if.then:                                          ; preds = %entry65  %1 = load i32, ptr %z, align 4, !dbg !3066  %inc = add nsw i32 %1, 1, !dbg !3067  store i32 %inc, ptr %z, align 4, !dbg !3068  br label %if.end, !dbg !3069 70if.end:                                           ; preds = %if.then, %entry71  %call = call signext i8 @_ZN1A3fooEv(ptr %a), !dbg !3172  %conv = sext i8 %call to i32, !dbg !3173  %cmp1 = icmp eq i32 %conv, 97, !dbg !3174  br i1 %cmp1, label %if.then2, label %if.end4, !dbg !3175 76if.then2:                                         ; preds = %if.end77  %2 = load i32, ptr %z, align 4, !dbg !3378  %inc3 = add nsw i32 %2, 1, !dbg !3379  store i32 %inc3, ptr %z, align 4, !dbg !3380  br label %if.end4, !dbg !3381 82if.end4:                                          ; preds = %if.then2, %if.end83  ret void, !dbg !3484}85 86; CHECK-DAG: .file [[CU1]] "/llvm_cmake_gcc{{/|\\\\}}debug-loc-offset1.cc"87; CHECK-DAG: .file [[CU2]] "/llvm_cmake_gcc{{/|\\\\}}debug-loc-offset2.cc"88 89declare signext i8 @_ZN1A3fooEv(ptr) #290 91attributes #0 = { nounwind "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "use-soft-float"="false" }92attributes #1 = { nounwind readnone }93attributes #2 = { "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "use-soft-float"="false" }94 95!llvm.dbg.cu = !{!0, !9}96!llvm.module.flags = !{!18, !19}97!llvm.ident = !{!20, !20}98 99!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, producer: "clang version 3.5.0 (210479)", isOptimized: false, emissionKind: FullDebug, file: !1, enums: !2, retainedTypes: !2, globals: !2, imports: !2, nameTableKind: None)100!1 = !DIFile(filename: "debug-loc-offset1.cc", directory: "/llvm_cmake_gcc")101!2 = !{}102!4 = distinct !DISubprogram(name: "bar", linkageName: "_Z3bari", line: 1, isLocal: false, isDefinition: true, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, unit: !0, scopeLine: 1, file: !1, scope: !5, type: !6, retainedNodes: !35)103!5 = !DIFile(filename: "debug-loc-offset1.cc", directory: "/llvm_cmake_gcc")104!6 = !DISubroutineType(types: !7)105!7 = !{!8, !8}106!8 = !DIBasicType(tag: DW_TAG_base_type, name: "int", size: 32, align: 32, encoding: DW_ATE_signed)107!9 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, producer: "clang version 3.5.0 (210479)", isOptimized: false, emissionKind: FullDebug, file: !10, enums: !2, retainedTypes: !11, globals: !2, imports: !2, nameTableKind: None)108!10 = !DIFile(filename: "debug-loc-offset2.cc", directory: "/llvm_cmake_gcc")109!11 = !{!12}110!12 = !DICompositeType(tag: DW_TAG_structure_type, name: "A", line: 1, flags: DIFlagFwdDecl, file: !10, identifier: "_ZTS1A")111!14 = distinct !DISubprogram(name: "baz", linkageName: "_Z3baz1A", line: 6, isLocal: false, isDefinition: true, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, unit: !9, scopeLine: 6, file: !10, scope: !15, type: !16, retainedNodes: !36)112!15 = !DIFile(filename: "debug-loc-offset2.cc", directory: "/llvm_cmake_gcc")113!16 = !DISubroutineType(types: !17)114!17 = !{null, !12}115!18 = !{i32 2, !"Dwarf Version", i32 4}116!19 = !{i32 2, !"Debug Info Version", i32 3}117!20 = !{!"clang version 3.5.0 (210479)"}118!21 = !DILocalVariable(name: "b", line: 1, arg: 1, scope: !4, file: !5, type: !8)119!22 = !DILocation(line: 1, scope: !4)120!23 = !DILocation(line: 2, scope: !4)121!24 = !DILocalVariable(name: "a", line: 6, arg: 1, scope: !14, file: !15, type: !12)122!25 = !DILocation(line: 6, scope: !14)123!26 = !DILocalVariable(name: "z", line: 7, scope: !14, file: !15, type: !8)124!27 = !DILocation(line: 7, scope: !14)125!28 = !DILocation(line: 8, scope: !29)126!29 = distinct !DILexicalBlock(line: 8, column: 0, file: !10, scope: !14)127!30 = !DILocation(line: 9, scope: !29)128!31 = !DILocation(line: 10, scope: !32)129!32 = distinct !DILexicalBlock(line: 10, column: 0, file: !10, scope: !14)130!33 = !DILocation(line: 11, scope: !32)131!34 = !DILocation(line: 12, scope: !14)132!35 = !{!21}133!36 = !{!24, !26}134 135; CHECK: 	.section	.debug_loc136; CHECK-NEXT: 	{137; CHECK-NEXT: $L__debug_loc0:138; CHECK-NEXT: .b64 $L__func_begin0139; CHECK-NEXT: .b64 $L__tmp0140; CHECK-NEXT: .b8 2                                   // Loc expr size141; CHECK-NEXT: .b8 0142; CHECK-NEXT: .b8 17                                  // DW_OP_consts143; CHECK-NEXT: .b8 0                                   // 0144; CHECK-NEXT: .b64 $L__tmp0145; CHECK-NEXT: .b64 $L__func_end0146; CHECK-NEXT: .b8 2                                   // Loc expr size147; CHECK-NEXT: .b8 0148; CHECK-NEXT: .b8 17                                  // DW_OP_consts149; CHECK-NEXT: .b8 1                                   // 1150; CHECK-NEXT: .b64 0151; CHECK-NEXT: .b64 0152; CHECK-NEXT: 	}153; CHECK-NEXT: 	.section	.debug_abbrev154; CHECK-NEXT: 	{155; CHECK-NEXT: .b8 1                                   // Abbreviation Code156; CHECK-NEXT: .b8 17                                  // DW_TAG_compile_unit157; CHECK-NEXT: .b8 1                                   // DW_CHILDREN_yes158; CHECK-NEXT: .b8 37                                  // DW_AT_producer159; CHECK-NEXT: .b8 8                                   // DW_FORM_string160; CHECK-NEXT: .b8 19                                  // DW_AT_language161; CHECK-NEXT: .b8 5                                   // DW_FORM_data2162; CHECK-NEXT: .b8 3                                   // DW_AT_name163; CHECK-NEXT: .b8 8                                   // DW_FORM_string164; CHECK-NEXT: .b8 16                                  // DW_AT_stmt_list165; CHECK-NEXT: .b8 6                                   // DW_FORM_data4166; CHECK-NEXT: .b8 27                                  // DW_AT_comp_dir167; CHECK-NEXT: .b8 8                                   // DW_FORM_string168; CHECK-NEXT: .b8 0                                   // EOM(1)169; CHECK-NEXT: .b8 0                                   // EOM(2)170; CHECK-NEXT: .b8 2                                   // Abbreviation Code171; CHECK-NEXT: .b8 19                                  // DW_TAG_structure_type172; CHECK-NEXT: .b8 0                                   // DW_CHILDREN_no173; CHECK-NEXT: .b8 3                                   // DW_AT_name174; CHECK-NEXT: .b8 8                                   // DW_FORM_string175; CHECK-NEXT: .b8 60                                  // DW_AT_declaration176; CHECK-NEXT: .b8 12                                  // DW_FORM_flag177; CHECK-NEXT: .b8 0                                   // EOM(1)178; CHECK-NEXT: .b8 0                                   // EOM(2)179; CHECK-NEXT: .b8 3                                   // Abbreviation Code180; CHECK-NEXT: .b8 46                                  // DW_TAG_subprogram181; CHECK-NEXT: .b8 1                                   // DW_CHILDREN_yes182; CHECK-NEXT: .b8 17                                  // DW_AT_low_pc183; CHECK-NEXT: .b8 1                                   // DW_FORM_addr184; CHECK-NEXT: .b8 18                                  // DW_AT_high_pc185; CHECK-NEXT: .b8 1                                   // DW_FORM_addr186; CHECK-NEXT: .b8 64                                  // DW_AT_frame_base187; CHECK-NEXT: .b8 10                                  // DW_FORM_block1188; CHECK-NEXT: .b8 135                                 // DW_AT_MIPS_linkage_name189; CHECK-NEXT: .b8 64190; CHECK-NEXT: .b8 8                                   // DW_FORM_string191; CHECK-NEXT: .b8 3                                   // DW_AT_name192; CHECK-NEXT: .b8 8                                   // DW_FORM_string193; CHECK-NEXT: .b8 58                                  // DW_AT_decl_file194; CHECK-NEXT: .b8 11                                  // DW_FORM_data1195; CHECK-NEXT: .b8 59                                  // DW_AT_decl_line196; CHECK-NEXT: .b8 11                                  // DW_FORM_data1197; CHECK-NEXT: .b8 63                                  // DW_AT_external198; CHECK-NEXT: .b8 12                                  // DW_FORM_flag199; CHECK-NEXT: .b8 0                                   // EOM(1)200; CHECK-NEXT: .b8 0                                   // EOM(2)201; CHECK-NEXT: .b8 4                                   // Abbreviation Code202; CHECK-NEXT: .b8 5                                   // DW_TAG_formal_parameter203; CHECK-NEXT: .b8 0                                   // DW_CHILDREN_no204; CHECK-NEXT: .b8 3                                   // DW_AT_name205; CHECK-NEXT: .b8 8                                   // DW_FORM_string206; CHECK-NEXT: .b8 58                                  // DW_AT_decl_file207; CHECK-NEXT: .b8 11                                  // DW_FORM_data1208; CHECK-NEXT: .b8 59                                  // DW_AT_decl_line209; CHECK-NEXT: .b8 11                                  // DW_FORM_data1210; CHECK-NEXT: .b8 73                                  // DW_AT_type211; CHECK-NEXT: .b8 19                                  // DW_FORM_ref4212; CHECK-NEXT: .b8 0                                   // EOM(1)213; CHECK-NEXT: .b8 0                                   // EOM(2)214; CHECK-NEXT: .b8 5                                   // Abbreviation Code215; CHECK-NEXT: .b8 52                                  // DW_TAG_variable216; CHECK-NEXT: .b8 0                                   // DW_CHILDREN_no217; CHECK-NEXT: .b8 3                                   // DW_AT_name218; CHECK-NEXT: .b8 8                                   // DW_FORM_string219; CHECK-NEXT: .b8 58                                  // DW_AT_decl_file220; CHECK-NEXT: .b8 11                                  // DW_FORM_data1221; CHECK-NEXT: .b8 59                                  // DW_AT_decl_line222; CHECK-NEXT: .b8 11                                  // DW_FORM_data1223; CHECK-NEXT: .b8 73                                  // DW_AT_type224; CHECK-NEXT: .b8 16                                  // DW_FORM_ref_addr225; CHECK-NEXT: .b8 0                                   // EOM(1)226; CHECK-NEXT: .b8 0                                   // EOM(2)227; CHECK-NEXT: .b8 6                                   // Abbreviation Code228; CHECK-NEXT: .b8 46                                  // DW_TAG_subprogram229; CHECK-NEXT: .b8 1                                   // DW_CHILDREN_yes230; CHECK-NEXT: .b8 17                                  // DW_AT_low_pc231; CHECK-NEXT: .b8 1                                   // DW_FORM_addr232; CHECK-NEXT: .b8 18                                  // DW_AT_high_pc233; CHECK-NEXT: .b8 1                                   // DW_FORM_addr234; CHECK-NEXT: .b8 64                                  // DW_AT_frame_base235; CHECK-NEXT: .b8 10                                  // DW_FORM_block1236; CHECK-NEXT: .b8 135                                 // DW_AT_MIPS_linkage_name237; CHECK-NEXT: .b8 64238; CHECK-NEXT: .b8 8                                   // DW_FORM_string239; CHECK-NEXT: .b8 3                                   // DW_AT_name240; CHECK-NEXT: .b8 8                                   // DW_FORM_string241; CHECK-NEXT: .b8 58                                  // DW_AT_decl_file242; CHECK-NEXT: .b8 11                                  // DW_FORM_data1243; CHECK-NEXT: .b8 59                                  // DW_AT_decl_line244; CHECK-NEXT: .b8 11                                  // DW_FORM_data1245; CHECK-NEXT: .b8 73                                  // DW_AT_type246; CHECK-NEXT: .b8 19                                  // DW_FORM_ref4247; CHECK-NEXT: .b8 63                                  // DW_AT_external248; CHECK-NEXT: .b8 12                                  // DW_FORM_flag249; CHECK-NEXT: .b8 0                                   // EOM(1)250; CHECK-NEXT: .b8 0                                   // EOM(2)251; CHECK-NEXT: .b8 7                                   // Abbreviation Code252; CHECK-NEXT: .b8 5                                   // DW_TAG_formal_parameter253; CHECK-NEXT: .b8 0                                   // DW_CHILDREN_no254; CHECK-NEXT: .b8 2                                   // DW_AT_location255; CHECK-NEXT: .b8 6                                   // DW_FORM_data4256; CHECK-NEXT: .b8 3                                   // DW_AT_name257; CHECK-NEXT: .b8 8                                   // DW_FORM_string258; CHECK-NEXT: .b8 58                                  // DW_AT_decl_file259; CHECK-NEXT: .b8 11                                  // DW_FORM_data1260; CHECK-NEXT: .b8 59                                  // DW_AT_decl_line261; CHECK-NEXT: .b8 11                                  // DW_FORM_data1262; CHECK-NEXT: .b8 73                                  // DW_AT_type263; CHECK-NEXT: .b8 19                                  // DW_FORM_ref4264; CHECK-NEXT: .b8 0                                   // EOM(1)265; CHECK-NEXT: .b8 0                                   // EOM(2)266; CHECK-NEXT: .b8 8                                   // Abbreviation Code267; CHECK-NEXT: .b8 36                                  // DW_TAG_base_type268; CHECK-NEXT: .b8 0                                   // DW_CHILDREN_no269; CHECK-NEXT: .b8 3                                   // DW_AT_name270; CHECK-NEXT: .b8 8                                   // DW_FORM_string271; CHECK-NEXT: .b8 62                                  // DW_AT_encoding272; CHECK-NEXT: .b8 11                                  // DW_FORM_data1273; CHECK-NEXT: .b8 11                                  // DW_AT_byte_size274; CHECK-NEXT: .b8 11                                  // DW_FORM_data1275; CHECK-NEXT: .b8 0                                   // EOM(1)276; CHECK-NEXT: .b8 0                                   // EOM(2)277; CHECK-NEXT: .b8 0                                   // EOM(3)278; CHECK-NEXT: 	}279; CHECK-NEXT: 	.section	.debug_info280; CHECK-NEXT: 	{281; CHECK-NEXT: .b32 143                                // Length of Unit282; CHECK-NEXT: .b8 2                                   // DWARF version number283; CHECK-NEXT: .b8 0284; CHECK-NEXT: .b32 .debug_abbrev                      // Offset Into Abbrev. Section285; CHECK-NEXT: .b8 8                                   // Address Size (in bytes)286; CHECK-NEXT: .b8 1                                   // Abbrev [1] 0xb:0x88 DW_TAG_compile_unit287; CHECK-NEXT: .b8 99                                  // DW_AT_producer288; CHECK-NEXT: .b8 108289; CHECK-NEXT: .b8 97290; CHECK-NEXT: .b8 110291; CHECK-NEXT: .b8 103292; CHECK-NEXT: .b8 32293; CHECK-NEXT: .b8 118294; CHECK-NEXT: .b8 101295; CHECK-NEXT: .b8 114296; CHECK-NEXT: .b8 115297; CHECK-NEXT: .b8 105298; CHECK-NEXT: .b8 111299; CHECK-NEXT: .b8 110300; CHECK-NEXT: .b8 32301; CHECK-NEXT: .b8 51302; CHECK-NEXT: .b8 46303; CHECK-NEXT: .b8 53304; CHECK-NEXT: .b8 46305; CHECK-NEXT: .b8 48306; CHECK-NEXT: .b8 32307; CHECK-NEXT: .b8 40308; CHECK-NEXT: .b8 50309; CHECK-NEXT: .b8 49310; CHECK-NEXT: .b8 48311; CHECK-NEXT: .b8 52312; CHECK-NEXT: .b8 55313; CHECK-NEXT: .b8 57314; CHECK-NEXT: .b8 41315; CHECK-NEXT: .b8 0316; CHECK-NEXT: .b8 4                                   // DW_AT_language317; CHECK-NEXT: .b8 0318; CHECK-NEXT: .b8 100                                 // DW_AT_name319; CHECK-NEXT: .b8 101320; CHECK-NEXT: .b8 98321; CHECK-NEXT: .b8 117322; CHECK-NEXT: .b8 103323; CHECK-NEXT: .b8 45324; CHECK-NEXT: .b8 108325; CHECK-NEXT: .b8 111326; CHECK-NEXT: .b8 99327; CHECK-NEXT: .b8 45328; CHECK-NEXT: .b8 111329; CHECK-NEXT: .b8 102330; CHECK-NEXT: .b8 102331; CHECK-NEXT: .b8 115332; CHECK-NEXT: .b8 101333; CHECK-NEXT: .b8 116334; CHECK-NEXT: .b8 50335; CHECK-NEXT: .b8 46336; CHECK-NEXT: .b8 99337; CHECK-NEXT: .b8 99338; CHECK-NEXT: .b8 0339; CHECK-NEXT: .b32 .debug_line                        // DW_AT_stmt_list340; CHECK-NEXT: .b8 47                                  // DW_AT_comp_dir341; CHECK-NEXT: .b8 108342; CHECK-NEXT: .b8 108343; CHECK-NEXT: .b8 118344; CHECK-NEXT: .b8 109345; CHECK-NEXT: .b8 95346; CHECK-NEXT: .b8 99347; CHECK-NEXT: .b8 109348; CHECK-NEXT: .b8 97349; CHECK-NEXT: .b8 107350; CHECK-NEXT: .b8 101351; CHECK-NEXT: .b8 95352; CHECK-NEXT: .b8 103353; CHECK-NEXT: .b8 99354; CHECK-NEXT: .b8 99355; CHECK-NEXT: .b8 0356; CHECK-NEXT: .b8 2                                   // Abbrev [2] 0x54:0x4 DW_TAG_structure_type357; CHECK-NEXT: .b8 65                                  // DW_AT_name358; CHECK-NEXT: .b8 0359; CHECK-NEXT: .b8 1                                   // DW_AT_declaration360; CHECK-NEXT: .b8 3                                   // Abbrev [3] 0x58:0x3a DW_TAG_subprogram361; CHECK-NEXT: .b64 $L__func_begin1                    // DW_AT_low_pc362; CHECK-NEXT: .b64 $L__func_end1                      // DW_AT_high_pc363; CHECK-NEXT: .b8 1                                   // DW_AT_frame_base364; CHECK-NEXT: .b8 156365; CHECK-NEXT: .b8 95                                  // DW_AT_MIPS_linkage_name366; CHECK-NEXT: .b8 90367; CHECK-NEXT: .b8 51368; CHECK-NEXT: .b8 98369; CHECK-NEXT: .b8 97370; CHECK-NEXT: .b8 122371; CHECK-NEXT: .b8 49372; CHECK-NEXT: .b8 65373; CHECK-NEXT: .b8 0374; CHECK-NEXT: .b8 98                                  // DW_AT_name375; CHECK-NEXT: .b8 97376; CHECK-NEXT: .b8 122377; CHECK-NEXT: .b8 0378; CHECK-NEXT: .b8 2                                   // DW_AT_decl_file379; CHECK-NEXT: .b8 6                                   // DW_AT_decl_line380; CHECK-NEXT: .b8 1                                   // DW_AT_external381; CHECK-NEXT: .b8 4                                   // Abbrev [4] 0x7b:0x9 DW_TAG_formal_parameter382; CHECK-NEXT: .b8 97                                  // DW_AT_name383; CHECK-NEXT: .b8 0384; CHECK-NEXT: .b8 2                                   // DW_AT_decl_file385; CHECK-NEXT: .b8 6                                   // DW_AT_decl_line386; CHECK-NEXT: .b32 84                                 // DW_AT_type387; CHECK-NEXT: .b8 5                                   // Abbrev [5] 0x84:0xd DW_TAG_variable388; CHECK-NEXT: .b8 122                                 // DW_AT_name389; CHECK-NEXT: .b8 0390; CHECK-NEXT: .b8 2                                   // DW_AT_decl_file391; CHECK-NEXT: .b8 7                                   // DW_AT_decl_line392; CHECK-NEXT: .b64 .debug_info+283                    // DW_AT_type393; CHECK-NEXT: .b8 0                                   // End Of Children Mark394; CHECK-NEXT: .b8 0                                   // End Of Children Mark395; CHECK-NEXT: .b32 140                                // Length of Unit396; CHECK-NEXT: .b8 2                                   // DWARF version number397; CHECK-NEXT: .b8 0398; CHECK-NEXT: .b32 .debug_abbrev                      // Offset Into Abbrev. Section399; CHECK-NEXT: .b8 8                                   // Address Size (in bytes)400; CHECK-NEXT: .b8 1                                   // Abbrev [1] 0xb:0x85 DW_TAG_compile_unit401; CHECK-NEXT: .b8 99                                  // DW_AT_producer402; CHECK-NEXT: .b8 108403; CHECK-NEXT: .b8 97404; CHECK-NEXT: .b8 110405; CHECK-NEXT: .b8 103406; CHECK-NEXT: .b8 32407; CHECK-NEXT: .b8 118408; CHECK-NEXT: .b8 101409; CHECK-NEXT: .b8 114410; CHECK-NEXT: .b8 115411; CHECK-NEXT: .b8 105412; CHECK-NEXT: .b8 111413; CHECK-NEXT: .b8 110414; CHECK-NEXT: .b8 32415; CHECK-NEXT: .b8 51416; CHECK-NEXT: .b8 46417; CHECK-NEXT: .b8 53418; CHECK-NEXT: .b8 46419; CHECK-NEXT: .b8 48420; CHECK-NEXT: .b8 32421; CHECK-NEXT: .b8 40422; CHECK-NEXT: .b8 50423; CHECK-NEXT: .b8 49424; CHECK-NEXT: .b8 48425; CHECK-NEXT: .b8 52426; CHECK-NEXT: .b8 55427; CHECK-NEXT: .b8 57428; CHECK-NEXT: .b8 41429; CHECK-NEXT: .b8 0430; CHECK-NEXT: .b8 4                                   // DW_AT_language431; CHECK-NEXT: .b8 0432; CHECK-NEXT: .b8 100                                 // DW_AT_name433; CHECK-NEXT: .b8 101434; CHECK-NEXT: .b8 98435; CHECK-NEXT: .b8 117436; CHECK-NEXT: .b8 103437; CHECK-NEXT: .b8 45438; CHECK-NEXT: .b8 108439; CHECK-NEXT: .b8 111440; CHECK-NEXT: .b8 99441; CHECK-NEXT: .b8 45442; CHECK-NEXT: .b8 111443; CHECK-NEXT: .b8 102444; CHECK-NEXT: .b8 102445; CHECK-NEXT: .b8 115446; CHECK-NEXT: .b8 101447; CHECK-NEXT: .b8 116448; CHECK-NEXT: .b8 49449; CHECK-NEXT: .b8 46450; CHECK-NEXT: .b8 99451; CHECK-NEXT: .b8 99452; CHECK-NEXT: .b8 0453; CHECK-NEXT: .b32 .debug_line                        // DW_AT_stmt_list454; CHECK-NEXT: .b8 47                                  // DW_AT_comp_dir455; CHECK-NEXT: .b8 108456; CHECK-NEXT: .b8 108457; CHECK-NEXT: .b8 118458; CHECK-NEXT: .b8 109459; CHECK-NEXT: .b8 95460; CHECK-NEXT: .b8 99461; CHECK-NEXT: .b8 109462; CHECK-NEXT: .b8 97463; CHECK-NEXT: .b8 107464; CHECK-NEXT: .b8 101465; CHECK-NEXT: .b8 95466; CHECK-NEXT: .b8 103467; CHECK-NEXT: .b8 99468; CHECK-NEXT: .b8 99469; CHECK-NEXT: .b8 0470; CHECK-NEXT: .b8 6                                   // Abbrev [6] 0x54:0x34 DW_TAG_subprogram471; CHECK-NEXT: .b64 $L__func_begin0                    // DW_AT_low_pc472; CHECK-NEXT: .b64 $L__func_end0                      // DW_AT_high_pc473; CHECK-NEXT: .b8 1                                   // DW_AT_frame_base474; CHECK-NEXT: .b8 156475; CHECK-NEXT: .b8 95                                  // DW_AT_MIPS_linkage_name476; CHECK-NEXT: .b8 90477; CHECK-NEXT: .b8 51478; CHECK-NEXT: .b8 98479; CHECK-NEXT: .b8 97480; CHECK-NEXT: .b8 114481; CHECK-NEXT: .b8 105482; CHECK-NEXT: .b8 0483; CHECK-NEXT: .b8 98                                  // DW_AT_name484; CHECK-NEXT: .b8 97485; CHECK-NEXT: .b8 114486; CHECK-NEXT: .b8 0487; CHECK-NEXT: .b8 1                                   // DW_AT_decl_file488; CHECK-NEXT: .b8 1                                   // DW_AT_decl_line489; CHECK-NEXT: .b32 136                                // DW_AT_type490; CHECK-NEXT: .b8 1                                   // DW_AT_external491; CHECK-NEXT: .b8 7                                   // Abbrev [7] 0x7a:0xd DW_TAG_formal_parameter492; CHECK-NEXT: .b32 $L__debug_loc0                     // DW_AT_location493; CHECK-NEXT: .b8 98                                  // DW_AT_name494; CHECK-NEXT: .b8 0495; CHECK-NEXT: .b8 1                                   // DW_AT_decl_file496; CHECK-NEXT: .b8 1                                   // DW_AT_decl_line497; CHECK-NEXT: .b32 136                                // DW_AT_type498; CHECK-NEXT: .b8 0                                   // End Of Children Mark499; CHECK-NEXT: .b8 8                                   // Abbrev [8] 0x88:0x7 DW_TAG_base_type500; CHECK-NEXT: .b8 105                                 // DW_AT_name501; CHECK-NEXT: .b8 110502; CHECK-NEXT: .b8 116503; CHECK-NEXT: .b8 0504; CHECK-NEXT: .b8 5                                   // DW_AT_encoding505; CHECK-NEXT: .b8 4                                   // DW_AT_byte_size506; CHECK-NEXT: .b8 0                                   // End Of Children Mark507; CHECK-NEXT: 	}508; CHECK-NEXT: 	.section	.debug_macinfo	{	}509; CHECK-NOT: debug_510