diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2013-08-30 14:05:32 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2013-08-30 14:05:32 +0000 |
commit | d7a178eee39d3caeea8d4354d24daa8b096a1ff2 (patch) | |
tree | ee1a82dabc178f3c1fa60328ceb0f2a1c1b99968 /lib | |
parent | e7d0b1d146168e2dedf21f244b028585026ec909 (diff) | |
download | external_llvm-d7a178eee39d3caeea8d4354d24daa8b096a1ff2.zip external_llvm-d7a178eee39d3caeea8d4354d24daa8b096a1ff2.tar.gz external_llvm-d7a178eee39d3caeea8d4354d24daa8b096a1ff2.tar.bz2 |
X86: Add a description of the Intel Atom Silvermont CPU.
Currently this is just the atom model with SSE4.2 enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189669 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Support/Host.cpp | 5 | ||||
-rw-r--r-- | lib/Target/X86/X86.td | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/Support/Host.cpp b/lib/Support/Host.cpp index ad0ac93..59ca1ba 100644 --- a/lib/Support/Host.cpp +++ b/lib/Support/Host.cpp @@ -265,6 +265,11 @@ std::string sys::getHostCPUName() { case 54: // 32 nm Atom Midview return "atom"; + case 55: // Intel Atom Silvermont processors + case 74: + case 77: + return "slm"; + default: return (Em64T) ? "x86-64" : "i686"; } case 15: { diff --git a/lib/Target/X86/X86.td b/lib/Target/X86/X86.td index 2c3643d..da989ad 100644 --- a/lib/Target/X86/X86.td +++ b/lib/Target/X86/X86.td @@ -206,6 +206,15 @@ def : ProcessorModel<"atom", AtomModel, FeatureLEAUsesAG, FeaturePadShortFunctions]>; +// Silvermont. +def : ProcessorModel<"slm", AtomModel, + [ProcIntelAtom, FeatureSSE42, FeatureCMPXCHG16B, + FeatureMOVBE, FeatureSlowBTMem, FeatureLeaForSP, + FeatureSlowDivide, + FeatureCallRegIndirect, + FeatureLEAUsesAG, + FeaturePadShortFunctions]>; + // "Arrandale" along with corei3 and corei5 def : ProcessorModel<"corei7", SandyBridgeModel, [FeatureSSE42, FeatureCMPXCHG16B, FeatureSlowBTMem, |