Compiler projects using llvm
; RUN: llc < %s
@G = external global i32		; <i32*> [#uses=1]

define void @encode_one_frame(i64 %tmp.2i) {
entry:
	%tmp.9 = icmp eq i32 0, 0		; <i1> [#uses=1]
	br i1 %tmp.9, label %endif.0, label %shortcirc_next.0

then.5.i:		; preds = %shortcirc_next.i
	%tmp.114.i = sdiv i64 %tmp.2i, 3		; <i64> [#uses=1]
	%tmp.111.i = call i64 @lseek( i32 0, i64 %tmp.114.i, i32 1 )		; <i64> [#uses=0]
	ret void

shortcirc_next.0:		; preds = %entry
	ret void

endif.0:		; preds = %entry
	%tmp.324.i = icmp eq i32 0, 0		; <i1> [#uses=2]
	%tmp.362.i = icmp slt i32 0, 0		; <i1> [#uses=1]
	br i1 %tmp.324.i, label %else.4.i, label %then.11.i37

then.11.i37:		; preds = %endif.0
	ret void

else.4.i:		; preds = %endif.0
	br i1 %tmp.362.i, label %else.5.i, label %then.12.i

then.12.i:		; preds = %else.4.i
	ret void

else.5.i:		; preds = %else.4.i
	br i1 %tmp.324.i, label %then.0.i40, label %then.17.i

then.17.i:		; preds = %else.5.i
	ret void

then.0.i40:		; preds = %else.5.i
	%tmp.8.i42 = icmp eq i32 0, 0		; <i1> [#uses=1]
	br i1 %tmp.8.i42, label %else.1.i56, label %then.1.i52

then.1.i52:		; preds = %then.0.i40
	ret void

else.1.i56:		; preds = %then.0.i40
	%tmp.28.i = load i32, i32* @G		; <i32> [#uses=1]
	%tmp.29.i = icmp eq i32 %tmp.28.i, 1		; <i1> [#uses=1]
	br i1 %tmp.29.i, label %shortcirc_next.i, label %shortcirc_done.i

shortcirc_next.i:		; preds = %else.1.i56
	%tmp.34.i = icmp eq i32 0, 3		; <i1> [#uses=1]
	br i1 %tmp.34.i, label %then.5.i, label %endif.5.i

shortcirc_done.i:		; preds = %else.1.i56
	ret void

endif.5.i:		; preds = %shortcirc_next.i
	ret void
}

declare i64 @lseek(i32, i64, i32)