From 3343b27c534fb4ea238f2feaa0d9346840ee2f92 Mon Sep 17 00:00:00 2001 From: Bruce Beare Date: Fri, 9 Dec 2011 13:27:08 -0800 Subject: [PATCH] x86: The default ATOM BSP flags need to be in sync with the NDK ABI Change-Id: Ic741e1795c655ace1e33ae6708219f2708358090 Signed-off-by: Bruce Beare --- core/combo/TARGET_linux-x86.mk | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/core/combo/TARGET_linux-x86.mk b/core/combo/TARGET_linux-x86.mk index 0fb6edc0e..3d09276be 100644 --- a/core/combo/TARGET_linux-x86.mk +++ b/core/combo/TARGET_linux-x86.mk @@ -96,8 +96,25 @@ TARGET_GLOBAL_CPPFLAGS += \ -fno-use-cxa-atexit ifeq ($(TARGET_ARCH_VARIANT),x86-atom) - TARGET_GLOBAL_CFLAGS += -march=atom -mstackrealign -DUSE_SSSE3 -DUSE_SSE2 -mfpmath=sse + # Basic ATOM flags. + TARGET_GLOBAL_CFLAGS += -march=atom -mstackrealign -mfpmath=sse + + # There are various levels of ATOM processors out there. Different ones have different + # capabilities. This first define matches the NDK's minimum ABI requirements. + # Note: Not all of the flags set here are actually used in Android. They are provided + # to allow for the addition of corresponding optimizations. + TARGET_GLOBAL_CFLAGS += -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 + + # If you wish to build a BSP that will only be used on hardware that has additional + # available instructions, enable them here. By default, this is commented off so that + # the default images can run on all processors that are NDK ABI compliant. + # TARGET_GLOBAL_CFLAGS += -DUSE_SSSE3 else + # Plain 'x86' - lowest common denominator. This should run pretty much on any hardware. + # + # Note: The NDK's ABI (see the NDK ABI documentation) requires many of the more recent + # instruction set additions. You can build an "x86" BSP that will run on very old hardware, + # but it won't be able to run much of the x86 NDK compliant code. TARGET_GLOBAL_CFLAGS += -march=i686 endif