+2017-09-22 Steve Ellcey <sellcey@cavium.com>
+
+ * config.gcc: Add new case statement to set
+ default_gnu_indirect_function. Remove it from x86_64-*-linux*,
+ i[34567]86-*, powerpc*-*-linux*spe*, powerpc*-*-linux*, s390-*-linux*,
+ s390x-*-linux* case statements. Added aarch64 to the list of
+ supported architectures.
+
2017-09-22 Richard Sandiford <richard.sandiford@linaro.org>
PR tree-optimization/82289
i[34567]86-*-linux*)
tm_file="${tm_file} linux.h linux-android.h"
extra_options="${extra_options} linux-android.opt"
- # Assume modern glibc if not targeting Android nor uclibc.
- case ${target} in
- *-*-*android*|*-*-*uclibc*|*-*-*musl*)
- ;;
- *)
- default_gnu_indirect_function=yes
- ;;
- esac
if test x$enable_targets = xall; then
tm_file="${tm_file} i386/x86-64.h i386/gnu-user-common.h i386/gnu-user64.h i386/linux-common.h i386/linux64.h"
tm_defines="${tm_defines} TARGET_BI_ARCH=1"
x86_64-*-linux*)
tm_file="${tm_file} linux.h linux-android.h i386/linux-common.h i386/linux64.h"
extra_options="${extra_options} linux-android.opt"
- # Assume modern glibc if not targeting Android nor uclibc.
- case ${target} in
- *-*-*android*|*-*-*uclibc*|*-*-*musl*)
- ;;
- *)
- default_gnu_indirect_function=yes
- ;;
- esac
;;
x86_64-*-kfreebsd*-gnu)
tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h"
tm_file="${tm_file} powerpcspe/linux.h glibc-stdint.h"
tmake_file="${tmake_file} powerpcspe/t-ppcos powerpcspe/t-linux"
tm_file="${tm_file} powerpcspe/linuxspe.h powerpcspe/e500.h"
- default_gnu_indirect_function=yes
;;
powerpc*-*-linux*)
tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h"
if test x${enable_secureplt} = xyes; then
tm_file="rs6000/secureplt.h ${tm_file}"
fi
- # Assume modern glibc if not targeting Android nor uclibc.
- case ${target} in
- *-*-*android*|*-*-*uclibc*|*-*-*musl*)
- ;;
- *)
- default_gnu_indirect_function=yes
- ;;
- esac
;;
powerpc-wrs-vxworks*spe)
tm_file="${tm_file} elfos.h freebsd-spec.h powerpcspe/sysv4.h"
tmake_file="${tmake_file} rx/t-rx"
;;
s390-*-linux*)
- default_gnu_indirect_function=yes
tm_file="s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h"
c_target_objs="${c_target_objs} s390-c.o"
cxx_target_objs="${cxx_target_objs} s390-c.o"
tmake_file="${tmake_file} s390/t-s390"
;;
s390x-*-linux*)
- default_gnu_indirect_function=yes
tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h"
tm_p_file="linux-protos.h s390/s390-protos.h"
c_target_objs="${c_target_objs} s390-c.o"
;;
esac
+# Assume the existence of indirect function support and allow the use of the
+# resolver attribute.
+case ${target} in
+*-*-linux*android*|*-*-linux*uclibc*|*-*-linux*musl*)
+ ;;
+*-*-linux*)
+ case ${target} in
+ aarch64*-* | i[34567]86-* | powerpc*-* | s390*-* | x86_64-*)
+ default_gnu_indirect_function=yes
+ ;;
+ esac
+ ;;
+esac
+
# Build mkoffload tool
case ${target} in
*-intelmic-* | *-intelmicemul-*)