[llvm] a4f2025 - [X86] Regenerate avx512-mask-op.ll

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 23 03:34:46 PST 2022


Author: Simon Pilgrim
Date: 2022-01-23T11:34:25Z
New Revision: a4f202549208b543ec4475c3210ecdbf84128776

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

LOG: [X86] Regenerate avx512-mask-op.ll

Noticed on D86578 - several of the test cases were missing checks as they didn't start on a newline so the update script couldn't see them

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/avx512-mask-op.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/avx512-mask-op.ll b/llvm/test/CodeGen/X86/avx512-mask-op.ll
index 959ee566cfcfc..b93fcce26fbc6 100644
--- a/llvm/test/CodeGen/X86/avx512-mask-op.ll
+++ b/llvm/test/CodeGen/X86/avx512-mask-op.ll
@@ -1,8 +1,8 @@
 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
-; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512f | FileCheck %s --check-prefix=CHECK --check-prefix=KNL
-; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512f,+avx512bw,+avx512vl,+avx512dq | FileCheck %s --check-prefix=CHECK --check-prefix=SKX
-; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512bw  | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512BW
-; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512dq  | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512DQ
+; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512f | FileCheck %s --check-prefixes=CHECK,KNL
+; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512f,+avx512bw,+avx512vl,+avx512dq | FileCheck %s --check-prefixes=CHECK,SKX
+; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512bw  | FileCheck %s --check-prefixes=CHECK,AVX512BW
+; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=x86_64-apple-darwin -mattr=+avx512dq  | FileCheck %s --check-prefixes=CHECK,AVX512DQ
 ; RUN: llc < %s -stack-symbol-ordering=0 -mtriple=i686-apple-darwin -mattr=+avx512f,+avx512bw,+avx512vl,+avx512dq | FileCheck %s --check-prefix=X86
 
 
@@ -596,7 +596,22 @@ define <2 x i64> @test5(<2 x i64> %x, <2 x i64> %y, <2 x i64> %x1, <2 x i64> %y1
   %res = icmp slt <2 x i1>%x_gt_y, %x1_gt_y1
   %resse = sext <2 x i1>%res to <2 x i64>
   ret <2 x i64> %resse
-}define void @test6(<16 x i1> %mask)  {
+}
+
+define void @test6(<16 x i1> %mask)  {
+; CHECK-LABEL: test6:
+; CHECK:       ## %bb.0: ## %allocas
+; CHECK-NEXT:    vpsllw $7, %xmm0, %xmm0
+; CHECK-NEXT:    vpmovmskb %xmm0, %eax
+; CHECK-NEXT:    testl $21845, %eax ## imm = 0x5555
+; CHECK-NEXT:    retq
+;
+; X86-LABEL: test6:
+; X86:       ## %bb.0: ## %allocas
+; X86-NEXT:    vpsllw $7, %xmm0, %xmm0
+; X86-NEXT:    vpmovmskb %xmm0, %eax
+; X86-NEXT:    testl $21845, %eax ## imm = 0x5555
+; X86-NEXT:    retl
 allocas:
   %a= and <16 x i1> %mask, <i1 true, i1 false, i1 true, i1 false, i1 true, i1 false, i1 true, i1 false, i1 true, i1 false, i1 true, i1 false, i1 true, i1 false, i1 true, i1 false>
   %b = bitcast <16 x i1> %a to i16
@@ -609,6 +624,7 @@ true:
 false:
   ret void
 }
+
 define void @test7(<8 x i1> %mask)  {
 ; KNL-LABEL: test7:
 ; KNL:       ## %bb.0: ## %allocas
@@ -666,6 +682,7 @@ true:
 false:
   ret void
 }
+
 define <16 x i8> @test8(<16 x i32>%a, <16 x i32>%b, i32 %a1, i32 %b1) {
 ; KNL-LABEL: test8:
 ; KNL:       ## %bb.0:
@@ -756,6 +773,7 @@ define <16 x i8> @test8(<16 x i32>%a, <16 x i32>%b, i32 %a1, i32 %b1) {
   %res = sext <16 x i1> %mix to <16 x i8>
   ret <16 x i8> %res
 }
+
 define <16 x i1> @test9(<16 x i1>%a, <16 x i1>%b, i32 %a1, i32 %b1) {
 ; KNL-LABEL: test9:
 ; KNL:       ## %bb.0:
@@ -838,7 +856,89 @@ define <16 x i1> @test9(<16 x i1>%a, <16 x i1>%b, i32 %a1, i32 %b1) {
   %mask = icmp sgt i32 %a1, %b1
   %c = select i1 %mask, <16 x i1>%a, <16 x i1>%b
   ret <16 x i1>%c
-}define <8 x i1> @test10(<8 x i1>%a, <8 x i1>%b, i32 %a1, i32 %b1) {
+}
+
+define <8 x i1> @test10(<8 x i1>%a, <8 x i1>%b, i32 %a1, i32 %b1) {
+; KNL-LABEL: test10:
+; KNL:       ## %bb.0:
+; KNL-NEXT:    cmpl %esi, %edi
+; KNL-NEXT:    jg LBB19_1
+; KNL-NEXT:  ## %bb.2:
+; KNL-NEXT:    vpmovsxwq %xmm1, %zmm0
+; KNL-NEXT:    jmp LBB19_3
+; KNL-NEXT:  LBB19_1:
+; KNL-NEXT:    vpmovsxwq %xmm0, %zmm0
+; KNL-NEXT:  LBB19_3:
+; KNL-NEXT:    vpsllq $63, %zmm0, %zmm0
+; KNL-NEXT:    vptestmq %zmm0, %zmm0, %k1
+; KNL-NEXT:    vpternlogd $255, %zmm0, %zmm0, %zmm0 {%k1} {z}
+; KNL-NEXT:    vpmovdw %zmm0, %ymm0
+; KNL-NEXT:    ## kill: def $xmm0 killed $xmm0 killed $ymm0
+; KNL-NEXT:    vzeroupper
+; KNL-NEXT:    retq
+;
+; SKX-LABEL: test10:
+; SKX:       ## %bb.0:
+; SKX-NEXT:    cmpl %esi, %edi
+; SKX-NEXT:    jg LBB19_1
+; SKX-NEXT:  ## %bb.2:
+; SKX-NEXT:    vpsllw $15, %xmm1, %xmm0
+; SKX-NEXT:    jmp LBB19_3
+; SKX-NEXT:  LBB19_1:
+; SKX-NEXT:    vpsllw $15, %xmm0, %xmm0
+; SKX-NEXT:  LBB19_3:
+; SKX-NEXT:    vpmovw2m %xmm0, %k0
+; SKX-NEXT:    vpmovm2w %k0, %xmm0
+; SKX-NEXT:    retq
+;
+; AVX512BW-LABEL: test10:
+; AVX512BW:       ## %bb.0:
+; AVX512BW-NEXT:    cmpl %esi, %edi
+; AVX512BW-NEXT:    jg LBB19_1
+; AVX512BW-NEXT:  ## %bb.2:
+; AVX512BW-NEXT:    vpsllw $15, %xmm1, %xmm0
+; AVX512BW-NEXT:    jmp LBB19_3
+; AVX512BW-NEXT:  LBB19_1:
+; AVX512BW-NEXT:    vpsllw $15, %xmm0, %xmm0
+; AVX512BW-NEXT:  LBB19_3:
+; AVX512BW-NEXT:    vpmovw2m %zmm0, %k0
+; AVX512BW-NEXT:    vpmovm2w %k0, %zmm0
+; AVX512BW-NEXT:    ## kill: def $xmm0 killed $xmm0 killed $zmm0
+; AVX512BW-NEXT:    vzeroupper
+; AVX512BW-NEXT:    retq
+;
+; AVX512DQ-LABEL: test10:
+; AVX512DQ:       ## %bb.0:
+; AVX512DQ-NEXT:    cmpl %esi, %edi
+; AVX512DQ-NEXT:    jg LBB19_1
+; AVX512DQ-NEXT:  ## %bb.2:
+; AVX512DQ-NEXT:    vpmovsxwq %xmm1, %zmm0
+; AVX512DQ-NEXT:    jmp LBB19_3
+; AVX512DQ-NEXT:  LBB19_1:
+; AVX512DQ-NEXT:    vpmovsxwq %xmm0, %zmm0
+; AVX512DQ-NEXT:  LBB19_3:
+; AVX512DQ-NEXT:    vpsllq $63, %zmm0, %zmm0
+; AVX512DQ-NEXT:    vpmovq2m %zmm0, %k0
+; AVX512DQ-NEXT:    vpmovm2d %k0, %zmm0
+; AVX512DQ-NEXT:    vpmovdw %zmm0, %ymm0
+; AVX512DQ-NEXT:    ## kill: def $xmm0 killed $xmm0 killed $ymm0
+; AVX512DQ-NEXT:    vzeroupper
+; AVX512DQ-NEXT:    retq
+;
+; X86-LABEL: test10:
+; X86:       ## %bb.0:
+; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
+; X86-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
+; X86-NEXT:    jg LBB19_1
+; X86-NEXT:  ## %bb.2:
+; X86-NEXT:    vpsllw $15, %xmm1, %xmm0
+; X86-NEXT:    jmp LBB19_3
+; X86-NEXT:  LBB19_1:
+; X86-NEXT:    vpsllw $15, %xmm0, %xmm0
+; X86-NEXT:  LBB19_3:
+; X86-NEXT:    vpmovw2m %xmm0, %k0
+; X86-NEXT:    vpmovm2w %k0, %xmm0
+; X86-NEXT:    retl
   %mask = icmp sgt i32 %a1, %b1
   %c = select i1 %mask, <8 x i1>%a, <8 x i1>%b
   ret <8 x i1>%c


        


More information about the llvm-commits mailing list