xen: arm: make sure gcc doesn't use floating-point registers on arm64
authorIan Campbell <ian.campbell@citrix.com>
Thu, 26 Jun 2014 16:30:14 +0000 (17:30 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Fri, 27 Jun 2014 10:03:46 +0000 (11:03 +0100)
By using -mgeneral-regs-only which is the Aarch64 equivalent to
-msoft-float.

Otherwise gcc will corrupt the d* registers, which we don't save/restore when
trapping to/from the hypervisor.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Julien Grall <julien.grall@linaro.org>
xen/arch/arm/Rules.mk

index 76b35d9bf222dd4676204f7816288df34026a03d..b5bf5cbd6697a72c4c247680a7e5ad45c85b94b5 100644 (file)
@@ -28,6 +28,7 @@ endif
 
 ifeq ($(TARGET_SUBARCH),arm64)
 CFLAGS += -mcpu=generic
+CFLAGS += -mgeneral-regs-only # No fp registers etc
 arm32 := n
 arm64 := y
 endif