[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Arm64: fix build with gcc 10



Hi Jan,

I would suggest: "xen/arm64: Force GCC to always inline generic atomics helpers".

On 08/09/2020 13:53, Jan Beulich wrote:
With gcc10 inlining is (no longer?) the default for certain atomics.

How about the following:

"Recent versions of GCC (at least GCC10) will not inline generic atomics helpers. Instead it will expect the software to either link with libatomic.so or implement the helpers.

To keep the previous behavior, force GCC to always inline the generic atomics helpers.

Long term we probably want to avoid relying on GCC atomics helpers as this doesn't allow us to switch between LSE and LL/SC atomic.
"


Suggested-by: Julien Grall <jgrall@xxxxxxxxxx>
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

--- a/xen/arch/arm/arch.mk
+++ b/xen/arch/arm/arch.mk
@@ -12,6 +12,7 @@ CFLAGS-$(CONFIG_ARM_32) += -mcpu=cortex-
CFLAGS-$(CONFIG_ARM_64) += -mcpu=generic
  CFLAGS-$(CONFIG_ARM_64) += -mgeneral-regs-only # No fp registers etc
+$(call cc-option-add,CFLAGS-$(CONFIG_ARM_64),CC,-mno-outline-atomics)
ifneq ($(filter command line environment,$(origin CONFIG_EARLY_PRINTK)),)
      $(error You must use 'make menuconfig' to enable/disable early printk now)


--
Julien Grall



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.