[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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@330358 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Craig Topper 2018-04-19 19:25:24 +00:00
parent 6ff81c8a68
commit 6b49fde581
2 changed files with 11 additions and 5 deletions

View File

@ -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,

View File

@ -1,6 +1,8 @@
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=haswell -mattr=+lzcnt | FileCheck %s --check-prefix=HSW
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skylake -mattr=+lzcnt | FileCheck %s --check-prefix=SKL
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skx -mattr=+lzcnt | FileCheck %s --check-prefix=SKL
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=haswell | FileCheck %s --check-prefix=HSW
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skylake | FileCheck %s --check-prefix=SKL
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=skx | FileCheck %s --check-prefix=SKL
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=silvermont -mattr=+lzcnt,+bmi | FileCheck %s --check-prefix=SKL
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mcpu=goldmont -mattr=+lzcnt,+bmi | FileCheck %s --check-prefix=SKL
; This tests a fix for bugzilla 33869 https://bugs.llvm.org/show_bug.cgi?id=33869