; RUN: opt < %s -adce -simplifycfg -S | not grep then:

define void @dead_test8(i32* %data.1, i32 %idx.1) {
entry:
        %tmp.1 = load i32* %data.1              ; <i32> [#uses=2]
        %tmp.41 = icmp sgt i32 %tmp.1, 0                ; <i1> [#uses=1]
        br i1 %tmp.41, label %no_exit.preheader, label %return

no_exit.preheader:              ; preds = %entry
        %tmp.11 = getelementptr i32* %data.1, i64 1             ; <i32*> [#uses=1]
        %tmp.22-idxcast = sext i32 %idx.1 to i64                ; <i64> [#uses=1]
        %tmp.28 = getelementptr i32* %data.1, i64 %tmp.22-idxcast               ; <i32*> [#uses=1]
        br label %no_exit

no_exit:                ; preds = %endif, %no_exit.preheader
        %k.1 = phi i32 [ %k.0, %endif ], [ 0, %no_exit.preheader ]              ; <i32> [#uses=3]
        %i.0 = phi i32 [ %inc.1, %endif ], [ 0, %no_exit.preheader ]            ; <i32> [#uses=1]
        %tmp.12 = load i32* %tmp.11             ; <i32> [#uses=1]
        %tmp.14 = sub i32 0, %tmp.12            ; <i32> [#uses=1]
        %tmp.161 = icmp ne i32 %k.1, %tmp.14            ; <i1> [#uses=1]
        br i1 %tmp.161, label %then, label %else

then:           ; preds = %no_exit
        %inc.0 = add i32 %k.1, 1                ; <i32> [#uses=1]
        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 ], [ %inc.0, %then ]               ; <i32> [#uses=1]
        store i32 2, i32* %tmp.28
        %inc.1 = add i32 %i.0, 1                ; <i32> [#uses=2]
        %tmp.4 = icmp slt i32 %inc.1, %tmp.1            ; <i1> [#uses=1]
        br i1 %tmp.4, label %no_exit, label %return

return:         ; preds = %endif, %entry
        ret void
}

