config.gcc: Add new case statement to set default_gnu_indirect_function.
authorSteve Ellcey <sellcey@cavium.com>
Fri, 22 Sep 2017 18:04:18 +0000 (18:04 +0000)
committerSteve Ellcey <sje@gcc.gnu.org>
Fri, 22 Sep 2017 18:04:18 +0000 (18:04 +0000)
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.

From-SVN: r253104

gcc/ChangeLog
gcc/config.gcc

index 02a5b7eb26d42e7aa578c6c4ff5f4191c2e00b02..efa98cf4ed55a889dfd01c147a506f55246a5b0c 100644 (file)
@@ -1,3 +1,11 @@
+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
index 002251040386955708d53764a01a4e5f0e3e442c..e03b5cb6c3c9743cc28090bc10f2d23867a5d39f 100644 (file)
@@ -1516,14 +1516,6 @@ i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-gnu* | i[34567]8
        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"
@@ -1582,14 +1574,6 @@ x86_64-*-linux* | x86_64-*-kfreebsd*-gnu)
        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"
@@ -2455,7 +2439,6 @@ powerpc*-*-linux*spe*)
        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"
@@ -2535,14 +2518,6 @@ powerpc*-*-linux*)
        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"
@@ -2664,7 +2639,6 @@ rx-*-elf*)
        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"
@@ -2674,7 +2648,6 @@ s390-*-linux*)
        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"
@@ -3120,6 +3093,20 @@ case ${target} in
        ;;
 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-*)