55 lines · plain
1; From source:2; int f(int a, int b) {3; return a //4; && //5; b;6; }7 8; Check that the comparison of 'a' is attributed to line 2, not 3.9 10; CHECK: .loc{{ +}}1{{ +}}211; CHECK-NOT: .loc{{ }}12; CHECK: cmp13 14; Function Attrs: nounwind uwtable15define i32 @_Z1fii(i32 %a, i32 %b) #0 !dbg !4 {16entry:17 %a.addr = alloca i32, align 418 %b.addr = alloca i32, align 419 store i32 %a, ptr %a.addr, align 420 store i32 %b, ptr %b.addr, align 421 %0 = load i32, ptr %a.addr, align 4, !dbg !1022 %tobool = icmp ne i32 %0, 0, !dbg !1023 br i1 %tobool, label %land.rhs, label %land.end, !dbg !1124 25land.rhs: ; preds = %entry26 %1 = load i32, ptr %b.addr, align 4, !dbg !1227 %tobool1 = icmp ne i32 %1, 0, !dbg !1228 br label %land.end29 30land.end: ; preds = %land.rhs, %entry31 %2 = phi i1 [ false, %entry ], [ %tobool1, %land.rhs ]32 %conv = zext i1 %2 to i32, !dbg !1033 ret i32 %conv, !dbg !1334}35 36attributes #0 = { nounwind uwtable "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" }37 38!llvm.dbg.cu = !{!0}39!llvm.module.flags = !{!7, !8}40!llvm.ident = !{!9}41 42!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, producer: "clang version 3.7.0 (trunk 227472) (llvm/trunk 227476)", isOptimized: false, emissionKind: LineTablesOnly, file: !1, enums: !2, retainedTypes: !2, globals: !2, imports: !2)43!1 = !DIFile(filename: "line.cpp", directory: "/tmp/dbginfo")44!2 = !{}45!4 = distinct !DISubprogram(name: "f", line: 1, isLocal: false, isDefinition: true, flags: DIFlagPrototyped, isOptimized: false, unit: !0, scopeLine: 1, file: !1, scope: !5, type: !6, retainedNodes: !2)46!5 = !DIFile(filename: "line.cpp", directory: "/tmp/dbginfo")47!6 = !DISubroutineType(types: !2)48!7 = !{i32 2, !"Dwarf Version", i32 4}49!8 = !{i32 2, !"Debug Info Version", i32 3}50!9 = !{!"clang version 3.7.0 (trunk 227472) (llvm/trunk 227476)"}51!10 = !DILocation(line: 2, scope: !4)52!11 = !DILocation(line: 3, scope: !4)53!12 = !DILocation(line: 4, scope: !4)54!13 = !DILocation(line: 2, scope: !4)55