; Mem2reg should not insert dead PHI nodes!  The naive algorithm inserts a PHI
;  node in L3, even though there is no load of %A in anything dominated by L3.

; RUN: opt < %s -mem2reg -S | not grep phi

define void @test(i32 %B, i1 %C) {
	%A = alloca i32		; <i32*> [#uses=4]
	store i32 %B, i32* %A
	br i1 %C, label %L1, label %L2
L1:		; preds = %0
	store i32 %B, i32* %A
	%D = load i32* %A		; <i32> [#uses=1]
	call void @test( i32 %D, i1 false )
	br label %L3
L2:		; preds = %0
	%E = load i32* %A		; <i32> [#uses=1]
	call void @test( i32 %E, i1 true )
	br label %L3
L3:		; preds = %L2, %L1
	ret void
}

