2009-09-11 20:01:28 +02:00
|
|
|
; RUN: opt < %s -globalopt -disable-output
|
2006-11-01 19:02:53 +01:00
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
%struct._list = type { i32*, %struct._list* }
|
|
|
|
%struct._play = type { i32, i32*, %struct._list*, %struct._play* }
|
|
|
|
@nrow = internal global i32 0 ; <i32*> [#uses=2]
|
2006-11-01 19:02:53 +01:00
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
define void @make_play() {
|
2006-11-01 19:02:53 +01:00
|
|
|
entry:
|
2008-03-01 10:15:35 +01:00
|
|
|
br label %cond_true16.i
|
2006-11-01 19:02:53 +01:00
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
cond_true16.i: ; preds = %cond_true16.i, %entry
|
|
|
|
%low.0.in.i.0 = phi i32* [ @nrow, %entry ], [ null, %cond_true16.i ] ; <i32*> [#uses=1]
|
|
|
|
%low.0.i = load i32* %low.0.in.i.0 ; <i32> [#uses=0]
|
|
|
|
br label %cond_true16.i
|
2006-11-01 19:02:53 +01:00
|
|
|
}
|
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
define void @make_wanted() {
|
2006-11-01 19:02:53 +01:00
|
|
|
entry:
|
2008-03-01 10:15:35 +01:00
|
|
|
unreachable
|
2006-11-01 19:02:53 +01:00
|
|
|
}
|
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
define void @get_good_move() {
|
2006-11-01 19:02:53 +01:00
|
|
|
entry:
|
2008-03-01 10:15:35 +01:00
|
|
|
ret void
|
2006-11-01 19:02:53 +01:00
|
|
|
}
|
|
|
|
|
2008-03-01 10:15:35 +01:00
|
|
|
define void @main() {
|
2006-11-01 19:02:53 +01:00
|
|
|
entry:
|
2008-03-01 10:15:35 +01:00
|
|
|
store i32 8, i32* @nrow
|
|
|
|
tail call void @make_play( )
|
|
|
|
ret void
|
2006-11-01 19:02:53 +01:00
|
|
|
}
|
2008-03-01 10:15:35 +01:00
|
|
|
|