[llvm] e847704 - [X86][SLM] Fix BSR/BSF port usage

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 4 11:53:07 PDT 2021


Author: Simon Pilgrim
Date: 2021-10-04T19:52:53+01:00
New Revision: e8477045f6d8229a60f6d10c984ee84a3b05efdf

URL: https://github.com/llvm/llvm-project/commit/e8477045f6d8229a60f6d10c984ee84a3b05efdf
DIFF: https://github.com/llvm/llvm-project/commit/e8477045f6d8229a60f6d10c984ee84a3b05efdf.diff

LOG: [X86][SLM] Fix BSR/BSF port usage

Both ports are required for BitScan ops. Update the port usage and distributed throughput based off the most recent llvm-exegesis captures (PR36895) and what Intel AoM / Agner reports as well.

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86ScheduleSLM.td

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86ScheduleSLM.td b/llvm/lib/Target/X86/X86ScheduleSLM.td
index 158c38aa4e49..51882bcab73d 100644
--- a/llvm/lib/Target/X86/X86ScheduleSLM.td
+++ b/llvm/lib/Target/X86/X86ScheduleSLM.td
@@ -156,8 +156,8 @@ defm : X86WriteRes<WriteBitTestSetRegLd, [SLM_IEC_RSV01, SLM_MEC_RSV], 3, [1,1],
 def : WriteRes<WriteLEA, [SLM_IEC_RSV1]>;
 
 // Bit counts.
-defm : SLMWriteResPair<WriteBSF, [SLM_IEC_RSV01], 10, [20], 10>;
-defm : SLMWriteResPair<WriteBSR, [SLM_IEC_RSV01], 10, [20], 10>;
+defm : SLMWriteResPair<WriteBSF, [SLM_IEC_RSV0, SLM_IEC_RSV1], 10, [10,10], 10>;
+defm : SLMWriteResPair<WriteBSR, [SLM_IEC_RSV0, SLM_IEC_RSV1], 10, [10,10], 10>;
 defm : SLMWriteResPair<WriteLZCNT,          [SLM_IEC_RSV0], 3>;
 defm : SLMWriteResPair<WriteTZCNT,          [SLM_IEC_RSV0], 3>;
 defm : SLMWriteResPair<WritePOPCNT,         [SLM_IEC_RSV0], 3>;


        


More information about the llvm-commits mailing list