[llvm] 070ac1d - [SystemZ] vec-perm-14.ll - partially regenerate checks so we can see all the vperm codegen

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 5 10:00:29 PST 2024


Author: Simon Pilgrim
Date: 2024-01-05T18:00:08Z
New Revision: 070ac1dcd5cf27ce3722e60c8416217a6fdb5581

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

LOG: [SystemZ] vec-perm-14.ll - partially regenerate checks so we can see all the vperm codegen

We can't use the script as we need to keep the shuffle mask constant pool checks, but do more than just check that a second vperm isn't generated

Added: 
    

Modified: 
    llvm/test/CodeGen/SystemZ/vec-perm-14.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/SystemZ/vec-perm-14.ll b/llvm/test/CodeGen/SystemZ/vec-perm-14.ll
index 551ee44c314de4..fb3ece96017b70 100644
--- a/llvm/test/CodeGen/SystemZ/vec-perm-14.ll
+++ b/llvm/test/CodeGen/SystemZ/vec-perm-14.ll
@@ -4,8 +4,23 @@
 
 define void @fun() {
 ; CHECK-LABEL: fun:
-; CHECK: vperm
-; CHECK-NOT: vperm
+; CHECK:       # %bb.0: # %bb
+; CHECK-NEXT:    vlrepf %v0, 0(%r1)
+; CHECK-NEXT:    vgbm %v1, 0
+; CHECK-NEXT:    larl %r1, .LCPI0_0
+; CHECK-NEXT:    vceqb %v0, %v0, %v1
+; CHECK-NEXT:    vl %v1, 0(%r1), 3
+; CHECK-NEXT:    vperm %v0, %v0, %v0, %v1
+; CHECK-NEXT:    vlgvf %r0, %v0, 0
+; CHECK-NEXT:    tmll %r0, 1
+; CHECK-NEXT:    je .LBB0_2
+; CHECK-NEXT:  # %bb.1: # %bb1
+; CHECK-NEXT:  .LBB0_2: # %bb2
+; CHECK-NEXT:    vlgvf %r0, %v0, 1
+; CHECK-NEXT:    tmll %r0, 1
+; CHECK-NEXT:    je .LBB0_4
+; CHECK-NEXT:  # %bb.3: # %bb3
+; CHECK-NEXT:  .LBB0_4: # %bb4
 bb:
   %tmp = load <4 x i8>, ptr undef
   %tmp1 = icmp eq <4 x i8> zeroinitializer, %tmp


        


More information about the llvm-commits mailing list