diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-09-30 17:01:59 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-09-30 17:01:59 +0000 |
| commit | 20623f2343487a73d3e9b8990b837a65786f7da8 (patch) | |
| tree | ca8d674ba204090d552b142853ffb786f4f73bf1 /llvm/test/tools/llvm-mca/X86/Generic | |
| parent | 4f5693ac8de445d849364f999dff58facaa09019 (diff) | |
| download | bcm5719-llvm-20623f2343487a73d3e9b8990b837a65786f7da8.tar.gz bcm5719-llvm-20623f2343487a73d3e9b8990b837a65786f7da8.zip | |
[LLVM-MCA][X86] Add some AVX512 tests
These are going to be necessary to check I don't mess up when I start cleaning up all the remaining vector integer overrides
llvm-svn: 343414
Diffstat (limited to 'llvm/test/tools/llvm-mca/X86/Generic')
| -rw-r--r-- | llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s | 192 |
1 files changed, 191 insertions, 1 deletions
diff --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s index 6c6d34762cf..b5d40ed766e 100644 --- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s +++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s @@ -43,6 +43,76 @@ vmulps (%rax), %zmm17, %zmm19 {k1} vmulps %zmm16, %zmm17, %zmm19 {z}{k1} vmulps (%rax), %zmm17, %zmm19 {z}{k1} +vpabsd %zmm16, %zmm19 +vpabsd (%rax), %zmm19 +vpabsd %zmm16, %zmm19 {k1} +vpabsd (%rax), %zmm19 {k1} +vpabsd %zmm16, %zmm19 {z}{k1} +vpabsd (%rax), %zmm19 {z}{k1} + +vpabsq %zmm16, %zmm19 +vpabsq (%rax), %zmm19 +vpabsq %zmm16, %zmm19 {k1} +vpabsq (%rax), %zmm19 {k1} +vpabsq %zmm16, %zmm19 {z}{k1} +vpabsq (%rax), %zmm19 {z}{k1} + +vpaddb %zmm16, %zmm17, %zmm19 +vpaddb (%rax), %zmm17, %zmm19 +vpaddb %zmm16, %zmm17, %zmm19 {k1} +vpaddb (%rax), %zmm17, %zmm19 {k1} +vpaddb %zmm16, %zmm17, %zmm19 {z}{k1} +vpaddb (%rax), %zmm17, %zmm19 {z}{k1} + +vpaddd %zmm16, %zmm17, %zmm19 +vpaddd (%rax), %zmm17, %zmm19 +vpaddd %zmm16, %zmm17, %zmm19 {k1} +vpaddd (%rax), %zmm17, %zmm19 {k1} +vpaddd %zmm16, %zmm17, %zmm19 {z}{k1} +vpaddd (%rax), %zmm17, %zmm19 {z}{k1} + +vpaddq %zmm16, %zmm17, %zmm19 +vpaddq (%rax), %zmm17, %zmm19 +vpaddq %zmm16, %zmm17, %zmm19 {k1} +vpaddq (%rax), %zmm17, %zmm19 {k1} +vpaddq %zmm16, %zmm17, %zmm19 {z}{k1} +vpaddq (%rax), %zmm17, %zmm19 {z}{k1} + +vpaddw %zmm16, %zmm17, %zmm19 +vpaddw (%rax), %zmm17, %zmm19 +vpaddw %zmm16, %zmm17, %zmm19 {k1} +vpaddw (%rax), %zmm17, %zmm19 {k1} +vpaddw %zmm16, %zmm17, %zmm19 {z}{k1} +vpaddw (%rax), %zmm17, %zmm19 {z}{k1} + +vpsubb %zmm16, %zmm17, %zmm19 +vpsubb (%rax), %zmm17, %zmm19 +vpsubb %zmm16, %zmm17, %zmm19 {k1} +vpsubb (%rax), %zmm17, %zmm19 {k1} +vpsubb %zmm16, %zmm17, %zmm19 {z}{k1} +vpsubb (%rax), %zmm17, %zmm19 {z}{k1} + +vpsubd %zmm16, %zmm17, %zmm19 +vpsubd (%rax), %zmm17, %zmm19 +vpsubd %zmm16, %zmm17, %zmm19 {k1} +vpsubd (%rax), %zmm17, %zmm19 {k1} +vpsubd %zmm16, %zmm17, %zmm19 {z}{k1} +vpsubd (%rax), %zmm17, %zmm19 {z}{k1} + +vpsubq %zmm16, %zmm17, %zmm19 +vpsubq (%rax), %zmm17, %zmm19 +vpsubq %zmm16, %zmm17, %zmm19 {k1} +vpsubq (%rax), %zmm17, %zmm19 {k1} +vpsubq %zmm16, %zmm17, %zmm19 {z}{k1} +vpsubq (%rax), %zmm17, %zmm19 {z}{k1} + +vpsubw %zmm16, %zmm17, %zmm19 +vpsubw (%rax), %zmm17, %zmm19 +vpsubw %zmm16, %zmm17, %zmm19 {k1} +vpsubw (%rax), %zmm17, %zmm19 {k1} +vpsubw %zmm16, %zmm17, %zmm19 {z}{k1} +vpsubw (%rax), %zmm17, %zmm19 {z}{k1} + vsubpd %zmm16, %zmm17, %zmm19 vsubpd (%rax), %zmm17, %zmm19 vsubpd %zmm16, %zmm17, %zmm19 {k1} @@ -102,6 +172,66 @@ vsubps (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: 2 12 1.00 * vmulps (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: 1 5 1.00 vmulps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 2 12 1.00 * vmulps (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpabsd %zmm16, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpabsd (%rax), %zmm19 +# CHECK-NEXT: 1 1 0.50 vpabsd %zmm16, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpabsd (%rax), %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpabsd %zmm16, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpabsd (%rax), %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpabsq %zmm16, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpabsq (%rax), %zmm19 +# CHECK-NEXT: 1 1 0.50 vpabsq %zmm16, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpabsq (%rax), %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpabsq %zmm16, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpabsq (%rax), %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpaddb %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpaddb (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpaddd %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpaddd (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpaddd %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpaddd (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpaddd %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpaddd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpaddq %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpaddq (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpaddq %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpaddq (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpaddq %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpaddq (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpaddw (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpaddw %zmm16, %zmm17, %zmm19 {%k1} +# 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 0.50 vpsubb %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpsubb %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpsubb %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpsubb (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpsubd %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpsubd (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpsubd %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpsubd (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpsubd %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpsubd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpsubq %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpsubq (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpsubq %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpsubq (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpsubq %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpsubq (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 +# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: 1 1 0.50 vpsubw %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: 2 8 0.50 * vpsubw (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: 1 3 1.00 vsubpd %zmm16, %zmm17, %zmm19 # CHECK-NEXT: 2 10 1.00 * vsubpd (%rax), %zmm17, %zmm19 # CHECK-NEXT: 1 3 1.00 vsubpd %zmm16, %zmm17, %zmm19 {%k1} @@ -127,7 +257,7 @@ vsubps (%rax), %zmm17, %zmm19 {z}{k1} # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] -# CHECK-NEXT: - 432.00 42.00 24.00 - 6.00 12.00 12.00 +# CHECK-NEXT: - 432.00 42.00 54.00 - 36.00 27.00 27.00 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: @@ -167,6 +297,66 @@ vsubps (%rax), %zmm17, %zmm19 {z}{k1} # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vmulps (%rax), %zmm17, %zmm19 {%k1} # CHECK-NEXT: - - 1.00 - - - - - vmulps %zmm16, %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - 1.00 - - - 0.50 0.50 vmulps (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsd %zmm16, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsd (%rax), %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsd %zmm16, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsd (%rax), %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsd %zmm16, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsd (%rax), %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsq %zmm16, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsq (%rax), %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsq %zmm16, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsq (%rax), %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpabsq %zmm16, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpabsq (%rax), %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddb %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddb (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddd %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddd (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddd %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddd (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddd %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddq %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddq (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddq %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddq (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddq %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddq (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpaddw (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpaddw %zmm16, %zmm17, %zmm19 {%k1} +# 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: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubb %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubb (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubd %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubd (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubd %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubd (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubd %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubd (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubq %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubq (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubq %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubq (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubq %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubq (%rax), %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 {%k1} +# CHECK-NEXT: - - - 0.50 - 0.50 - - vpsubw %zmm16, %zmm17, %zmm19 {%k1} {z} +# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpsubw (%rax), %zmm17, %zmm19 {%k1} {z} # CHECK-NEXT: - - - 1.00 - - - - vsubpd %zmm16, %zmm17, %zmm19 # CHECK-NEXT: - - - 1.00 - - 0.50 0.50 vsubpd (%rax), %zmm17, %zmm19 # CHECK-NEXT: - - - 1.00 - - - - vsubpd %zmm16, %zmm17, %zmm19 {%k1} |

