; RUN: opt < %s -lowerinvoke -disable-output -enable-correct-eh-support


define i32 @foo() {
	invoke i32 @foo( )
			to label %Ok unwind label %Crap		; <i32>:1 [#uses=0]
Ok:		; preds = %0
	invoke i32 @foo( )
			to label %Ok2 unwind label %Crap		; <i32>:2 [#uses=0]
Ok2:		; preds = %Ok
	ret i32 2
Crap:		; preds = %Ok, %0
	ret i32 1
}

define i32 @bar(i32 %blah) {
	br label %doit
doit:		; preds = %0
        ;; Value live across an unwind edge.
	%B2 = add i32 %blah, 1		; <i32> [#uses=1]
	invoke i32 @foo( )
			to label %Ok unwind label %Crap		; <i32>:1 [#uses=0]
Ok:		; preds = %doit
	invoke i32 @foo( )
			to label %Ok2 unwind label %Crap		; <i32>:2 [#uses=0]
Ok2:		; preds = %Ok
	ret i32 2
Crap:		; preds = %Ok, %doit
	ret i32 %B2
}
