forked from openkylin/platform_build
Remove useless x86 options that were always hardcoded on.
ARCH_X86_HAVE_MMX, ARCH_X86_HAVE_SSE, ARCH_X86_HAVE_SSE2, and ARCH_X86_HAVE_SSE3 were all always on. There are no longer any makefiles or code that are conditional on any of these, so let's just remove them rather than encourage anyone to mess with knobs that don't work. Change-Id: I5ee095e8041eecff4554ad4801894fbfca69093f
This commit is contained in:
parent
9a78828590
commit
d3f00c162b
|
@ -143,19 +143,11 @@ TARGET_GLOBAL_CPPFLAGS += \
|
|||
-fno-use-cxa-atexit
|
||||
|
||||
TARGET_GLOBAL_CFLAGS += $(arch_variant_cflags)
|
||||
TARGET_GLOBAL_CFLAGS += -mmmx
|
||||
TARGET_GLOBAL_CFLAGS += -msse
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSE2 -msse2
|
||||
TARGET_GLOBAL_CFLAGS += -msse3
|
||||
|
||||
ifeq ($(ARCH_X86_HAVE_MMX),true)
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_MMX -mmmx
|
||||
endif
|
||||
ifeq ($(ARCH_X86_HAVE_SSE),true)
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSE -msse
|
||||
endif
|
||||
ifeq ($(ARCH_X86_HAVE_SSE2),true)
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSE2 -msse2
|
||||
endif
|
||||
ifeq ($(ARCH_X86_HAVE_SSE3),true)
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSE3 -msse3
|
||||
endif
|
||||
ifeq ($(ARCH_X86_HAVE_SSSE3),true) # yes, really SSSE3, not SSE3!
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSSE3 -mssse3
|
||||
endif
|
||||
|
@ -285,21 +277,3 @@ $(hide) $(PRIVATE_CXX) \
|
|||
-Wl,--end-group \
|
||||
$(if $(filter true,$(PRIVATE_NO_CRT)),,$(PRIVATE_TARGET_CRTEND_O))
|
||||
endef
|
||||
|
||||
# Special check for x86 NDK ABI compatibility.
|
||||
# The TARGET_CPU_ABI variable should be defined in BoardConfig.mk to 'x86'
|
||||
# *only* if the platform image is compatible with the NDK x86 ABI.
|
||||
#
|
||||
# We perform a small check here to ensure that nothing bad can happen.
|
||||
#
|
||||
ifeq ($(TARGET_CPU_ABI),x86)
|
||||
ifneq (true-true-true-true,$(ARCH_X86_HAVE_MMX)-$(ARCH_X86_HAVE_SSE)-$(ARCH_X86_HAVE_SSE2)-$(ARCH_X86_HAVE_SSE3))
|
||||
$(info ERROR: Your x86 platform image is not compatible with the NDK x86 ABI)
|
||||
$(info As such, you should *not* define TARGET_CPU_ABI to 'x86' in your BoardConfig.mk)
|
||||
$(info to ensure that your device will not be mistakenly listed as compatible by
|
||||
$(info the Android Market. Also, it is likely that the image will fail the CTS tests)
|
||||
$(info Please undefine TARGET_CPU_ABI in your BoardConfig.mk, or select the value 'none')
|
||||
$(info The corresponding image will still be able to run Dalvik-based Android applications)
|
||||
$(error Aborting build! Please fix your BoardConfig.mk)
|
||||
endif
|
||||
endif
|
||||
|
|
|
@ -146,11 +146,6 @@ TARGET_GLOBAL_CFLAGS += $(arch_variant_cflags) \
|
|||
-mstackrealign \
|
||||
-mfpmath=sse
|
||||
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
|
||||
ifeq ($(ARCH_X86_HAVE_SSSE3),true) # yes, really SSSE3, not SSE3!
|
||||
TARGET_GLOBAL_CFLAGS += -DUSE_SSSE3 -mssse3
|
||||
endif
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
# Configuration for Linux on x86.
|
||||
# Generating binaries for Haswell processors.
|
||||
#
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
ARCH_X86_HAVE_SSSE3 := true
|
||||
ARCH_X86_HAVE_SSE4 := true
|
||||
ARCH_X86_HAVE_SSE4_1 := true
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
# Configuration for Linux on x86.
|
||||
# Generating binaries for Ivy Bridge processors.
|
||||
#
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
ARCH_X86_HAVE_SSSE3 := true
|
||||
ARCH_X86_HAVE_SSE4 := true
|
||||
ARCH_X86_HAVE_SSE4_1 := true
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
# Configuration for Linux on x86.
|
||||
# Generating binaries for SandyBridge processors.
|
||||
#
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
ARCH_X86_HAVE_SSSE3 := true
|
||||
ARCH_X86_HAVE_SSE4_1 := true
|
||||
ARCH_X86_HAVE_SSE4_2 := true
|
||||
|
|
|
@ -4,10 +4,6 @@
|
|||
#
|
||||
# See build/core/combo/arch/x86/x86.mk for differences.
|
||||
#
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
ARCH_X86_HAVE_SSSE3 := true
|
||||
ARCH_X86_HAVE_MOVBE := true
|
||||
ARCH_X86_HAVE_POPCNT := false # popcnt is not supported by current Atom CPUs
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
# This file contains feature macro definitions specific to the
|
||||
# base 'x86' platform ABI. This one must *strictly* match the NDK x86 ABI
|
||||
# which mandates specific CPU extensions to be available.
|
||||
# base 'x86' platform ABI.
|
||||
#
|
||||
# It is also used to build full_x86-eng / sdk_x86-eng platform images that
|
||||
# are run in the emulator under KVM emulation (i.e. running directly on
|
||||
# the host development machine's CPU).
|
||||
#
|
||||
|
||||
# If your target device doesn't support the four following features, then
|
||||
# it cannot be compatible with the NDK x86 ABI. You should define a new
|
||||
# target arch variant (e.g. "x86-mydevice") and a corresponding file
|
||||
# under build/core/combo/arch/x86/
|
||||
#
|
||||
ARCH_X86_HAVE_MMX := true
|
||||
ARCH_X86_HAVE_SSE := true
|
||||
ARCH_X86_HAVE_SSE2 := true
|
||||
ARCH_X86_HAVE_SSE3 := true
|
||||
|
||||
# These features are optional and shall not be included in the base platform
|
||||
# Otherwise, they sdk_x86-eng system images might fail to run on some
|
||||
# Otherwise, sdk_x86-eng system images might fail to run on some
|
||||
# developer machines.
|
||||
#
|
||||
|
||||
ARCH_X86_HAVE_SSSE3 := false
|
||||
ARCH_X86_HAVE_MOVBE := false
|
||||
ARCH_X86_HAVE_POPCNT := false
|
||||
|
|
|
@ -1,22 +1,15 @@
|
|||
# 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.
|
||||
# base 'x86_64' platform ABI.
|
||||
#
|
||||
# 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_MOVBE := false # Only supported on Atom.
|
||||
ARCH_X86_HAVE_POPCNT := true
|
||||
|
||||
|
||||
# CFLAGS for this arch
|
||||
arch_variant_cflags := \
|
||||
-march=x86-64
|
||||
|
||||
|
|
Loading…
Reference in New Issue