aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlloyd <[email protected]>2011-11-18 20:33:15 +0000
committerlloyd <[email protected]>2011-11-18 20:33:15 +0000
commit4ba7731b856442a7bb6e595c6dda2696abc0415d (patch)
tree7575279b189863501831bd9320d129574b9ef6c0
parentcd3e535b1327e2641932b96573c7b06ddf17774b (diff)
Add model name for Sandy Bridge. Use -march=corei7 with GCC and Clang
as they seem to understand it as of GCC 4.6 and Clang 2.9.
-rw-r--r--src/build-data/arch/x86_64.txt7
-rw-r--r--src/build-data/cc/clang.txt3
-rw-r--r--src/build-data/cc/gcc.txt18
3 files changed, 16 insertions, 12 deletions
diff --git a/src/build-data/arch/x86_64.txt b/src/build-data/arch/x86_64.txt
index 97b84fbde..922daa104 100644
--- a/src/build-data/arch/x86_64.txt
+++ b/src/build-data/arch/x86_64.txt
@@ -13,11 +13,12 @@ x64
<submodels>
k8
k10
+atom
nocona
core2
nehalem
westmere
-atom
+sandybridge
</submodels>
<submodel_aliases>
@@ -37,6 +38,6 @@ corei7cpu860 -> nehalem
<isa_extn>
sse2:all
-ssse3:core2,nehalem,westmere,atom
-aes-ni:westmere
+ssse3:core2,nehalem,westmere,atom,sandybridge
+aes-ni:westmere,sandybridge
</isa_extn>
diff --git a/src/build-data/cc/clang.txt b/src/build-data/cc/clang.txt
index f4db26ee8..e5d52db3d 100644
--- a/src/build-data/cc/clang.txt
+++ b/src/build-data/cc/clang.txt
@@ -31,7 +31,8 @@ default -> "$(CXX) -shared -fPIC -Wl,-soname,$(SONAME)"
<mach_opt>
x86_64 -> "-march=SUBMODEL"
-nehalem -> "-march=core2 -mssse3 -msse4.1"
+nehalem -> "-march=corei7"
+westmere -> "-march=corei7 -maes"
</mach_opt>
<mach_abi_linking>
diff --git a/src/build-data/cc/gcc.txt b/src/build-data/cc/gcc.txt
index da89b3ad7..0852e5be1 100644
--- a/src/build-data/cc/gcc.txt
+++ b/src/build-data/cc/gcc.txt
@@ -47,25 +47,27 @@ i386 -> "-mtune=generic -momit-leaf-frame-pointer"
i486 -> "-mtune=generic -momit-leaf-frame-pointer"
i586 -> "-mtune=generic -momit-leaf-frame-pointer"
+# Translate to GCC-speak
+nehalem -> "-march=corei7 -momit-leaf-frame-pointer"
+westmere -> "-march=corei7 -maes -momit-leaf-frame-pointer"
+sandybridge -> "-march=corei7-avx -momit-leaf-frame-pointer"
+atom32 -> "-march=atom -momit-leaf-frame-pointer"
+
ppc601 -> "-mpowerpc -mcpu=601"
cellppu -> "-mcpu=cell"
e500v2 -> "-mcpu=8548"
-atom32 -> "-march=atom -momit-leaf-frame-pointer"
+# No scheduler in GCC for anything after EV67
alpha-ev68 -> "-mcpu=ev67"
alpha-ev7 -> "-mcpu=ev67"
# The patch from Debian bug 594159 has this, don't know why though...
sh4 -> "-m4 -mieee"
+# Default family options (SUBMODEL is substitued with the actual
+# submodel name). Anything after the quotes is what should be
+# *removed* from the submodel name before it's put into SUBMODEL.
-# Until GCC gets -march support for these models
-nehalem -> "-march=core2 -msse4.1 -msse4.2 -momit-leaf-frame-pointer"
-westmere -> "-march=core2 -maes -msse4.1 -msse4.2 -momit-leaf-frame-pointer"
-
-# Default family options (SUBMODEL is substitued with the real submodel)
-# Anything after the quotes is what should be *removed* from the submodel name
-# before it's put into SUBMODEL.
alpha -> "-mcpu=SUBMODEL" alpha-
arm -> "-march=SUBMODEL"
superh -> "-mSUBMODEL" sh