[llvm] 4bab490 - [X86] Add test case for D134736. NFC

Amaury Séchet via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 27 14:07:20 PDT 2022


Author: Amaury Séchet
Date: 2022-09-27T21:07:10Z
New Revision: 4bab490de238a07f70749246930654bff5892e12

URL: https://github.com/llvm/llvm-project/commit/4bab490de238a07f70749246930654bff5892e12
DIFF: https://github.com/llvm/llvm-project/commit/4bab490de238a07f70749246930654bff5892e12.diff

LOG: [X86] Add test case for D134736. NFC

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/select_const.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/select_const.ll b/llvm/test/CodeGen/X86/select_const.ll
index cbf55fb7ce7f..c910e3da33ed 100644
--- a/llvm/test/CodeGen/X86/select_const.ll
+++ b/llvm/test/CodeGen/X86/select_const.ll
@@ -429,6 +429,18 @@ define i32 @select_C1_C2_signext(i1 signext %cond) {
   ret i32 %sel
 }
 
+define i32 @select_n_or_minus1(i1 signext %cond) {
+; CHECK-LABEL: select_n_or_minus1:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    testb $1, %dil
+; CHECK-NEXT:    movl $12414, %ecx # imm = 0x307E
+; CHECK-NEXT:    movl $-1, %eax
+; CHECK-NEXT:    cmovnel %ecx, %eax
+; CHECK-NEXT:    retq
+  %sel = select i1 %cond, i32 12414, i32 -1
+  ret i32 %sel
+}
+
 ; select (x == 2), 2, (x + 1) --> select (x == 2), x, (x + 1)
 
 define i64 @select_2_or_inc(i64 %x) {
@@ -448,11 +460,11 @@ define <4 x i32> @sel_constants_add_constant_vec(i1 %cond) {
 ; CHECK-LABEL: sel_constants_add_constant_vec:
 ; CHECK:       # %bb.0:
 ; CHECK-NEXT:    testb $1, %dil
-; CHECK-NEXT:    jne .LBB36_1
+; CHECK-NEXT:    jne .LBB37_1
 ; CHECK-NEXT:  # %bb.2:
 ; CHECK-NEXT:    movaps {{.*#+}} xmm0 = [12,13,14,15]
 ; CHECK-NEXT:    retq
-; CHECK-NEXT:  .LBB36_1:
+; CHECK-NEXT:  .LBB37_1:
 ; CHECK-NEXT:    movaps {{.*#+}} xmm0 = [4294967293,14,4,4]
 ; CHECK-NEXT:    retq
   %sel = select i1 %cond, <4 x i32> <i32 -4, i32 12, i32 1, i32 0>, <4 x i32> <i32 11, i32 11, i32 11, i32 11>
@@ -464,11 +476,11 @@ define <2 x double> @sel_constants_fmul_constant_vec(i1 %cond) {
 ; CHECK-LABEL: sel_constants_fmul_constant_vec:
 ; CHECK:       # %bb.0:
 ; CHECK-NEXT:    testb $1, %dil
-; CHECK-NEXT:    jne .LBB37_1
+; CHECK-NEXT:    jne .LBB38_1
 ; CHECK-NEXT:  # %bb.2:
 ; CHECK-NEXT:    movaps {{.*#+}} xmm0 = [1.1883E+2,3.4539999999999999E+1]
 ; CHECK-NEXT:    retq
-; CHECK-NEXT:  .LBB37_1:
+; CHECK-NEXT:  .LBB38_1:
 ; CHECK-NEXT:    movaps {{.*#+}} xmm0 = [-2.0399999999999999E+1,3.768E+1]
 ; CHECK-NEXT:    retq
   %sel = select i1 %cond, <2 x double> <double -4.0, double 12.0>, <2 x double> <double 23.3, double 11.0>
@@ -509,4 +521,3 @@ define float @select_undef_fp(float %x) {
   %f = select i1 undef, float 4.0, float %x
   ret float %f
 }
-


        


More information about the llvm-commits mailing list