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

llvm-svn: 351827
This commit is contained in:
Simon Pilgrim 2019-01-22 14:53:52 +00:00
parent 32cd41f229
commit 1d8d6c3bfb
8 changed files with 64 additions and 8 deletions

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 2 2 0.50 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 2 2 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 6 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 2 2 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 6 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 2 2 1.00 tzcntq %rax, %rcx
@ -98,7 +103,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18]
# CHECK-NEXT: 6.00 6.00 - - - 14.00 14.00 - - - - - - - - - - - - 6.00 6.00 - -
# CHECK-NEXT: 6.50 6.50 - - - 16.00 16.00 - - - - - - - - - - - - 6.50 6.50 - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18] Instructions:
@ -122,6 +127,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 0.50 0.50 - - - 0.50 0.50 - - - - - - - - - - - - 0.50 0.50 - - blsrl (%rax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - blsrq %rax, %rcx
# CHECK-NEXT: 0.50 0.50 - - - 0.50 0.50 - - - - - - - - - - - - 0.50 0.50 - - blsrq (%rax), %rcx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: 0.50 0.50 - - - 1.00 1.00 - - - - - - - - - - - - 0.50 0.50 - - tzcntw (%rax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: 0.50 0.50 - - - 1.00 1.00 - - - - - - - - - - - - 0.50 0.50 - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 1 0.50 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 3 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 8 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 3 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 8 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 3 1.00 tzcntq %rax, %rcx
@ -85,7 +90,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 2.00 14.00 6.00 6.00 - 10.00 2.00 -
# CHECK-NEXT: - - 2.00 16.00 6.50 6.50 - 10.00 2.00 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -109,6 +114,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrl (%rax), %ecx
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - blsrq %rax, %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrq (%rax), %rcx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntw (%rax), %cx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 5 1.00 * blsrl (%rax), %ecx
# CHECK-NEXT: 2 2 1.00 blsrq %rax, %rcx
# CHECK-NEXT: 2 5 1.00 * blsrq (%rax), %rcx
# CHECK-NEXT: 2 2 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 5 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 2 2 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 5 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 2 2 1.00 tzcntq %rax, %rcx
@ -89,7 +94,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]
# CHECK-NEXT: 20.00 20.00 - - - - - 12.00 - - - - - -
# CHECK-NEXT: 22.00 22.00 - - - - - 13.00 - - - - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Instructions:
@ -113,6 +118,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - - - - - - blsrl (%rax), %ecx
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - - blsrq %rax, %rcx
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - - - - - - blsrq (%rax), %rcx
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - - - - - - tzcntw (%rax), %cx
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - - - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 1 0.33 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 3 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 8 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 3 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 8 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 3 1.00 tzcntq %rax, %rcx
@ -83,7 +88,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
# CHECK-NEXT: - - 7.33 13.33 - 7.33 6.00 6.00
# CHECK-NEXT: - - 7.33 15.33 - 7.33 6.50 6.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@ -107,6 +112,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 blsrl (%rax), %ecx
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - blsrq %rax, %rcx
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 blsrq (%rax), %rcx
# CHECK-NEXT: - - - 1.00 - - - - tzcntw %ax, %cx
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 tzcntw (%rax), %cx
# CHECK-NEXT: - - - 1.00 - - - - tzcntl %eax, %ecx
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 tzcntl (%rax), %ecx
# CHECK-NEXT: - - - 1.00 - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 1 0.50 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 3 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 8 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 3 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 8 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 3 1.00 tzcntq %rax, %rcx
@ -85,7 +90,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 2.00 14.00 6.00 6.00 - 10.00 2.00 -
# CHECK-NEXT: - - 2.00 16.00 6.50 6.50 - 10.00 2.00 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -109,6 +114,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrl (%rax), %ecx
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - blsrq %rax, %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrq (%rax), %rcx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntw (%rax), %cx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 1 0.50 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 3 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 8 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 3 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 8 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 3 1.00 tzcntq %rax, %rcx
@ -85,7 +90,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 2.00 14.00 6.00 6.00 - 10.00 2.00 -
# CHECK-NEXT: - - 2.00 16.00 6.50 6.50 - 10.00 2.00 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -109,6 +114,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrl (%rax), %ecx
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - blsrq %rax, %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrq (%rax), %rcx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntw (%rax), %cx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 2 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 1 0.50 blsrq %rax, %rcx
# CHECK-NEXT: 2 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 3 1.00 tzcntw %ax, %cx
# CHECK-NEXT: 2 8 1.00 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 3 1.00 tzcntl %eax, %ecx
# CHECK-NEXT: 2 8 1.00 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 3 1.00 tzcntq %rax, %rcx
@ -85,7 +90,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
# CHECK-NEXT: - - 2.00 14.00 6.00 6.00 - 10.00 2.00 -
# CHECK-NEXT: - - 2.00 16.00 6.50 6.50 - 10.00 2.00 -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@ -109,6 +114,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrl (%rax), %ecx
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - blsrq %rax, %rcx
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - blsrq (%rax), %rcx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntw (%rax), %cx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - - 1.00 - - - - - - tzcntq %rax, %rcx

View File

@ -31,6 +31,9 @@ blsr (%rax), %ecx
blsr %rax, %rcx
blsr (%rax), %rcx
tzcnt %ax, %cx
tzcnt (%rax), %cx
tzcnt %eax, %ecx
tzcnt (%rax), %ecx
@ -66,6 +69,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 1 6 0.50 * blsrl (%rax), %ecx
# CHECK-NEXT: 1 2 0.25 blsrq %rax, %rcx
# CHECK-NEXT: 1 6 0.50 * blsrq (%rax), %rcx
# CHECK-NEXT: 1 2 0.25 tzcntw %ax, %cx
# CHECK-NEXT: 2 6 0.50 * tzcntw (%rax), %cx
# CHECK-NEXT: 1 2 0.25 tzcntl %eax, %ecx
# CHECK-NEXT: 2 6 0.50 * tzcntl (%rax), %ecx
# CHECK-NEXT: 1 2 0.25 tzcntq %rax, %rcx
@ -87,7 +92,7 @@ tzcnt (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
# CHECK-NEXT: 6.00 6.00 6.00 6.00 6.00 6.00 - - - - - -
# CHECK-NEXT: 6.50 6.50 6.50 6.50 6.50 6.50 - - - - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@ -111,6 +116,8 @@ tzcnt (%rax), %rcx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - blsrl (%rax), %ecx
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - blsrq %rax, %rcx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - blsrq (%rax), %rcx
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - tzcntw %ax, %cx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - tzcntw (%rax), %cx
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - tzcntl %eax, %ecx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - tzcntl (%rax), %ecx
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - tzcntq %rax, %rcx