A loop latch phi node may have uses inside loop, not just in loop header.
[oota-llvm.git] / test / Transforms / ADCE / dead-phi-edge.ll
1 ; RUN: llvm-upgrade < %s | llvm-as | opt -adce | llvm-dis | not grep call
2
3 ; The call is not live just because the PHI uses the call retval!
4
5 int %test(int %X) {
6         br label %Done
7
8 DeadBlock:
9         %Y = call int %test(int 0)
10         br label %Done
11
12 Done:
13         %Z = phi int [%X, %0], [%Y, %DeadBlock]
14         ret int %Z
15 }