diff options
author | Craig Topper <craig.topper@gmail.com> | 2015-10-14 05:37:38 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2015-10-14 05:37:38 +0000 |
commit | 0ee356951ae281975774c813b8932422a8d90e94 (patch) | |
tree | aeea86c7f9225f90612e6657f733088a3ca7cf6c | |
parent | 87ef39a6a87664a6f01d4bf62cf8d83496421d6f (diff) | |
download | bcm5719-llvm-0ee356951ae281975774c813b8932422a8d90e94.tar.gz bcm5719-llvm-0ee356951ae281975774c813b8932422a8d90e94.zip |
[X86] Add XSAVE feature flags to their various processors.
llvm-svn: 250268
-rw-r--r-- | llvm/lib/Target/X86/X86.td | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86.td b/llvm/lib/Target/X86/X86.td index 3379a4254c5..90d84ed8063 100644 --- a/llvm/lib/Target/X86/X86.td +++ b/llvm/lib/Target/X86/X86.td @@ -347,7 +347,9 @@ class SandyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [ FeatureSlowUAMem32, FeaturePOPCNT, FeatureAES, - FeaturePCLMUL + FeaturePCLMUL, + FeatureXSAVE, + FeatureXSAVEOPT ]>; def : SandyBridgeProc<"sandybridge">; def : SandyBridgeProc<"corei7-avx">; // Legacy alias. @@ -361,6 +363,8 @@ class IvyBridgeProc<string Name> : ProcessorModel<Name, SandyBridgeModel, [ FeaturePOPCNT, FeatureAES, FeaturePCLMUL, + FeatureXSAVE, + FeatureXSAVEOPT, FeatureRDRAND, FeatureF16C, FeatureFSGSBase @@ -377,6 +381,8 @@ class HaswellProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeatureAES, FeaturePCLMUL, FeatureRDRAND, + FeatureXSAVE, + FeatureXSAVEOPT, FeatureF16C, FeatureFSGSBase, FeatureMOVBE, @@ -399,6 +405,8 @@ class BroadwellProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeaturePOPCNT, FeatureAES, FeaturePCLMUL, + FeatureXSAVE, + FeatureXSAVEOPT, FeatureRDRAND, FeatureF16C, FeatureFSGSBase, @@ -454,6 +462,8 @@ class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeaturePOPCNT, FeatureAES, FeaturePCLMUL, + FeatureXSAVE, + FeatureXSAVEOPT, FeatureRDRAND, FeatureF16C, FeatureFSGSBase, @@ -467,7 +477,9 @@ class SkylakeProc<string Name> : ProcessorModel<Name, HaswellModel, [ FeatureADX, FeatureRDSEED, FeatureSlowIncDec, - FeatureMPX + FeatureMPX, + FeatureXSAVEC, + FeatureXSAVES ]>; def : SkylakeProc<"skylake">; def : SkylakeProc<"skx">; // Legacy alias. @@ -527,6 +539,7 @@ def : Proc<"btver1", [ FeaturePRFCHW, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, FeatureSlowSHLD ]>; @@ -544,6 +557,8 @@ def : ProcessorModel<"btver2", BtVer2Model, [ FeatureMOVBE, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, + FeatureXSAVEOPT, FeatureSlowSHLD ]>; @@ -560,6 +575,7 @@ def : Proc<"bdver1", [ FeatureSSE4A, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, FeatureSlowSHLD ]>; // Piledriver @@ -576,6 +592,7 @@ def : Proc<"bdver2", [ FeatureF16C, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, FeatureBMI, FeatureTBM, FeatureFMA, @@ -596,9 +613,11 @@ def : Proc<"bdver3", [ FeatureF16C, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, FeatureBMI, FeatureTBM, FeatureFMA, + FeatureXSAVEOPT, FeatureSlowSHLD, FeatureFSGSBase ]>; @@ -616,11 +635,12 @@ def : Proc<"bdver4", [ FeatureF16C, FeatureLZCNT, FeaturePOPCNT, + FeatureXSAVE, FeatureBMI, FeatureBMI2, FeatureTBM, FeatureFMA, - FeatureSSE4A, + FeatureXSAVEOPT, FeatureFSGSBase ]>; |