[llvm] r343200 - [X86][Btver2] TZCNT instructions take 2uops not 1

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 27 05:28:48 PDT 2018


Author: rksimon
Date: Thu Sep 27 05:28:47 2018
New Revision: 343200

URL: http://llvm.org/viewvc/llvm-project?rev=343200&view=rev
Log:
[X86][Btver2] TZCNT instructions take 2uops not 1

Modified:
    llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td
    llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-bmi1.s

Modified: llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td?rev=343200&r1=343199&r2=343200&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td (original)
+++ llvm/trunk/lib/Target/X86/X86ScheduleBtVer2.td Thu Sep 27 05:28:47 2018
@@ -210,7 +210,7 @@ defm : JWriteResIntPair<WriteBSF, [JALU0
 defm : JWriteResIntPair<WriteBSR, [JALU01], 5, [4], 8>;
 defm : JWriteResIntPair<WritePOPCNT,         [JALU01], 1>;
 defm : JWriteResIntPair<WriteLZCNT,          [JALU01], 1>;
-defm : JWriteResIntPair<WriteTZCNT,          [JALU01], 2, [2]>;
+defm : JWriteResIntPair<WriteTZCNT,          [JALU01], 2, [2], 2>;
 
 // BMI1 BEXTR/BLS, BMI2 BZHI
 defm : JWriteResIntPair<WriteBEXTR, [JALU01], 1>;

Modified: llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-bmi1.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-bmi1.s?rev=343200&r1=343199&r2=343200&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-bmi1.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-bmi1.s Thu Sep 27 05:28:47 2018
@@ -66,10 +66,10 @@ tzcnt       (%rax), %rcx
 # CHECK-NEXT:  1      5     1.00    *                   blsrl	(%rax), %ecx
 # CHECK-NEXT:  1      2     1.00                        blsrq	%rax, %rcx
 # CHECK-NEXT:  1      5     1.00    *                   blsrq	(%rax), %rcx
-# CHECK-NEXT:  1      2     1.00                        tzcntl	%eax, %ecx
-# CHECK-NEXT:  1      5     1.00    *                   tzcntl	(%rax), %ecx
-# CHECK-NEXT:  1      2     1.00                        tzcntq	%rax, %rcx
-# CHECK-NEXT:  1      5     1.00    *                   tzcntq	(%rax), %rcx
+# 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
+# CHECK-NEXT:  2      5     1.00    *                   tzcntq	(%rax), %rcx
 
 # CHECK:      Resources:
 # CHECK-NEXT: [0]   - JALU0




More information about the llvm-commits mailing list