Compiler projects using llvm
; RUN: opt < %s -lcssa
; RUN: opt < %s -passes=lcssa

	%struct.SetJmpMapEntry = type { i8*, i32, %struct.SetJmpMapEntry* }

define void @__llvm_sjljeh_try_catching_longjmp_exception() {
entry:
	br label %loopentry
loopentry:		; preds = %endif, %entry
	%SJE.0 = phi %struct.SetJmpMapEntry* [ null, %entry ], [ %tmp.25, %endif ]	; <%struct.SetJmpMapEntry*> [#uses=1]
	br i1 false, label %no_exit, label %loopexit
no_exit:		; preds = %loopentry
	br i1 false, label %then, label %endif
then:		; preds = %no_exit
	%tmp.21 = getelementptr %struct.SetJmpMapEntry, %struct.SetJmpMapEntry* %SJE.0, i32 0, i32 1		; <i32*> [#uses=0]
	br label %return
endif:		; preds = %no_exit
	%tmp.25 = load %struct.SetJmpMapEntry*, %struct.SetJmpMapEntry** null		; <%struct.SetJmpMapEntry*> [#uses=1]
	br label %loopentry
loopexit:		; preds = %loopentry
	br label %return
return:		; preds = %loopexit, %then
	ret void
}