[llvm] b025b06 - [MCA][X86] Add missing PALIGNR from AVX512BW/AVX512BWVL tests
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Fri Dec 10 08:00:50 PST 2021
Author: Simon Pilgrim
Date: 2021-12-10T15:59:52Z
New Revision: b025b062d6bc3caa9bef37dddcdd526c3078dde6
URL: https://github.com/llvm/llvm-project/commit/b025b062d6bc3caa9bef37dddcdd526c3078dde6
DIFF: https://github.com/llvm/llvm-project/commit/b025b062d6bc3caa9bef37dddcdd526c3078dde6.diff
LOG: [MCA][X86] Add missing PALIGNR from AVX512BW/AVX512BWVL tests
Added:
Modified:
llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
Removed:
################################################################################
diff --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
index f839d7b0834c..16c3d44e2632 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
@@ -76,6 +76,13 @@ vpaddw (%rax), %zmm17, %zmm19 {k1}
vpaddw %zmm16, %zmm17, %zmm19 {z}{k1}
vpaddw (%rax), %zmm17, %zmm19 {z}{k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19
+vpalignr $1, (%rax), %zmm17, %zmm19
+vpalignr $1, %zmm16, %zmm17, %zmm19 {k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19 {z}{k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {z}{k1}
+
vpcmpb $0, %zmm0, %zmm1, %k2
vpcmpb $0, (%rax), %zmm1, %k2
vpcmpb $0, %zmm0, %zmm1, %k2 {k3}
@@ -293,6 +300,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: 2 8 0.50 * vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: 1 1 0.50 vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
@@ -422,7 +435,7 @@ vpmovw2m %zmm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
-# CHECK-NEXT: - - 10.67 47.67 - 123.67 40.00 40.00
+# CHECK-NEXT: - - 10.67 47.67 - 129.67 41.50 41.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -492,6 +505,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
diff --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
index 5b0110fcca42..5d90694440ff 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
@@ -113,6 +113,20 @@ vpaddw (%rax), %ymm17, %ymm19 {k1}
vpaddw %ymm16, %ymm17, %ymm19 {z}{k1}
vpaddw (%rax), %ymm17, %ymm19 {z}{k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19
+vpalignr $1, (%rax), %xmm17, %xmm19
+vpalignr $1, %xmm16, %xmm17, %xmm19 {k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19 {z}{k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {z}{k1}
+
+vpalignr $1, %ymm16, %ymm17, %ymm19
+vpalignr $1, (%rax), %ymm17, %ymm19
+vpalignr $1, %ymm16, %ymm17, %ymm19 {k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {k1}
+vpalignr $1, %ymm16, %ymm17, %ymm19 {z}{k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {z}{k1}
+
vpcmpb $0, %xmm0, %xmm1, %k2
vpcmpb $0, (%rax), %xmm1, %k2
vpcmpb $0, %xmm0, %xmm1, %k2 {k3}
@@ -502,6 +516,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: 1 1 0.50 vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 1 0.50 vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: 2 7 0.50 * vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 1 0.50 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 2 7 0.50 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 1 0.50 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 2 7 0.50 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: 2 7 0.50 * vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: 1 1 0.50 vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
@@ -747,7 +773,7 @@ vpmovw2m %ymm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
-# CHECK-NEXT: - - 13.33 119.33 - 195.33 80.00 80.00
+# CHECK-NEXT: - - 13.33 122.33 - 204.33 83.00 83.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -847,6 +873,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - 0.50 - 0.50 - - vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: - - - 0.50 - 0.50 - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - 0.50 - 0.50 - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
index 5b09e40f88ca..052ba7515570 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
@@ -76,6 +76,13 @@ vpaddw (%rax), %zmm17, %zmm19 {k1}
vpaddw %zmm16, %zmm17, %zmm19 {z}{k1}
vpaddw (%rax), %zmm17, %zmm19 {z}{k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19
+vpalignr $1, (%rax), %zmm17, %zmm19
+vpalignr $1, %zmm16, %zmm17, %zmm19 {k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19 {z}{k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {z}{k1}
+
vpcmpb $0, %zmm0, %zmm1, %k2
vpcmpb $0, (%rax), %zmm1, %k2
vpcmpb $0, %zmm0, %zmm1, %k2 {k3}
@@ -293,6 +300,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: 1 1 0.33 vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: 2 11 1.00 * vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
@@ -426,7 +439,7 @@ vpmovw2m %zmm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 32.50 8.50 40.00 40.00 - 146.50 0.50 - - -
+# CHECK-NEXT: - - 32.50 8.50 41.50 41.50 - 152.50 0.50 - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -496,6 +509,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
index 8696aedfcb64..c755f1a9e4e9 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
@@ -113,6 +113,20 @@ vpaddw (%rax), %ymm17, %ymm19 {k1}
vpaddw %ymm16, %ymm17, %ymm19 {z}{k1}
vpaddw (%rax), %ymm17, %ymm19 {z}{k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19
+vpalignr $1, (%rax), %xmm17, %xmm19
+vpalignr $1, %xmm16, %xmm17, %xmm19 {k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19 {z}{k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {z}{k1}
+
+vpalignr $1, %ymm16, %ymm17, %ymm19
+vpalignr $1, (%rax), %ymm17, %ymm19
+vpalignr $1, %ymm16, %ymm17, %ymm19 {k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {k1}
+vpalignr $1, %ymm16, %ymm17, %ymm19 {z}{k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {z}{k1}
+
vpcmpb $0, %xmm0, %xmm1, %k2
vpcmpb $0, (%rax), %xmm1, %k2
vpcmpb $0, %xmm0, %xmm1, %k2 {k3}
@@ -502,6 +516,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: 1 1 0.33 vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: 2 10 1.00 * vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
@@ -751,7 +777,7 @@ vpmovw2m %ymm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 33.00 29.00 80.00 80.00 - 277.00 1.00 - - -
+# CHECK-NEXT: - - 33.00 29.00 83.00 83.00 - 289.00 1.00 - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -851,6 +877,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
index 99996667acad..cd6ed01accab 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
@@ -76,6 +76,13 @@ vpaddw (%rax), %zmm17, %zmm19 {k1}
vpaddw %zmm16, %zmm17, %zmm19 {z}{k1}
vpaddw (%rax), %zmm17, %zmm19 {z}{k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19
+vpalignr $1, (%rax), %zmm17, %zmm19
+vpalignr $1, %zmm16, %zmm17, %zmm19 {k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {k1}
+vpalignr $1, %zmm16, %zmm17, %zmm19 {z}{k1}
+vpalignr $1, (%rax), %zmm17, %zmm19 {z}{k1}
+
vpcmpb $0, %zmm0, %zmm1, %k2
vpcmpb $0, (%rax), %zmm1, %k2
vpcmpb $0, %zmm0, %zmm1, %k2 {k3}
@@ -293,6 +300,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: 1 1 0.33 vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: 2 11 1.00 * vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
@@ -424,7 +437,7 @@ vpmovw2m %zmm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - - 32.50 8.50 40.00 40.00 - 146.50 0.50 -
+# CHECK-NEXT: - - 32.50 8.50 41.50 41.50 - 152.50 0.50 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -494,6 +507,12 @@ vpmovw2m %zmm0, %k0
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vpaddw (%rax), %zmm17, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vpaddw (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - vpcmpeqb %zmm0, %zmm1, %k2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpcmpeqb (%rax), %zmm1, %k2
# CHECK-NEXT: - - - - - - - 1.00 - - vpcmpeqb %zmm0, %zmm1, %k2 {%k3}
diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
index febe207fab27..681a209d9c16 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
@@ -113,6 +113,20 @@ vpaddw (%rax), %ymm17, %ymm19 {k1}
vpaddw %ymm16, %ymm17, %ymm19 {z}{k1}
vpaddw (%rax), %ymm17, %ymm19 {z}{k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19
+vpalignr $1, (%rax), %xmm17, %xmm19
+vpalignr $1, %xmm16, %xmm17, %xmm19 {k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {k1}
+vpalignr $1, %xmm16, %xmm17, %xmm19 {z}{k1}
+vpalignr $1, (%rax), %xmm17, %xmm19 {z}{k1}
+
+vpalignr $1, %ymm16, %ymm17, %ymm19
+vpalignr $1, (%rax), %ymm17, %ymm19
+vpalignr $1, %ymm16, %ymm17, %ymm19 {k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {k1}
+vpalignr $1, %ymm16, %ymm17, %ymm19 {z}{k1}
+vpalignr $1, (%rax), %ymm17, %ymm19 {z}{k1}
+
vpcmpb $0, %xmm0, %xmm1, %k2
vpcmpb $0, (%rax), %xmm1, %k2
vpcmpb $0, %xmm0, %xmm1, %k2 {k3}
@@ -502,6 +516,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: 1 1 0.33 vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 2 7 1.00 * vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 1 1.00 vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 2 8 1.00 * vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: 2 10 1.00 * vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: 1 4 1.00 vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
@@ -749,7 +775,7 @@ vpmovw2m %ymm0, %k0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: - - 33.00 29.00 80.00 80.00 - 277.00 1.00 -
+# CHECK-NEXT: - - 33.00 29.00 83.00 83.00 - 289.00 1.00 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -849,6 +875,18 @@ vpmovw2m %ymm0, %k0
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vpaddw (%rax), %ymm17, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - vpaddw %ymm16, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vpaddw (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %xmm17, %xmm19
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - 1.00 - - vpalignr $1, %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpalignr $1, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - vpcmpeqb %xmm0, %xmm1, %k2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpcmpeqb (%rax), %xmm1, %k2
# CHECK-NEXT: - - - - - - - 1.00 - - vpcmpeqb %xmm0, %xmm1, %k2 {%k3}
More information about the llvm-commits
mailing list