diff options
| author | Craig Topper <craig.topper@intel.com> | 2018-04-19 19:25:24 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2018-04-19 19:25:24 +0000 |
| commit | bc895a3afcee82a52a1dc61bc74462f081778061 (patch) | |
| tree | 8e88ee962f6da3e78a0b6806d725fc66aac0f954 /llvm/lib/Target | |
| parent | 32e62f9c5b85d481afbe277ecdb65476372b3411 (diff) | |
| download | bcm5719-llvm-bc895a3afcee82a52a1dc61bc74462f081778061.tar.gz bcm5719-llvm-bc895a3afcee82a52a1dc61bc74462f081778061.zip | |
[X86] Enable popcnt false dependency breaking on Silvermont and Goldmont.
Silvermont and Goldmont have the same issue on popcnt as Sandy Bridge, Haswell, Broadwell, and Skylake. Believe it is fixed in Goldmont Plus.
llvm-svn: 330358
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86.td | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86.td b/llvm/lib/Target/X86/X86.td index aa1470ebf51..7ca77b13942 100644 --- a/llvm/lib/Target/X86/X86.td +++ b/llvm/lib/Target/X86/X86.td @@ -563,7 +563,8 @@ class SilvermontProc<string Name> : ProcessorModel<Name, SLMModel, [ FeatureSlowIncDec, FeatureSlowPMULLD, FeatureRDRAND, - FeatureLAHFSAHF + FeatureLAHFSAHF, + FeaturePOPCNTFalseDeps ]>; def : SilvermontProc<"silvermont">; def : SilvermontProc<"slm">; // Legacy alias. @@ -607,7 +608,10 @@ def GLMFeatures : ProcessorFeatures<[], [ ]>; class GoldmontProc<string Name> : ProcModel<Name, SLMModel, - GLMFeatures.Value, [ ProcIntelGLM ]>; + GLMFeatures.Value, [ + ProcIntelGLM, + FeaturePOPCNTFalseDeps +]>; def : GoldmontProc<"goldmont">; class GoldmontPlusProc<string Name> : ProcModel<Name, SLMModel, |

