Allow readonly functions to unwind exceptions. Teach
[oota-llvm.git] / test / Transforms / ADCE / 2003-06-11-InvalidCFG.ll
1 ; RUN: llvm-as < %s | opt -adce -disable-output
2
3 @G = external global i32*               ; <i32**> [#uses=1]
4
5 declare void @Fn(i32*)
6
7 define i32 @main(i32 %argc.1, i8** %argv.1) {
8 entry:
9         br label %endif.42
10
11 endif.42:               ; preds = %shortcirc_done.12, %then.66, %endif.42, %entry
12         br i1 false, label %endif.65, label %endif.42
13
14 then.66:                ; preds = %shortcirc_done.12
15         call void @Fn( i32* %tmp.2846 )
16         br label %endif.42
17
18 endif.65:               ; preds = %endif.42
19         %tmp.2846 = load i32** @G               ; <i32*> [#uses=1]
20         br i1 false, label %shortcirc_next.12, label %shortcirc_done.12
21
22 shortcirc_next.12:              ; preds = %endif.65
23         br label %shortcirc_done.12
24
25 shortcirc_done.12:              ; preds = %shortcirc_next.12, %endif.65
26         br i1 false, label %then.66, label %endif.42
27 }
28