summaryrefslogtreecommitdiffstats
path: root/core/combo/arch
diff options
context:
space:
mode:
authorPavel Chupin <pavel.v.chupin@intel.com>2012-11-26 09:50:07 +0400
committerPavel Chupin <pavel.v.chupin@intel.com>2013-10-02 20:58:54 +0400
commitfd82a49e04adb5513977acd0f616ddac421c715b (patch)
tree2e63b4ff29fb8647b132b16b1be0ab0a009ec72b /core/combo/arch
parent2acb1ea76d294f993993a0852c30dd93dc46c600 (diff)
downloadbuild-fd82a49e04adb5513977acd0f616ddac421c715b.zip
build-fd82a49e04adb5513977acd0f616ddac421c715b.tar.gz
build-fd82a49e04adb5513977acd0f616ddac421c715b.tar.bz2
x86_64: Adding new target
Add x86_64 Android builds. Compiler is expected to be able to understand -m64 code generation option. Change-Id: I99e7337c5a5766afc5e528a481bd21631ff44dd5 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
Diffstat (limited to 'core/combo/arch')
-rw-r--r--core/combo/arch/x86_64/haswell.mk13
-rw-r--r--core/combo/arch/x86_64/ivybridge.mk13
-rw-r--r--core/combo/arch/x86_64/sandybridge.mk11
-rwxr-xr-xcore/combo/arch/x86_64/x86_64-atom.mk13
-rwxr-xr-xcore/combo/arch/x86_64/x86_64.mk22
5 files changed, 72 insertions, 0 deletions
diff --git a/core/combo/arch/x86_64/haswell.mk b/core/combo/arch/x86_64/haswell.mk
new file mode 100644
index 0000000..9cf95b3
--- /dev/null
+++ b/core/combo/arch/x86_64/haswell.mk
@@ -0,0 +1,13 @@
+# Configuration for Linux on x86_64.
+# Generating binaries for Haswell processors.
+#
+ARCH_X86_HAVE_SSSE3 := true
+ARCH_X86_HAVE_SSE4 := true
+ARCH_X86_HAVE_SSE4_1 := true
+ARCH_X86_HAVE_SSE4_2 := true
+ARCH_X86_HAVE_AES_NI := true
+ARCH_X86_HAVE_AVX := true
+
+# CFLAGS for this arch
+arch_variant_cflags := \
+ -march=core-avx2
diff --git a/core/combo/arch/x86_64/ivybridge.mk b/core/combo/arch/x86_64/ivybridge.mk
new file mode 100644
index 0000000..7b95190
--- /dev/null
+++ b/core/combo/arch/x86_64/ivybridge.mk
@@ -0,0 +1,13 @@
+# Configuration for Linux on x86_64.
+# Generating binaries for Ivy Bridge processors.
+#
+ARCH_X86_HAVE_SSSE3 := true
+ARCH_X86_HAVE_SSE4 := true
+ARCH_X86_HAVE_SSE4_1 := true
+ARCH_X86_HAVE_SSE4_2 := true
+ARCH_X86_HAVE_AES_NI := true
+ARCH_X86_HAVE_AVX := true
+
+# CFLAGS for this arch
+arch_variant_cflags := \
+ -march=core-avx-i
diff --git a/core/combo/arch/x86_64/sandybridge.mk b/core/combo/arch/x86_64/sandybridge.mk
new file mode 100644
index 0000000..a443b6b
--- /dev/null
+++ b/core/combo/arch/x86_64/sandybridge.mk
@@ -0,0 +1,11 @@
+# Configuration for Linux on x86_64.
+# Generating binaries for SandyBridge processors.
+#
+ARCH_X86_HAVE_SSSE3 := true
+ARCH_X86_HAVE_SSE4_1 := true
+ARCH_X86_HAVE_SSE4_2 := true
+ARCH_X86_HAVE_AVX := true
+
+# CFLAGS for this arch
+arch_variant_cflags := \
+ -march=corei7-avx
diff --git a/core/combo/arch/x86_64/x86_64-atom.mk b/core/combo/arch/x86_64/x86_64-atom.mk
new file mode 100755
index 0000000..64b07a0
--- /dev/null
+++ b/core/combo/arch/x86_64/x86_64-atom.mk
@@ -0,0 +1,13 @@
+# This file contains feature macro definitions specific to the
+# 'x86_64-atom' arch variant. This is an extension of the 'x86_64' base variant
+# that adds Atom-specific features.
+#
+# See build/core/combo/arch/x86_64/x86_64.mk for differences.
+#
+ARCH_X86_HAVE_SSSE3 := true
+ARCH_X86_HAVE_MOVBE := true
+ARCH_X86_HAVE_POPCNT := false # popcnt is not supported by current Atom CPUs
+
+# CFLAGS for this arch
+arch_variant_cflags := \
+ -march=atom
diff --git a/core/combo/arch/x86_64/x86_64.mk b/core/combo/arch/x86_64/x86_64.mk
new file mode 100755
index 0000000..8f855cc
--- /dev/null
+++ b/core/combo/arch/x86_64/x86_64.mk
@@ -0,0 +1,22 @@
+# This file contains feature macro definitions specific to the
+# base 'x86_64' platform ABI. This one must *strictly* match the NDK x86_64 ABI
+# which mandates specific CPU extensions to be available.
+#
+# It is also used to build full_x86_64-eng / sdk_x86_64-eng platform images
+# that are run in the emulator under KVM emulation (i.e. running directly on
+# the host development machine's CPU).
+#
+
+# These features are optional and shall not be included in the base platform
+# Otherwise, they sdk_x86_64-eng system images might fail to run on some
+# developer machines.
+#
+
+ARCH_X86_HAVE_SSSE3 := true
+ARCH_X86_HAVE_MOVBE := false
+ARCH_X86_HAVE_POPCNT := true
+
+# CFLAGS for this arch
+arch_variant_cflags := \
+ -march=x86-64
+