aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/Makefile3
-rw-r--r--arch/arm/config.mk6
2 files changed, 8 insertions, 1 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index ce006aed772..09ba027cff4 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -16,7 +16,8 @@ arch-$(CONFIG_CPU_SA1100) =-march=armv4
arch-$(CONFIG_CPU_PXA) =
arch-$(CONFIG_CPU_ARM1136) =-march=armv5
arch-$(CONFIG_CPU_ARM1176) =-march=armv5t
-arch-$(CONFIG_CPU_V7) =$(call cc-option, -march=armv7-a, -march=armv5)
+arch-$(CONFIG_CPU_V7) =$(call cc-option, -march=armv7-a, \
+ $(call cc-option, -march=armv7, -march=armv5))
arch-$(CONFIG_ARM64) =-march=armv8-a
# Evaluate arch cc-option calls now
diff --git a/arch/arm/config.mk b/arch/arm/config.mk
index 9af6c37218e..9a5a9747c48 100644
--- a/arch/arm/config.mk
+++ b/arch/arm/config.mk
@@ -19,6 +19,12 @@ PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections \
PLATFORM_RELFLAGS += $(call cc-option, -msoft-float) \
$(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,))
+# LLVM support
+LLVMS_RELFLAGS := $(call cc-option,-mllvm,) \
+ $(call cc-option,-target arm-none-eabi,) \
+ $(call cc-option,-arm-use-movt=0,)
+PLATFORM_RELFLAGS += $(LLVM_RELFLAGS)
+
PLATFORM_CPPFLAGS += -D__ARM__
# Choose between ARM/Thumb instruction sets