1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00

[llvm-mca][X86] Add missing vperm2i128 tests

llvm-svn: 351828
This commit is contained in:
Simon Pilgrim 2019-01-22 14:54:24 +00:00
parent d46164e1c4
commit b236c0b7ae
6 changed files with 48 additions and 6 deletions

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 11 1.00 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 7 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 9 1.00 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 9 1.00 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermpd $1, %ymm0, %ymm2
@ -771,7 +776,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 94.67 58.67 85.17 85.17 13.00 235.67 2.00 1.67
# CHECK-NEXT: - - 94.67 58.67 85.67 85.67 13.00 237.67 2.00 1.67
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -873,6 +878,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermpd $1, %ymm0, %ymm2

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 8 0.50 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 1.00 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 1.00 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 1.00 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 1.00 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 1.00 vpermpd $1, %ymm0, %ymm2
@ -769,7 +774,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
# CHECK-NEXT: - - 75.67 88.67 5.00 166.67 78.00 78.00
# CHECK-NEXT: - - 75.67 88.67 5.00 168.67 78.50 78.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@ -871,6 +876,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 - 0.50 - - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 - 0.50 0.50 0.50 vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - 1.00 - - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - 1.00 - - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - - 1.00 0.50 0.50 vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - 1.00 - - vpermpd $1, %ymm0, %ymm2

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 12 1.00 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermpd $1, %ymm0, %ymm2
@ -771,7 +776,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 202.67 89.67 97.17 97.17 5.00 280.67 28.00 1.67
# CHECK-NEXT: - - 202.67 89.67 97.67 97.67 5.00 282.67 28.00 1.67
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -873,6 +878,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermpd $1, %ymm0, %ymm2

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermpd $1, %ymm0, %ymm2
@ -771,7 +776,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 110.33 89.33 85.17 85.17 1.00 162.33 - 1.67
# CHECK-NEXT: - - 110.33 89.33 85.67 85.67 1.00 164.33 - 1.67
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -873,6 +878,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermpd $1, %ymm0, %ymm2

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.50 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 8 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 2 10 1.00 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vpermpd $1, %ymm0, %ymm2
@ -771,7 +776,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 110.33 89.33 85.17 85.17 1.00 162.33 - 1.67
# CHECK-NEXT: - - 110.33 89.33 85.67 85.67 1.00 164.33 - 1.67
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -873,6 +878,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - vpermpd $1, %ymm0, %ymm2

View File

@ -149,6 +149,9 @@ vpcmpgtq (%rax), %ymm1, %ymm2
vpcmpgtw %ymm0, %ymm1, %ymm2
vpcmpgtw (%rax), %ymm1, %ymm2
vperm2i128 $1, %ymm0, %ymm1, %ymm2
vperm2i128 $1, (%rax), %ymm1, %ymm2
vpermd %ymm0, %ymm1, %ymm2
vpermd (%rax), %ymm1, %ymm2
@ -555,6 +558,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 2 8 1.00 * vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 1 0.25 vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 1 8 0.50 * vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 0.25 vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 1 9 0.50 * vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 0.25 vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 1 9 0.50 * vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 100 0.25 vpermpd $1, %ymm0, %ymm2
@ -773,7 +778,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
# CHECK-NEXT: 63.50 63.50 - - - - - 72.67 75.17 84.50 42.67 -
# CHECK-NEXT: 64.00 64.00 - - - - - 73.17 75.67 85.00 43.17 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@ -875,6 +880,8 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - 1.00 - vpcmpgtq (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vpcmpgtw %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vpcmpgtw (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vperm2i128 $1, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vperm2i128 $1, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vpermd %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 0.50 0.50 - - - - - 0.25 0.25 0.25 0.25 - vpermd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 0.25 0.25 0.25 0.25 - vpermpd $1, %ymm0, %ymm2