From 2f364f6f0d3a2420ca78cbd80abb186657180e05 Mon Sep 17 00:00:00 2001 From: Roman Lebedev Date: Sat, 20 Nov 2021 13:09:18 +0300 Subject: [PATCH] [NFC][X86][MCA] Add forgotten test coverage for AVX512's VPMOVM2[BWDQ] / VPMOV[BWDQ]2M --- .../llvm-mca/X86/Generic/resources-avx512bw.s | 16 +++++++++++- .../llvm-mca/X86/Generic/resources-avx512bwvl.s | 30 +++++++++++++++++++++- .../llvm-mca/X86/Generic/resources-avx512dq.s | 16 +++++++++++- .../llvm-mca/X86/Generic/resources-avx512dqvl.s | 30 +++++++++++++++++++++- .../X86/IceLakeServer/resources-avx512bw.s | 16 +++++++++++- .../X86/IceLakeServer/resources-avx512bwvl.s | 30 +++++++++++++++++++++- .../X86/IceLakeServer/resources-avx512dq.s | 16 +++++++++++- .../X86/IceLakeServer/resources-avx512dqvl.s | 30 +++++++++++++++++++++- .../X86/SkylakeServer/resources-avx512bw.s | 16 +++++++++++- .../X86/SkylakeServer/resources-avx512bwvl.s | 30 +++++++++++++++++++++- .../X86/SkylakeServer/resources-avx512dq.s | 16 +++++++++++- .../X86/SkylakeServer/resources-avx512dqvl.s | 30 +++++++++++++++++++++- 12 files changed, 264 insertions(+), 12 deletions(-) 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 be70d494..152aa4a 100644 --- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s +++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s @@ -178,6 +178,12 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {k1} vpunpcklwd %zmm16, %zmm17, %zmm19 {z}{k1} vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} +vpmovm2b %k0, %zmm0 +vpmovm2w %k0, %zmm0 + +vpmovb2m %zmm0, %k0 +vpmovw2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -337,6 +343,10 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.33 vpmovm2b %k0, %zmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2w %k0, %zmm0 +# CHECK-NEXT: 1 1 0.33 vpmovb2m %zmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovw2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider @@ -350,7 +360,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] -# CHECK-NEXT: - - 9.33 46.33 - 94.33 33.00 33.00 +# CHECK-NEXT: - - 10.67 47.67 - 95.67 33.00 33.00 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: @@ -504,3 +514,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: - - - - - 1.00 - - vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2b %k0, %zmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2w %k0, %zmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovb2m %zmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovw2m %zmm0, %k0 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 2f227a7..e68b0b2 100644 --- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s +++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s @@ -303,6 +303,18 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {k1} vpunpcklwd %ymm16, %ymm17, %ymm19 {z}{k1} vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} +vpmovm2b %k0, %xmm0 +vpmovm2w %k0, %xmm0 + +vpmovm2b %k0, %ymm0 +vpmovm2w %k0, %ymm0 + +vpmovb2m %xmm0, %k0 +vpmovw2m %xmm0, %k0 + +vpmovb2m %ymm0, %k0 +vpmovw2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -564,6 +576,14 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.33 vpmovm2b %k0, %xmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2w %k0, %xmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2b %k0, %ymm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2w %k0, %ymm0 +# CHECK-NEXT: 1 1 0.33 vpmovb2m %xmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovw2m %xmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovb2m %ymm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovw2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider @@ -577,7 +597,7 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] -# CHECK-NEXT: - - 10.67 99.67 - 141.67 63.00 63.00 +# CHECK-NEXT: - - 13.33 102.33 - 144.33 63.00 63.00 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: @@ -833,3 +853,11 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: - - - - - 1.00 - - vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2b %k0, %xmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2w %k0, %xmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2b %k0, %ymm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2w %k0, %ymm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovb2m %xmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovw2m %xmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovb2m %ymm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovw2m %ymm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s index 3630534..f960d77 100644 --- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s +++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s @@ -142,6 +142,12 @@ vxorps %zmm16, %zmm17, %zmm19 {z}{k1} vxorps (%rax), %zmm17, %zmm19 {z}{k1} vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} +vpmovm2d %k0, %zmm0 +vpmovm2q %k0, %zmm0 + +vpmovd2m %zmm0, %k0 +vpmovq2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -276,6 +282,10 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 1 1 1.00 vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.33 vpmovm2d %k0, %zmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2q %k0, %zmm0 +# CHECK-NEXT: 1 1 0.33 vpmovd2m %zmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovq2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider @@ -289,7 +299,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] -# CHECK-NEXT: - - 8.33 40.33 - 85.33 37.50 37.50 +# CHECK-NEXT: - - 9.67 41.67 - 86.67 37.50 37.50 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: @@ -418,3 +428,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - - - - 1.00 - - vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2d %k0, %zmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2q %k0, %zmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovd2m %zmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovq2m %zmm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s index ac28d91..f769c35 100644 --- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s +++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s @@ -203,6 +203,18 @@ vxorps %ymm16, %ymm17, %ymm19 {z}{k1} vxorps (%rax), %ymm17, %ymm19 {z}{k1} vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} +vpmovm2d %k0, %xmm0 +vpmovm2q %k0, %xmm0 + +vpmovm2d %k0, %ymm0 +vpmovm2q %k0, %ymm0 + +vpmovd2m %xmm0, %k0 +vpmovq2m %xmm0, %k0 + +vpmovd2m %ymm0, %k0 +vpmovq2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -392,6 +404,14 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 1 1 1.00 vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.33 vpmovm2d %k0, %xmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2q %k0, %xmm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2d %k0, %ymm0 +# CHECK-NEXT: 1 1 0.33 vpmovm2q %k0, %ymm0 +# CHECK-NEXT: 1 1 0.33 vpmovd2m %xmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovq2m %xmm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovd2m %ymm0, %k0 +# CHECK-NEXT: 1 1 0.33 vpmovq2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SBDivider @@ -405,7 +425,7 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] -# CHECK-NEXT: - - 12.00 42.00 - 144.00 59.00 59.00 +# CHECK-NEXT: - - 14.67 44.67 - 146.67 59.00 59.00 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: @@ -589,3 +609,11 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - - - - 1.00 - - vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - - - - 1.00 0.50 0.50 vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2d %k0, %xmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2q %k0, %xmm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2d %k0, %ymm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovm2q %k0, %ymm0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovd2m %xmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovq2m %xmm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovd2m %ymm0, %k0 +# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - vpmovq2m %ymm0, %k0 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 1ff221d..5e76341 100644 --- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s +++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s @@ -178,6 +178,12 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {k1} vpunpcklwd %zmm16, %zmm17, %zmm19 {z}{k1} vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} +vpmovm2b %k0, %zmm0 +vpmovm2w %k0, %zmm0 + +vpmovb2m %zmm0, %k0 +vpmovw2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -337,6 +343,10 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %zmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %zmm0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %zmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - ICXDivider @@ -354,7 +364,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] -# CHECK-NEXT: - - 30.00 8.00 33.00 33.00 - 118.00 - - - - +# CHECK-NEXT: - - 32.50 8.50 33.00 33.00 - 118.50 0.50 - - - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions: @@ -508,3 +518,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: - - - - - - - 1.00 - - - - vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2b %k0, %zmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2w %k0, %zmm0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovb2m %zmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovw2m %zmm0, %k0 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 548276f..8df3f3a 100644 --- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s +++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s @@ -303,6 +303,18 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {k1} vpunpcklwd %ymm16, %ymm17, %ymm19 {z}{k1} vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} +vpmovm2b %k0, %xmm0 +vpmovm2w %k0, %xmm0 + +vpmovm2b %k0, %ymm0 +vpmovm2w %k0, %ymm0 + +vpmovb2m %xmm0, %k0 +vpmovw2m %xmm0, %k0 + +vpmovb2m %ymm0, %k0 +vpmovw2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -564,6 +576,14 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %ymm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %ymm0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %ymm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - ICXDivider @@ -581,7 +601,7 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] -# CHECK-NEXT: - - 28.00 28.00 63.00 63.00 - 208.00 - - - - +# CHECK-NEXT: - - 33.00 29.00 63.00 63.00 - 209.00 1.00 - - - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions: @@ -837,3 +857,11 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: - - - - - - - 1.00 - - - - vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2b %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2w %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2b %k0, %ymm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2w %k0, %ymm0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovb2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovw2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovb2m %ymm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovw2m %ymm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s index a6adefc..f69df2a 100644 --- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s +++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s @@ -142,6 +142,12 @@ vxorps %zmm16, %zmm17, %zmm19 {z}{k1} vxorps (%rax), %zmm17, %zmm19 {z}{k1} vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} +vpmovm2d %k0, %zmm0 +vpmovm2q %k0, %zmm0 + +vpmovd2m %zmm0, %k0 +vpmovq2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -276,6 +282,10 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 1 1 0.50 vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %zmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %zmm0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %zmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - ICXDivider @@ -293,7 +303,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] -# CHECK-NEXT: - - 57.00 4.00 37.50 37.50 - 83.00 - - - - +# CHECK-NEXT: - - 59.50 4.50 37.50 37.50 - 83.50 0.50 - - - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions: @@ -422,3 +432,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - - - vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - - - vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2d %k0, %zmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2q %k0, %zmm0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovd2m %zmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovq2m %zmm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s index 1a98032..90d3ad2 100644 --- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s +++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s @@ -203,6 +203,18 @@ vxorps %ymm16, %ymm17, %ymm19 {z}{k1} vxorps (%rax), %ymm17, %ymm19 {z}{k1} vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} +vpmovm2d %k0, %xmm0 +vpmovm2q %k0, %xmm0 + +vpmovm2d %k0, %ymm0 +vpmovm2q %k0, %ymm0 + +vpmovd2m %xmm0, %k0 +vpmovq2m %xmm0, %k0 + +vpmovd2m %ymm0, %k0 +vpmovq2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -392,6 +404,14 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 1 1 0.33 vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %ymm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %ymm0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %ymm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - ICXDivider @@ -409,7 +429,7 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] -# CHECK-NEXT: - - 67.00 67.00 59.00 59.00 - 70.00 - - - - +# CHECK-NEXT: - - 72.00 68.00 59.00 59.00 - 71.00 1.00 - - - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions: @@ -593,3 +613,11 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2d %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2q %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2d %k0, %ymm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - vpmovm2q %k0, %ymm0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovd2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovq2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovd2m %ymm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - - - vpmovq2m %ymm0, %k0 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 91d31dd..b10a886 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s @@ -178,6 +178,12 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {k1} vpunpcklwd %zmm16, %zmm17, %zmm19 {z}{k1} vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} +vpmovm2b %k0, %zmm0 +vpmovm2w %k0, %zmm0 + +vpmovb2m %zmm0, %k0 +vpmovw2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -337,6 +343,10 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %zmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %zmm0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %zmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SKXDivider @@ -352,7 +362,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: - - 30.00 8.00 33.00 33.00 - 118.00 - - +# CHECK-NEXT: - - 32.50 8.50 33.00 33.00 - 118.50 0.50 - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -506,3 +516,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: - - - - - - - 1.00 - - vpunpcklwd %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpunpcklwd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2b %k0, %zmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2w %k0, %zmm0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovb2m %zmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovw2m %zmm0, %k0 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 ec914fb..e2c991f 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s @@ -303,6 +303,18 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {k1} vpunpcklwd %ymm16, %ymm17, %ymm19 {z}{k1} vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} +vpmovm2b %k0, %xmm0 +vpmovm2w %k0, %xmm0 + +vpmovm2b %k0, %ymm0 +vpmovm2w %k0, %ymm0 + +vpmovb2m %xmm0, %k0 +vpmovw2m %xmm0, %k0 + +vpmovb2m %ymm0, %k0 +vpmovw2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -564,6 +576,14 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: 1 1 1.00 vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 1.00 * vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2b %k0, %ymm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2w %k0, %ymm0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovb2m %ymm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovw2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SKXDivider @@ -579,7 +599,7 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: - - 28.00 28.00 63.00 63.00 - 208.00 - - +# CHECK-NEXT: - - 33.00 29.00 63.00 63.00 - 209.00 1.00 - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -835,3 +855,11 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} # CHECK-NEXT: - - - - - - - 1.00 - - vpunpcklwd %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpunpcklwd (%rax), %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2b %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2w %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2b %k0, %ymm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2w %k0, %ymm0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovb2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovw2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovb2m %ymm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovw2m %ymm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s index de2e584..6f64568 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s @@ -142,6 +142,12 @@ vxorps %zmm16, %zmm17, %zmm19 {z}{k1} vxorps (%rax), %zmm17, %zmm19 {z}{k1} vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} +vpmovm2d %k0, %zmm0 +vpmovm2q %k0, %zmm0 + +vpmovd2m %zmm0, %k0 +vpmovq2m %zmm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -276,6 +282,10 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 1 1 0.50 vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %zmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %zmm0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %zmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %zmm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SKXDivider @@ -291,7 +301,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: - - 57.00 4.00 37.50 37.50 - 83.00 - - +# CHECK-NEXT: - - 59.50 4.50 37.50 37.50 - 83.50 0.50 - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -420,3 +430,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - 0.50 - - - - 0.50 - - vxorps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - vxorps (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - vxorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2d %k0, %zmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2q %k0, %zmm0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovd2m %zmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovq2m %zmm0, %k0 diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s index 4e383e5..3e33eb8 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s @@ -203,6 +203,18 @@ vxorps %ymm16, %ymm17, %ymm19 {z}{k1} vxorps (%rax), %ymm17, %ymm19 {z}{k1} vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} +vpmovm2d %k0, %xmm0 +vpmovm2q %k0, %xmm0 + +vpmovm2d %k0, %ymm0 +vpmovm2q %k0, %ymm0 + +vpmovd2m %xmm0, %k0 +vpmovq2m %xmm0, %k0 + +vpmovd2m %ymm0, %k0 +vpmovq2m %ymm0, %k0 + # CHECK: Instruction Info: # CHECK-NEXT: [1]: #uOps # CHECK-NEXT: [2]: Latency @@ -392,6 +404,14 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: 1 1 0.33 vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: 2 8 0.50 * vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %xmm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2d %k0, %ymm0 +# CHECK-NEXT: 1 1 0.25 vpmovm2q %k0, %ymm0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %xmm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovd2m %ymm0, %k0 +# CHECK-NEXT: 1 1 1.00 vpmovq2m %ymm0, %k0 # CHECK: Resources: # CHECK-NEXT: [0] - SKXDivider @@ -407,7 +427,7 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: - - 67.00 67.00 59.00 59.00 - 70.00 - - +# CHECK-NEXT: - - 72.00 68.00 59.00 59.00 - 71.00 1.00 - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -591,3 +611,11 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1} # CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - vxorps %ymm16, %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vxorps (%rax), %ymm17, %ymm19 {%k1} {z} # CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - vxorps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z} +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2d %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2q %k0, %xmm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2d %k0, %ymm0 +# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - vpmovm2q %k0, %ymm0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovd2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovq2m %xmm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovd2m %ymm0, %k0 +# CHECK-NEXT: - - 1.00 - - - - - - - vpmovq2m %ymm0, %k0 -- 2.7.4