From c3192b316474df4f01b635a50b8696f7821b781b Mon Sep 17 00:00:00 2001 From: Bruce Beare Date: Wed, 15 Feb 2012 16:39:20 -0800 Subject: [PATCH] x86: Clean up atom vs/ non-atom compiler flags, enable SSSE3 Change-Id: I0576514621affefea86a14d419f428761a60e067 Signed-off-by: Bruce Beare --- core/combo/TARGET_linux-x86.mk | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/core/combo/TARGET_linux-x86.mk b/core/combo/TARGET_linux-x86.mk index 5020c848c..3ffd7a59a 100644 --- a/core/combo/TARGET_linux-x86.mk +++ b/core/combo/TARGET_linux-x86.mk @@ -96,26 +96,22 @@ TARGET_GLOBAL_CPPFLAGS += \ -fno-use-cxa-atexit ifeq ($(TARGET_ARCH_VARIANT),x86-atom) - # Basic ATOM flags. - TARGET_GLOBAL_CFLAGS += -march=atom -mstackrealign -mfpmath=sse + # Basic ATOM flags - only use this if you have both ssse3 and movbe instructions + TARGET_GLOBAL_CFLAGS += -march=atom -mstackrealign -mfpmath=sse -m32 # There are various levels of ATOM processors out there. Different ones have different - # capabilities. This first define matches the NDK's minimum ABI requirements. + # capabilities. # 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 + TARGET_GLOBAL_CFLAGS += -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 -DUSE_SSSE3 else - # Plain 'x86' - lowest common denominator. This should run pretty much on any hardware. + # Plain 'x86' - Requires sse3, use if you have nossse3 or movbe # # 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 + TARGET_GLOBAL_CFLAGS += -march=i686 -msse3 -mfpmath=sse -m32 + TARGET_GLOBAL_CFLAGS += -DUSE_MMX -DUSE_SSE -DUSE_SSE2 -DUSE_SSE3 endif TARGET_GLOBAL_CFLAGS += -mbionic