[llvm] r315859 - [X86] Add FeatureSlowBTMem to Haswell, Broadwell, Skylake, Cannonlake, and Knights Landing CPUs.
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Sun Oct 15 09:41:15 PDT 2017
Author: ctopper
Date: Sun Oct 15 09:41:15 2017
New Revision: 315859
URL: http://llvm.org/viewvc/llvm-project?rev=315859&view=rev
Log:
[X86] Add FeatureSlowBTMem to Haswell, Broadwell, Skylake, Cannonlake, and Knights Landing CPUs.
Summary: I see nothing in Agner Fog's tables to indicate that this improved between Ivy Bridge and Haswell. It's also set for all Atom CPUs so I assume KNL should have it too.
Reviewers: RKSimon, zvi, gadi.haber
Reviewed By: gadi.haber
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D38890
Modified:
llvm/trunk/lib/Target/X86/X86.td
Modified: llvm/trunk/lib/Target/X86/X86.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86.td?rev=315859&r1=315858&r2=315859&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86.td (original)
+++ llvm/trunk/lib/Target/X86/X86.td Sun Oct 15 09:41:15 2017
@@ -579,7 +579,8 @@ def HSWFeatures : ProcessorFeatures<IVBF
class HaswellProc<string Name> : ProcModel<Name, HaswellModel,
HSWFeatures.Value, [
- ProcIntelHSW
+ ProcIntelHSW,
+ FeatureSlowBTMem
]>;
def : HaswellProc<"haswell">;
def : HaswellProc<"core-avx2">; // Legacy alias.
@@ -590,7 +591,8 @@ def BDWFeatures : ProcessorFeatures<HSWF
]>;
class BroadwellProc<string Name> : ProcModel<Name, HaswellModel,
BDWFeatures.Value, [
- ProcIntelBDW
+ ProcIntelBDW,
+ FeatureSlowBTMem
]>;
def : BroadwellProc<"broadwell">;
@@ -606,7 +608,8 @@ def SKLFeatures : ProcessorFeatures<BDWF
class SkylakeClientProc<string Name> : ProcModel<Name, SkylakeClientModel,
SKLFeatures.Value, [
- ProcIntelSKL
+ ProcIntelSKL,
+ FeatureSlowBTMem
]>;
def : SkylakeClientProc<"skylake">;
@@ -629,6 +632,7 @@ def KNLFeatures : ProcessorFeatures<IVBF
class KnightsLandingProc<string Name> : ProcModel<Name, HaswellModel,
KNLFeatures.Value, [
ProcIntelKNL,
+ FeatureSlowBTMem,
FeatureSlowTwoMemOps,
FeatureFastPartialYMMorZMMWrite
]>;
@@ -637,6 +641,7 @@ def : KnightsLandingProc<"knl">;
class KnightsMillProc<string Name> : ProcModel<Name, HaswellModel,
KNLFeatures.Value, [
ProcIntelKNL,
+ FeatureSlowBTMem,
FeatureSlowTwoMemOps,
FeatureFastPartialYMMorZMMWrite
]>;
@@ -654,8 +659,9 @@ def SKXFeatures : ProcessorFeatures<SKLF
class SkylakeServerProc<string Name> : ProcModel<Name, SkylakeServerModel,
SKXFeatures.Value, [
- ProcIntelSKX
- ]>;
+ ProcIntelSKX,
+ FeatureSlowBTMem
+]>;
def : SkylakeServerProc<"skylake-avx512">;
def : SkylakeServerProc<"skx">; // Legacy alias.
@@ -667,7 +673,8 @@ def CNLFeatures : ProcessorFeatures<SKXF
class CannonlakeProc<string Name> : ProcModel<Name, HaswellModel,
CNLFeatures.Value, [
- ProcIntelCNL
+ ProcIntelCNL,
+ FeatureSlowBTMem
]>;
def : CannonlakeProc<"cannonlake">;
More information about the llvm-commits
mailing list