; THis testcase caused an assertion failure because a PHI node did not have 
; entries for it's postdominator.  But I think this can only happen when the 
; PHI node is dead, so we just avoid patching up dead PHI nodes.

; RUN: opt < %s -adce                    -S | FileCheck %s
; RUN: opt < %s -adce -adce-remove-loops -S | FileCheck %s

target datalayout = "e-p:32:32"

define void @dead_test8() {
entry:
        br label %loopentry

loopentry:              ; preds = %endif, %entry
        %k.1 = phi i32 [ %k.0, %endif ], [ 0, %entry ]          ; <i32> [#uses=1]
        br i1 false, label %no_exit, label %return

no_exit:                ; preds = %loopentry
; CHECK: br label %then
        br i1 false, label %then, label %else

then:           ; preds = %no_exit
        br label %endif

else:           ; preds = %no_exit
        %dec = add i32 %k.1, -1         ; <i32> [#uses=1]
        br label %endif

endif:          ; preds = %else, %then
        %k.0 = phi i32 [ %dec, %else ], [ 0, %then ]            ; <i32> [#uses=1]
        store i32 2, i32* null
        br label %loopentry

return:         ; preds = %loopentry
        ret void
}

