Avoid depending on LCSSA implicitly pulling in LoopSimplify.
[oota-llvm.git] / test / DebugInfo / 2010-01-19-DbgScope.ll
1 ; RUN: llc -O0 < %s -o /dev/null
2 ; Ignore unreachable scopes.
3 declare void @foo(i32) noreturn
4
5 define i32 @bar() nounwind ssp {
6 entry:
7   br i1 undef, label %bb, label %bb11, !dbg !0
8
9 bb:                                               ; preds = %entry
10   call void @foo(i32 0) noreturn nounwind, !dbg !7
11   unreachable, !dbg !7
12
13 bb11:                                             ; preds = %entry
14   ret i32 1, !dbg !11
15 }
16
17 !0 = metadata !{i32 8647, i32 0, metadata !1, null}
18 !1 = metadata !{i32 458763, metadata !2}          ; [ DW_TAG_lexical_block ]
19 !2 = metadata !{i32 458798, i32 0, metadata !3, metadata !"bar", metadata !"bar", metadata !"bar", metadata !3, i32 8639, metadata !4, i1 true, i1 true, i32 0, i32 0, null} ; [ DW_TAG_subprogram ]
20 !3 = metadata !{i32 458769, i32 0, i32 1, metadata !"c-parser.c", metadata !"llvmgcc", metadata !"LLVM build 00", i1 true, i1 false, metadata !"", i32 0} ; [ DW_TAG_compile_unit ]
21 !4 = metadata !{i32 458773, metadata !3, metadata !"", metadata !3, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !5, i32 0} ; [ DW_TAG_subroutine_type ]
22 !5 = metadata !{metadata !6}
23 !6 = metadata !{i32 458788, metadata !3, metadata !"char", metadata !3, i32 0, i64 8, i64 8, i64 0, i32 0, i32 6} ; [ DW_TAG_base_type ]
24 !7 = metadata !{i32 8648, i32 0, metadata !8, null}
25 !8 = metadata !{i32 458763, metadata !9}          ; [ DW_TAG_lexical_block ]
26 !9 = metadata !{i32 458763, metadata !10}         ; [ DW_TAG_lexical_block ]
27 !10 = metadata !{i32 458798, i32 0, metadata !3, metadata !"bar2", metadata !"bar2", metadata !"bar2", metadata !3, i32 8639, metadata !4, i1 true, i1 true, i32 0, i32 0, null} ; [ DW_TAG_subprogram ]
28 !11 = metadata !{i32 8652, i32 0, metadata !1, null}