Stackmap shadows should consider call returns a branch target.
[oota-llvm.git] / test / CodeGen / X86 / long-setcc.ll
index 0ab816068829b432bdaa46b413380cd1d092ff13..13046d8b3dec62da51c7eed3c7f8881102239f72 100644 (file)
@@ -1,35 +1,31 @@
 ; RUN: llc < %s -march=x86 | FileCheck %s
 
-; General case
-define i1 @t1(i64 %x, i64 %y) nounwind {
-; CHECK: @t1
-; CHECK: subl
-; CHECK: sbbl
-; CHECK: setl %al
-  %B = icmp slt i64 %x, %y
-  ret i1 %B
+define i1 @t1(i64 %x) nounwind {
+       %B = icmp slt i64 %x, 0
+       ret i1 %B
 }
 
-; Some special cases
+; CHECK: t1
+; CHECK: shrl
+; CHECK-NOT: shrl
+; CHECK: ret
+
 define i1 @t2(i64 %x) nounwind {
-; CHECK: @t2
-; CHECK: shrl $31, %eax
-  %B = icmp slt i64 %x, 0
-  ret i1 %B
+       %tmp = icmp ult i64 %x, 4294967296
+       ret i1 %tmp
 }
 
-define i1 @t3(i64 %x) nounwind {
-; CHECK: @t3
-; CHECX: cmpl $0
-; CHECX: sete %al
-  %tmp = icmp ult i64 %x, 4294967296
-  ret i1 %tmp
-}
+; CHECK: t2
+; CHECK: cmp
+; CHECK-NOT: cmp
+; CHECK: ret
 
-define i1 @t4(i64 %x) nounwind {
-; CHECK: @t4
-; CHECX: cmpl $0
-; CHECX: setne %al
-  %tmp = icmp ugt i64 %x, 4294967295
-  ret i1 %tmp
+define i1 @t3(i32 %x) nounwind {
+       %tmp = icmp ugt i32 %x, -1
+       ret i1 %tmp
 }
+
+; CHECK: t3
+; CHECK: xor
+; CHECK-NOT: xor
+; CHECK: ret