Skip to content

Commit 093b896

Browse files
committed
[x86] add tests for logic of setcc (PR40611); NFC
llvm-svn: 353789
1 parent 14fb863 commit 093b896

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

llvm/test/CodeGen/X86/setcc-logic.ll

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -482,3 +482,33 @@ define <4 x i1> @and_eq_vec(<4 x i32> %a, <4 x i32> %b, <4 x i32> %c, <4 x i32>
482482
ret <4 x i1> %and
483483
}
484484

485+
define i1 @or_icmps_const_1bit_diff(i8 %x) {
486+
; CHECK-LABEL: or_icmps_const_1bit_diff:
487+
; CHECK: # %bb.0:
488+
; CHECK-NEXT: cmpb $43, %dil
489+
; CHECK-NEXT: sete %cl
490+
; CHECK-NEXT: cmpb $45, %dil
491+
; CHECK-NEXT: sete %al
492+
; CHECK-NEXT: orb %cl, %al
493+
; CHECK-NEXT: retq
494+
%a = icmp eq i8 %x, 43
495+
%b = icmp eq i8 %x, 45
496+
%r = or i1 %a, %b
497+
ret i1 %r
498+
}
499+
500+
define i1 @and_icmps_const_1bit_diff(i32 %x) {
501+
; CHECK-LABEL: and_icmps_const_1bit_diff:
502+
; CHECK: # %bb.0:
503+
; CHECK-NEXT: cmpl $44, %edi
504+
; CHECK-NEXT: setne %cl
505+
; CHECK-NEXT: cmpl $60, %edi
506+
; CHECK-NEXT: setne %al
507+
; CHECK-NEXT: andb %cl, %al
508+
; CHECK-NEXT: retq
509+
%a = icmp ne i32 %x, 44
510+
%b = icmp ne i32 %x, 60
511+
%r = and i1 %a, %b
512+
ret i1 %r
513+
}
514+

0 commit comments

Comments
 (0)