; RUN: llc < %s -march=x86 -mcpu=pentiumpro | FileCheck %s define i32 @f(i32 %X) { entry: ; CHECK: f: ; CHECK: jns %tmp1 = add i32 %X, 1 ; [#uses=1] %tmp = icmp slt i32 %tmp1, 0 ; [#uses=1] br i1 %tmp, label %cond_true, label %cond_next cond_true: ; preds = %entry %tmp2 = tail call i32 (...)* @bar( ) ; [#uses=0] br label %cond_next cond_next: ; preds = %cond_true, %entry %tmp3 = tail call i32 (...)* @baz( ) ; [#uses=0] ret i32 undef } declare i32 @bar(...) declare i32 @baz(...) ; rdar://10633221 define i32 @g(i32 %a, i32 %b) nounwind { entry: ; CHECK: g: ; CHECK-NOT: test ; CHECK: cmovs %sub = sub nsw i32 %a, %b %cmp = icmp sgt i32 %sub, 0 %cond = select i1 %cmp, i32 %sub, i32 0 ret i32 %cond }