diff options
author | Wilco Dijkstra <wilco.dijkstra@arm.com> | 2024-03-26 15:08:02 +0000 |
---|---|---|
committer | Wilco Dijkstra <wilco.dijkstra@arm.com> | 2024-04-04 22:28:58 +0100 |
commit | 27b6d081f68528435066be2234c7329e31e0e84f (patch) | |
tree | a428d4928bfbdcccfe5116f126612e1074c335bb /libatomic/Makefile.am | |
parent | 801e82acd6b4f0cf863529875947e394899ea7b9 (diff) | |
download | gcc-27b6d081f68528435066be2234c7329e31e0e84f.zip gcc-27b6d081f68528435066be2234c7329e31e0e84f.tar.gz gcc-27b6d081f68528435066be2234c7329e31e0e84f.tar.bz2 |
libatomic: Fix build for --disable-gnu-indirect-function [PR113986]
Fix libatomic build to support --disable-gnu-indirect-function on AArch64.
Always build atomic_16.S, add aliases to the __atomic_ functions if !HAVE_IFUNC.
Include auto-config.h in atomic_16.S to avoid having to pass defines via
makefiles. Fix build if HWCAP_ATOMICS/CPUID are not defined.
libatomic:
PR target/113986
* Makefile.in: Regenerated.
* Makefile.am: Make atomic_16.S not depend on HAVE_IFUNC.
Remove predefine of HAVE_FEAT_LSE128.
* acinclude.m4: Remove ARCH_AARCH64_HAVE_LSE128.
* configure: Regenerated.
* config/linux/aarch64/atomic_16.S: Add __atomic_ alias if !HAVE_IFUNC.
* config/linux/aarch64/host-config.h: Correctly handle !HAVE_IFUNC.
Add defines for HWCAP_ATOMICS and HWCAP_CPUID.
Diffstat (limited to 'libatomic/Makefile.am')
-rw-r--r-- | libatomic/Makefile.am | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am index d49c44c..980677f 100644 --- a/libatomic/Makefile.am +++ b/libatomic/Makefile.am @@ -130,12 +130,8 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS))) ## On a target-specific basis, include alternates to be selected by IFUNC. if HAVE_IFUNC if ARCH_AARCH64_LINUX -if ARCH_AARCH64_HAVE_LSE128 -AM_CPPFLAGS = -DHAVE_FEAT_LSE128 -endif IFUNC_OPTIONS = -march=armv8-a+lse libatomic_la_LIBADD += $(foreach s,$(SIZES),$(addsuffix _$(s)_1_.lo,$(SIZEOBJS))) -libatomic_la_SOURCES += atomic_16.S endif if ARCH_ARM_LINUX @@ -155,6 +151,10 @@ libatomic_la_LIBADD += $(addsuffix _16_1_.lo,$(SIZEOBJS)) \ endif endif +if ARCH_AARCH64_LINUX +libatomic_la_SOURCES += atomic_16.S +endif + libatomic_convenience_la_SOURCES = $(libatomic_la_SOURCES) libatomic_convenience_la_LIBADD = $(libatomic_la_LIBADD) |