[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] ARM: refine compiler target architecture
Currently we compile the tools just with -marm. This breaks compilation when the toolchain default is less than ARMv7, because we require the "dmb" instruction in xenstored. One possible (and working) fix would be to just adjust that for the tools, but in fact the same rationale is true for the hypervisor. So lets mandate ARMv7-A as the minimum for both Xen and the tools. Unfortunately for some reasons -mcpu=cortex-a15 does not go together with this -march, so lets be more generic and explicitly specify the architecture extensions we actually need for the hypervisor. This fixes native tool compilation on my Slackware system. Signed-off-by: Andre Przywara <andre.przywara@xxxxxxxxxx> --- Not sure if this is safe enough for 4.4. On normal build environemnts this shouldn't change anything, but one never knows. In any case I want to drop it here for reference. I will try to do some tests to prove that it's harmless enough. Regards, Andre. config/arm32.mk | 4 ++-- xen/arch/arm/Rules.mk | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/config/arm32.mk b/config/arm32.mk index aa79d22..c5eb30e 100644 --- a/config/arm32.mk +++ b/config/arm32.mk @@ -6,8 +6,8 @@ CONFIG_XEN_INSTALL_SUFFIX := # -march= -mcpu= -# Explicitly specifiy 32-bit ARM ISA since toolchain default can be -mthumb: -CFLAGS += -marm +# Explicitly specifiy 32-bit ARMv7-A ISA since toolchain default can be less: +CFLAGS += -marm -march=armv7-a HAS_PL011 := y HAS_EXYNOS4210 := y diff --git a/xen/arch/arm/Rules.mk b/xen/arch/arm/Rules.mk index aaa203e..891df25 100644 --- a/xen/arch/arm/Rules.mk +++ b/xen/arch/arm/Rules.mk @@ -20,7 +20,8 @@ arm := y ifeq ($(TARGET_SUBARCH),arm32) # Prevent floating-point variables from creeping into Xen. CFLAGS += -msoft-float -CFLAGS += -mcpu=cortex-a15 +# allow assembly of virtualization extension instructions and smc for PSCI +CFLAGS += -Wa,-march=armv7-a+sec+virt arm32 := y arm64 := n endif -- 1.7.12.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |