Merging r258616:
[oota-llvm.git] / test / Transforms / GlobalOpt / 2008-01-03-Crash.ll
1 ; RUN: opt < %s -globalopt | llvm-dis
2 ; PR1896
3
4 @indirect1 = internal global void (i32)* null           ; <void (i32)**> [#uses=2]
5
6 declare void @indirectmarked(i32)
7
8 define i32 @main() {
9 entry:
10         br i1 false, label %cond_next20.i, label %cond_true.i9
11
12 cond_true.i9:           ; preds = %entry
13         ret i32 0
14
15 cond_next20.i:          ; preds = %entry
16         store void (i32)* @indirectmarked, void (i32)** @indirect1, align 4
17         br i1 false, label %cond_next21.i.i23.i, label %stack_restore
18
19 stack_restore:          ; preds = %cond_next20.i
20         ret i32 0
21
22 cond_next21.i.i23.i:            ; preds = %cond_next20.i
23         %tmp6.i4.i = load i32, i32* bitcast (void (i32)** @indirect1 to i32*), align 4          ; <i32> [#uses=0]
24         ret i32 0
25 }
26