diff options
author | Craig Topper <craig.topper@intel.com> | 2017-10-15 16:41:15 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2017-10-15 16:41:15 +0000 |
commit | a1f9c9dd8be51ba6b08dd556f166a52b66cf1bc9 (patch) | |
tree | 4bd742757f6184d79fca3a1411e23a9ed89d0115 /llvm/lib | |
parent | 4b3876f7a3e5d08486523bafa4d9dc4194543058 (diff) | |
download | bcm5719-llvm-a1f9c9dd8be51ba6b08dd556f166a52b66cf1bc9.tar.gz bcm5719-llvm-a1f9c9dd8be51ba6b08dd556f166a52b66cf1bc9.zip |
[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
llvm-svn: 315859
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86.td | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/llvm/lib/Target/X86/X86.td b/llvm/lib/Target/X86/X86.td index 07e78adf928..2e7902a6064 100644 --- a/llvm/lib/Target/X86/X86.td +++ b/llvm/lib/Target/X86/X86.td @@ -579,7 +579,8 @@ def HSWFeatures : ProcessorFeatures<IVBFeatures.Value, [ 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<HSWFeatures.Value, [ ]>; class BroadwellProc<string Name> : ProcModel<Name, HaswellModel, BDWFeatures.Value, [ - ProcIntelBDW + ProcIntelBDW, + FeatureSlowBTMem ]>; def : BroadwellProc<"broadwell">; @@ -606,7 +608,8 @@ def SKLFeatures : ProcessorFeatures<BDWFeatures.Value, [ class SkylakeClientProc<string Name> : ProcModel<Name, SkylakeClientModel, SKLFeatures.Value, [ - ProcIntelSKL + ProcIntelSKL, + FeatureSlowBTMem ]>; def : SkylakeClientProc<"skylake">; @@ -629,6 +632,7 @@ def KNLFeatures : ProcessorFeatures<IVBFeatures.Value, [ 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<SKLFeatures.Value, [ 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<SKXFeatures.Value, [ class CannonlakeProc<string Name> : ProcModel<Name, HaswellModel, CNLFeatures.Value, [ - ProcIntelCNL + ProcIntelCNL, + FeatureSlowBTMem ]>; def : CannonlakeProc<"cannonlake">; |