Fix edge cases in handling basic block split.
[llvm-complete.git] / test / CodeGen / PowerPC / 2006-10-13-Miscompile.ll
blob95b5312e4c24849af8df4f3e7ffd1e6957554919
1 ; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 | not grep IMPLICIT_DEF
3 void %foo(long %X) {
4 entry:
5         %tmp1 = and long %X, 3          ; <long> [#uses=1]
6         %tmp = setgt long %tmp1, 2              ; <bool> [#uses=1]
7         br bool %tmp, label %UnifiedReturnBlock, label %cond_true
9 cond_true:              ; preds = %entry
10         %tmp = tail call int (...)* %bar( )             ; <int> [#uses=0]
11         ret void
13 UnifiedReturnBlock:             ; preds = %entry
14         ret void
17 declare int %bar(...)