From c568b4f37fa6d7f51e6d14d33d7eb75dfe26d7bf Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Thu, 18 Jul 2019 22:52:49 +0200 Subject: [PATCH] arch/arc: always needs -matomic with atomic extensions As reported by Alexey in: https://patchwork.ozlabs.org/patch/1087480/ https://patchwork.ozlabs.org/patch/1087471/ when BR2_ARC_ATOMIC_EXT is enabled, -matomic needs to always be passed to the compiler to allow atomic instructions to be used. So instead of passing them through the command-line CFLAGS, we enforce them in the toolchain wrapper directly. Reported-by: Alexey Brodkin Signed-off-by: Yann E. MORIN Cc: Alexey Brodkin Cc: Thomas Petazzoni Cc: Arnout Vandecappelle Acked-by: Alexey Brodkin Signed-off-by: Thomas Petazzoni --- arch/arch.mk.arc | 4 ++++ package/Makefile.in | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 arch/arch.mk.arc diff --git a/arch/arch.mk.arc b/arch/arch.mk.arc new file mode 100644 index 0000000000..5fcffb7f4b --- /dev/null +++ b/arch/arch.mk.arc @@ -0,0 +1,4 @@ +# -matomic is always required when the ARC core has the atomic extensions +ifeq ($(BR2_arc)$(BR2_ARC_ATOMIC_EXT),yy) +ARCH_TOOLCHAIN_WRAPPER_OPTS = -matomic +endif diff --git a/package/Makefile.in b/package/Makefile.in index f05b9cc3aa..0a7899c852 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -112,10 +112,6 @@ ifeq ($(BR2_xtensa),y) TARGET_ABI += -mlongcalls -mauto-litpools endif -ifeq ($(BR2_arc)$(BR2_ARC_ATOMIC_EXT),yy) -TARGET_ABI += -matomic -endif - STAGING_SUBDIR = $(GNU_TARGET_NAME)/sysroot STAGING_DIR = $(HOST_DIR)/$(STAGING_SUBDIR)