xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/long-setcc.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86 | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine i1 @t1(i64 %x) nounwind {
4*9880d681SAndroid Build Coastguard Worker	%B = icmp slt i64 %x, 0
5*9880d681SAndroid Build Coastguard Worker	ret i1 %B
6*9880d681SAndroid Build Coastguard Worker}
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Worker; CHECK: t1
9*9880d681SAndroid Build Coastguard Worker; CHECK: shrl
10*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: shrl
11*9880d681SAndroid Build Coastguard Worker; CHECK: ret
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Workerdefine i1 @t2(i64 %x) nounwind {
14*9880d681SAndroid Build Coastguard Worker	%tmp = icmp ult i64 %x, 4294967296
15*9880d681SAndroid Build Coastguard Worker	ret i1 %tmp
16*9880d681SAndroid Build Coastguard Worker}
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Worker; CHECK: t2
19*9880d681SAndroid Build Coastguard Worker; CHECK: cmp
20*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: cmp
21*9880d681SAndroid Build Coastguard Worker; CHECK: ret
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Workerdefine i1 @t3(i32 %x) nounwind {
24*9880d681SAndroid Build Coastguard Worker	%tmp = icmp ugt i32 %x, -1
25*9880d681SAndroid Build Coastguard Worker	ret i1 %tmp
26*9880d681SAndroid Build Coastguard Worker}
27*9880d681SAndroid Build Coastguard Worker
28*9880d681SAndroid Build Coastguard Worker; CHECK: t3
29*9880d681SAndroid Build Coastguard Worker; CHECK: xor
30*9880d681SAndroid Build Coastguard Worker; CHECK-NOT: xor
31*9880d681SAndroid Build Coastguard Worker; CHECK: ret
32