[llvm] r344972 - [X86] Remove unused entries from the X86ProcFamily enum. Add a note to discourage creation of new enum entries.
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 22 16:14:55 PDT 2018
Author: ctopper
Date: Mon Oct 22 16:14:55 2018
New Revision: 344972
URL: http://llvm.org/viewvc/llvm-project?rev=344972&view=rev
Log:
[X86] Remove unused entries from the X86ProcFamily enum. Add a note to discourage creation of new enum entries.
As we've learned multiple times, a coarse grained enum like this is not scalable and we should be migrating away from it.
Modified:
llvm/trunk/lib/Target/X86/X86.td
llvm/trunk/lib/Target/X86/X86Subtarget.h
Modified: llvm/trunk/lib/Target/X86/X86.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86.td?rev=344972&r1=344971&r2=344972&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86.td (original)
+++ llvm/trunk/lib/Target/X86/X86.td Mon Oct 22 16:14:55 2018
@@ -460,22 +460,8 @@ def ProcIntelGLP : SubtargetFeature<"gl
"Intel Goldmont Plus processors">;
def ProcIntelTRM : SubtargetFeature<"tremont", "X86ProcFamily", "IntelTRM",
"Intel Tremont processors">;
-def ProcIntelHSW : SubtargetFeature<"haswell", "X86ProcFamily",
- "IntelHaswell", "Intel Haswell processors">;
-def ProcIntelBDW : SubtargetFeature<"broadwell", "X86ProcFamily",
- "IntelBroadwell", "Intel Broadwell processors">;
-def ProcIntelSKL : SubtargetFeature<"skylake", "X86ProcFamily",
- "IntelSkylake", "Intel Skylake processors">;
def ProcIntelKNL : SubtargetFeature<"knl", "X86ProcFamily",
"IntelKNL", "Intel Knights Landing processors">;
-def ProcIntelSKX : SubtargetFeature<"skx", "X86ProcFamily",
- "IntelSKX", "Intel Skylake Server processors">;
-def ProcIntelCNL : SubtargetFeature<"cannonlake", "X86ProcFamily",
- "IntelCannonlake", "Intel Cannonlake processors">;
-def ProcIntelICL : SubtargetFeature<"icelake-client", "X86ProcFamily",
- "IntelIcelakeClient", "Intel Icelake processors">;
-def ProcIntelICX : SubtargetFeature<"icelake-server", "X86ProcFamily",
- "IntelIcelakeServer", "Intel Icelake Server processors">;
class Proc<string Name, list<SubtargetFeature> Features>
: ProcessorModel<Name, GenericModel, Features>;
@@ -787,7 +773,6 @@ def HSWFeatures : ProcessorFeatures<IVBF
class HaswellProc<string Name> : ProcModel<Name, HaswellModel,
HSWFeatures.Value, [
- ProcIntelHSW,
FeaturePOPCNTFalseDeps,
FeatureLZCNTFalseDeps
]>;
@@ -801,7 +786,6 @@ def BDWFeatures : ProcessorFeatures<HSWF
]>;
class BroadwellProc<string Name> : ProcModel<Name, BroadwellModel,
BDWFeatures.Value, [
- ProcIntelBDW,
FeaturePOPCNTFalseDeps,
FeatureLZCNTFalseDeps
]>;
@@ -818,7 +802,6 @@ def SKLFeatures : ProcessorFeatures<BDWF
class SkylakeClientProc<string Name> : ProcModel<Name, SkylakeClientModel,
SKLFeatures.Value, [
- ProcIntelSKL,
FeatureHasFastGather,
FeaturePOPCNTFalseDeps,
FeatureSGX
@@ -873,7 +856,6 @@ def SKXFeatures : ProcessorFeatures<SKLF
class SkylakeServerProc<string Name> : ProcModel<Name, SkylakeServerModel,
SKXFeatures.Value, [
- ProcIntelSKX,
FeatureHasFastGather,
FeaturePOPCNTFalseDeps
]>;
@@ -895,7 +877,6 @@ def CNLFeatures : ProcessorFeatures<SKLF
class CannonlakeProc<string Name> : ProcModel<Name, SkylakeServerModel,
CNLFeatures.Value, [
- ProcIntelCNL,
FeatureHasFastGather
]>;
def : CannonlakeProc<"cannonlake">;
@@ -914,14 +895,12 @@ def ICLFeatures : ProcessorFeatures<CNLF
class IcelakeClientProc<string Name> : ProcModel<Name, SkylakeServerModel,
ICLFeatures.Value, [
- ProcIntelICL,
FeatureHasFastGather
]>;
def : IcelakeClientProc<"icelake-client">;
class IcelakeServerProc<string Name> : ProcModel<Name, SkylakeServerModel,
ICLFeatures.Value, [
- ProcIntelICX,
FeaturePCONFIG,
FeatureWBNOINVD,
FeatureHasFastGather
Modified: llvm/trunk/lib/Target/X86/X86Subtarget.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86Subtarget.h?rev=344972&r1=344971&r2=344972&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86Subtarget.h (original)
+++ llvm/trunk/lib/Target/X86/X86Subtarget.h Mon Oct 22 16:14:55 2018
@@ -52,6 +52,8 @@ enum Style {
class X86Subtarget final : public X86GenSubtargetInfo {
public:
+ // NOTE: Do not add anything new to this list. Coarse, CPU name based flags
+ // are not a good idea. We should be migrating away from these.
enum X86ProcFamilyEnum {
Others,
IntelAtom,
@@ -59,14 +61,7 @@ public:
IntelGLM,
IntelGLP,
IntelTRM,
- IntelHaswell,
- IntelBroadwell,
- IntelSkylake,
IntelKNL,
- IntelSKX,
- IntelCannonlake,
- IntelIcelakeClient,
- IntelIcelakeServer,
};
protected:
More information about the llvm-commits
mailing list