diff options
author | Ian Rogers <irogers@google.com> | 2014-10-15 15:44:16 -0700 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2014-10-15 15:44:16 -0700 |
commit | 63e551f0ae61f4c95978a02a493dc8d029d20519 (patch) | |
tree | e80d5873c5105ff03bab57a1db678f449809f54b | |
parent | c131ec09d9ffb92473c4162c92c0646d6e731b0c (diff) | |
download | build-63e551f0ae61f4c95978a02a493dc8d029d20519.zip build-63e551f0ae61f4c95978a02a493dc8d029d20519.tar.gz build-63e551f0ae61f4c95978a02a493dc8d029d20519.tar.bz2 |
Move definition of -D__ARM_FEATURE_LPAE=1 cflag to top-level.
LPAE indicates better instructions can be used when atomicity guarantees are
needed. However, LPAE's presence isn't advertised by clang/GCC. We fake an
ARM feature to advertise its presence on architectures where it is.
Also, add a TODO documenting that cortex-a15 is not the correct CPU variant
for krait.
Change-Id: I02a1248025c32d94eca0bc8a249dc524f1ac9c36
-rw-r--r-- | core/combo/arch/arm/armv7-a-neon.mk | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/core/combo/arch/arm/armv7-a-neon.mk b/core/combo/arch/arm/armv7-a-neon.mk index c6603db..3f4c391 100644 --- a/core/combo/arch/arm/armv7-a-neon.mk +++ b/core/combo/arch/arm/armv7-a-neon.mk @@ -7,7 +7,14 @@ ARCH_ARM_HAVE_VFP_D32 := true ARCH_ARM_HAVE_NEON := true ifneq (,$(filter cortex-a15 krait denver,$(TARGET_$(combo_2nd_arch_prefix)CPU_VARIANT))) + # TODO: krait is not a cortex-a15, we set the variant to cortex-a15 so that + # hardware divide operations are generated. This should be removed and a + # krait CPU variant added to GCC/clang. arch_variant_cflags := -mcpu=cortex-a15 + + # Fake an ARM compiler flag as these processors support LPAE which GCC/clang + # don't advertise. + arch_variant_cflags += -D__ARM_FEATURE_LPAE=1 else ifeq ($(strip $(TARGET_$(combo_2nd_arch_prefix)CPU_VARIANT)),cortex-a8) arch_variant_cflags := -mcpu=cortex-a8 |