diff options
-rw-r--r-- | llvm/lib/Target/X86/X86.td | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86.td b/llvm/lib/Target/X86/X86.td index 53ac078b309..06b8b466674 100644 --- a/llvm/lib/Target/X86/X86.td +++ b/llvm/lib/Target/X86/X86.td @@ -511,7 +511,6 @@ class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeatureLZCNT, FeatureBMI, FeatureBMI2, - FeatureVBMI, FeatureFMA, FeatureRTM, FeatureHLE, @@ -526,6 +525,43 @@ class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel, [ def : SkylakeProc<"skylake">; def : SkylakeProc<"skx">; // Legacy alias. +class CannonlakeProc<string Name> : ProcessorModel<Name, HaswellModel, [ + FeatureMMX, + FeatureAVX512, + FeatureFXSR, + FeatureCDI, + FeatureDQI, + FeatureBWI, + FeatureVLX, + FeaturePKU, + FeatureCMPXCHG16B, + FeatureSlowBTMem, + FeaturePOPCNT, + FeatureAES, + FeaturePCLMUL, + FeatureXSAVE, + FeatureXSAVEOPT, + FeatureRDRAND, + FeatureF16C, + FeatureFSGSBase, + FeatureMOVBE, + FeatureLZCNT, + FeatureBMI, + FeatureBMI2, + FeatureVBMI, + FeatureFMA, + FeatureRTM, + FeatureHLE, + FeatureADX, + FeatureRDSEED, + FeatureSlowIncDec, + FeatureMPX, + FeatureXSAVEC, + FeatureXSAVES, + FeatureLAHFSAHF +]>; +def : CannonlakeProc<"cannonlake">; +def : CannonlakeProc<"cnl">; // AMD CPUs. |