2006-04-26-SetCCAnd.ll 927 Bytes
; RUN: llc < %s
; PR748
@G = external global i16		; <i16*> [#uses=1]

define void @OmNewObjHdr() {
entry:
	br i1 false, label %endif.4, label %then.0

then.0:		; preds = %entry
	ret void

endif.4:		; preds = %entry
	br i1 false, label %else.3, label %shortcirc_next.3

shortcirc_next.3:		; preds = %endif.4
	ret void

else.3:		; preds = %endif.4
	switch i32 0, label %endif.10 [
		 i32 5001, label %then.10
		 i32 -5008, label %then.10
	]

then.10:		; preds = %else.3, %else.3
	%tmp.112 = load i16, i16* null		; <i16> [#uses=2]
	%tmp.113 = load i16, i16* @G		; <i16> [#uses=2]
	%tmp.114 = icmp ugt i16 %tmp.112, %tmp.113		; <i1> [#uses=1]
	%tmp.120 = icmp ult i16 %tmp.112, %tmp.113		; <i1> [#uses=1]
	%bothcond = and i1 %tmp.114, %tmp.120		; <i1> [#uses=1]
	br i1 %bothcond, label %else.4, label %then.11

then.11:		; preds = %then.10
	ret void

else.4:		; preds = %then.10
	ret void

endif.10:		; preds = %else.3
	ret void
}