Set proper CPU variant for aosp_arm

System image of aosp_arm products is the new GSI in Pi.
Its arch variants need to be the same as the legacy GSI built
with aosp_arm_ab so it can pass related CTS/VTS tests.

Bug: 80401108
Test: $ lunch aosp_arm-userdebug; m -j; emulator # booted OK
      $ lunch aosp_arm-userdebug; m -j cts

Change-Id: I29fffca3e02a2251913a327b54640fc622e77a8d
Merged-Id: I29fffca3e02a2251913a327b54640fc622e77a8d
(cherry picked from commit b2e58893c3)
This commit is contained in:
Isaac Chen 2018-05-29 13:06:11 +08:00
parent cfbe8cf3bb
commit e44b0d96b9
1 changed files with 21 additions and 8 deletions

View File

@ -8,18 +8,31 @@ TARGET_NO_BOOTLOADER := true
TARGET_NO_KERNEL := true
TARGET_ARCH := arm
# Note: we build the platform images for ARMv7-A _without_ NEON.
# Note: Before Pi, we built the platform images for ARMv7-A _without_ NEON.
#
# Technically, the emulator supports ARMv7-A _and_ NEON instructions, but
# emulated NEON code paths typically ends up 2x slower than the normal C code
# it is supposed to replace (unlike on real devices where it is 2x to 3x
# faster).
ifneq ($(TARGET_BUILD_APPS)$(filter cts sdk,$(MAKECMDGOALS)),)
# DO NOT USE
#
# What this means is that the platform image will not use NEON code paths
# that are slower to emulate. On the other hand, it is possible to emulate
# application code generated with the NDK that uses NEON in the emulator.
# This architecture variant should NOT be used for 32 bit arm platform
# builds. It is the lowest common denominator required to build
# an unbundled application for all supported 32 platforms.
# cts for 32 bit arm is built using aosp_arm64 product.
#
# If you are building a 32 bit platform (and not an application),
# you should set the following as 2nd arch variant:
#
# TARGET_ARCH_VARIANT := armv7-a-neon
#
# DO NOT USE
TARGET_ARCH_VARIANT := armv7-a
# DO NOT USE
else
# Starting from Pi, System image of aosp_arm products is the new GSI
# for real devices newly launched for Pi. These devices are usualy not
# as performant as the mainstream 64-bit devices and the performance
# provided by NEON is important for them to pass related CTS tests.
TARGET_ARCH_VARIANT := armv7-a-neon
endif
TARGET_CPU_VARIANT := generic
TARGET_CPU_ABI := armeabi-v7a
TARGET_CPU_ABI2 := armeabi