diff options
author | Steve Ellcey <sellcey@cavium.com> | 2017-12-05 00:49:09 +0000 |
---|---|---|
committer | Steve Ellcey <sje@gcc.gnu.org> | 2017-12-05 00:49:09 +0000 |
commit | 141abc6f1e5a6a2de0a1ee97b63d56ee50b85a66 (patch) | |
tree | 50d25ec32b7f404446f4f5da5e0991c3ae3339f1 /libatomic/configure | |
parent | ad8503503f69f99b17e22cf53d87fe6e15256912 (diff) | |
download | gcc-141abc6f1e5a6a2de0a1ee97b63d56ee50b85a66.zip gcc-141abc6f1e5a6a2de0a1ee97b63d56ee50b85a66.tar.gz gcc-141abc6f1e5a6a2de0a1ee97b63d56ee50b85a66.tar.bz2 |
Makefile.am (ARCH_AARCH64_LINUX): Add IFUNC_OPTIONS and libatomic_la_LIBADD.
2017-12-04 Steve Ellcey <sellcey@cavium.com>
* Makefile.am (ARCH_AARCH64_LINUX): Add IFUNC_OPTIONS and
libatomic_la_LIBADD.
* config/linux/aarch64/host-config.h: New file.
* configure.ac (IFUNC_RESOLVER_ARGS): Define.
(ARCH_AARCH64_LINUX): New conditional for IFUNC builds.
* configure.tgt (aarch64): Set ARCH and try_ifunc.
(aarch64*-*-linux*) Update config_path.
(aarch64*-*-linux*) Set IFUNC_RESOLVER_ARGS.
* libatomic_i.h (GEN_SELECTOR): Add IFUNC_RESOLVER_ARGS argument.
* Makefile.in: Regenerate.
* auto-config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r255399
Diffstat (limited to 'libatomic/configure')
-rwxr-xr-x | libatomic/configure | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/libatomic/configure b/libatomic/configure index e49313f..cbba834 100755 --- a/libatomic/configure +++ b/libatomic/configure @@ -608,6 +608,8 @@ ARCH_I386_FALSE ARCH_I386_TRUE ARCH_ARM_LINUX_FALSE ARCH_ARM_LINUX_TRUE +ARCH_AARCH64_LINUX_FALSE +ARCH_AARCH64_LINUX_TRUE HAVE_IFUNC_FALSE HAVE_IFUNC_TRUE SIZES @@ -11118,7 +11120,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11121 "configure" +#line 11123 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11224,7 +11226,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11227 "configure" +#line 11229 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11526,6 +11528,13 @@ if test -n "$UNSUPPORTED"; then as_fn_error "Configuration ${target} is unsupported." "$LINENO" 5 fi +# Write out the ifunc resolver arg type. + +cat >>confdefs.h <<_ACEOF +#define IFUNC_RESOLVER_ARGS $IFUNC_RESOLVER_ARGS +_ACEOF + + # Disable fallbacks to __sync routines from libgcc. Otherwise we'll # make silly decisions about what the cpu can do. CFLAGS="$save_CFLAGS -fno-sync-libcalls $XCFLAGS" @@ -15313,6 +15322,14 @@ else HAVE_IFUNC_FALSE= fi + if expr "$config_path" : ".* linux/aarch64 .*" > /dev/null; then + ARCH_AARCH64_LINUX_TRUE= + ARCH_AARCH64_LINUX_FALSE='#' +else + ARCH_AARCH64_LINUX_TRUE='#' + ARCH_AARCH64_LINUX_FALSE= +fi + if expr "$config_path" : ".* linux/arm .*" > /dev/null; then ARCH_ARM_LINUX_TRUE= ARCH_ARM_LINUX_FALSE='#' @@ -15503,6 +15520,10 @@ if test -z "${HAVE_IFUNC_TRUE}" && test -z "${HAVE_IFUNC_FALSE}"; then as_fn_error "conditional \"HAVE_IFUNC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ARCH_AARCH64_LINUX_TRUE}" && test -z "${ARCH_AARCH64_LINUX_FALSE}"; then + as_fn_error "conditional \"ARCH_AARCH64_LINUX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ARCH_ARM_LINUX_TRUE}" && test -z "${ARCH_ARM_LINUX_FALSE}"; then as_fn_error "conditional \"ARCH_ARM_LINUX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 |