diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-09-27 16:39:52 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2018-09-27 16:39:52 +0000 |
| commit | dd744f158a84a81922c04fe34569f437d038bec3 (patch) | |
| tree | ddbc618a14d7cfe6e3a44bf4360d681e01380509 | |
| parent | 29cf499bca28e747e0e20b9c8834f896c9a20550 (diff) | |
| download | bcm5719-llvm-dd744f158a84a81922c04fe34569f437d038bec3.tar.gz bcm5719-llvm-dd744f158a84a81922c04fe34569f437d038bec3.zip | |
[X86][Btver2] BTC/BTR/BTS instructions take 2uops not 1
llvm-svn: 343234
| -rw-r--r-- | llvm/lib/Target/X86/X86ScheduleBtVer2.td | 2 | ||||
| -rw-r--r-- | llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s | 36 |
2 files changed, 19 insertions, 19 deletions
diff --git a/llvm/lib/Target/X86/X86ScheduleBtVer2.td b/llvm/lib/Target/X86/X86ScheduleBtVer2.td index 64fbbb05ab6..0c9410a2c60 100644 --- a/llvm/lib/Target/X86/X86ScheduleBtVer2.td +++ b/llvm/lib/Target/X86/X86ScheduleBtVer2.td @@ -202,7 +202,7 @@ def : WriteRes<WriteSETCCStore, [JALU01,JSAGU]>; def : WriteRes<WriteLAHFSAHF, [JALU01]>; defm : X86WriteRes<WriteBitTest, [JALU01], 1, [1], 1>; -defm : X86WriteRes<WriteBitTestSet, [JALU01], 1, [1], 1>; +defm : X86WriteRes<WriteBitTestSet, [JALU01], 1, [1], 2>; // This is for simple LEAs with one or two input operands. def : WriteRes<WriteLEA, [JALU01]>; diff --git a/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s index df1fa381d01..27280db8990 100644 --- a/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s +++ b/llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s @@ -966,49 +966,49 @@ xorq (%rax), %rdi # CHECK-NEXT: 1 1 0.50 bswapl %eax # CHECK-NEXT: 1 1 0.50 bswapq %rax # CHECK-NEXT: 1 1 0.50 btw %si, %di -# CHECK-NEXT: 1 1 0.50 btcw %si, %di -# CHECK-NEXT: 1 1 0.50 btrw %si, %di -# CHECK-NEXT: 1 1 0.50 btsw %si, %di +# CHECK-NEXT: 2 1 0.50 btcw %si, %di +# CHECK-NEXT: 2 1 0.50 btrw %si, %di +# CHECK-NEXT: 2 1 0.50 btsw %si, %di # CHECK-NEXT: 1 4 1.00 * btw %si, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcw %si, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrw %si, (%rax) # CHECK-NEXT: 2 4 1.00 * * btsw %si, (%rax) # CHECK-NEXT: 1 1 0.50 btw $7, %di -# CHECK-NEXT: 1 1 0.50 btcw $7, %di -# CHECK-NEXT: 1 1 0.50 btrw $7, %di -# CHECK-NEXT: 1 1 0.50 btsw $7, %di +# CHECK-NEXT: 2 1 0.50 btcw $7, %di +# CHECK-NEXT: 2 1 0.50 btrw $7, %di +# CHECK-NEXT: 2 1 0.50 btsw $7, %di # CHECK-NEXT: 1 1 0.50 * btw $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcw $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrw $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btsw $7, (%rax) # CHECK-NEXT: 1 1 0.50 btl %esi, %edi -# CHECK-NEXT: 1 1 0.50 btcl %esi, %edi -# CHECK-NEXT: 1 1 0.50 btrl %esi, %edi -# CHECK-NEXT: 1 1 0.50 btsl %esi, %edi +# CHECK-NEXT: 2 1 0.50 btcl %esi, %edi +# CHECK-NEXT: 2 1 0.50 btrl %esi, %edi +# CHECK-NEXT: 2 1 0.50 btsl %esi, %edi # CHECK-NEXT: 1 4 1.00 * btl %esi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcl %esi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrl %esi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btsl %esi, (%rax) # CHECK-NEXT: 1 1 0.50 btl $7, %edi -# CHECK-NEXT: 1 1 0.50 btcl $7, %edi -# CHECK-NEXT: 1 1 0.50 btrl $7, %edi -# CHECK-NEXT: 1 1 0.50 btsl $7, %edi +# CHECK-NEXT: 2 1 0.50 btcl $7, %edi +# CHECK-NEXT: 2 1 0.50 btrl $7, %edi +# CHECK-NEXT: 2 1 0.50 btsl $7, %edi # CHECK-NEXT: 1 1 0.50 * btl $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcl $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrl $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btsl $7, (%rax) # CHECK-NEXT: 1 1 0.50 btq %rsi, %rdi -# CHECK-NEXT: 1 1 0.50 btcq %rsi, %rdi -# CHECK-NEXT: 1 1 0.50 btrq %rsi, %rdi -# CHECK-NEXT: 1 1 0.50 btsq %rsi, %rdi +# CHECK-NEXT: 2 1 0.50 btcq %rsi, %rdi +# CHECK-NEXT: 2 1 0.50 btrq %rsi, %rdi +# CHECK-NEXT: 2 1 0.50 btsq %rsi, %rdi # CHECK-NEXT: 1 4 1.00 * btq %rsi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcq %rsi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrq %rsi, (%rax) # CHECK-NEXT: 2 4 1.00 * * btsq %rsi, (%rax) # CHECK-NEXT: 1 1 0.50 btq $7, %rdi -# CHECK-NEXT: 1 1 0.50 btcq $7, %rdi -# CHECK-NEXT: 1 1 0.50 btrq $7, %rdi -# CHECK-NEXT: 1 1 0.50 btsq $7, %rdi +# CHECK-NEXT: 2 1 0.50 btcq $7, %rdi +# CHECK-NEXT: 2 1 0.50 btrq $7, %rdi +# CHECK-NEXT: 2 1 0.50 btsq $7, %rdi # CHECK-NEXT: 1 1 0.50 * btq $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btcq $7, (%rax) # CHECK-NEXT: 2 4 1.00 * * btrq $7, (%rax) |

