* gcc/target.def (TARGET_HAS_IFUNC_P): New target hook.
authorkyukhin <kyukhin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Mar 2013 09:55:19 +0000 (09:55 +0000)
committerkyukhin <kyukhin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 27 Mar 2013 09:55:19 +0000 (09:55 +0000)
commitdf9f2e40cb3e58ff6490c54473a7779e30206794
treec3f8af07cbeec30831a713ebef2709f7bae7324c
parentd18af62e3808d9860cf2a36c41367b3b3e8e3fa9
    * gcc/target.def (TARGET_HAS_IFUNC_P): New target hook.
        * gcc/doc/tm.texi.in (TARGET_HAS_IFUNC_P): New.
        * gcc/doc/tm.texi: Regenerate.
        * gcc/targhooks.h (default_has_ifunc_p): New.
        * gcc/targhooks.c (default_has_ifunc_p): Ditto.
        * gcc/config/linux-protos.h: New file.
        * gcc/config/linux-android.h (TARGET_HAS_IFUNC_P): Using version of
        this hook for linux which disables support of indirect functions in
        android.
        * gcc/config/linux-android.c: New file.
        * gcc/config/t-linux-android.c: Ditto.
        * gcc/config.gcc: Added new object file linux-android.o.
        * gcc/config/i386/i386.c (ix86_get_function_versions_dispatcher):
        Using TARGET_HAS_IFUNC hook instead of HAVE_GNU_INDIRECT_FUNCTION.
        * gcc/varasm.c (do_assemble_alias): Likewise.
        * configure.ac: Define HAVE_GNU_INDIRECT_FUNCTION as zero if the target
        doesn't support indirect functions.
        * configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197156 138bc75d-0d04-0410-961f-82ee72b054a4
15 files changed:
gcc/ChangeLog
gcc/config.gcc
gcc/config/i386/i386.c
gcc/config/linux-android.c [new file with mode: 0644]
gcc/config/linux-android.h
gcc/config/linux-protos.h [new file with mode: 0644]
gcc/config/t-linux-android [new file with mode: 0644]
gcc/configure
gcc/configure.ac
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/target.def
gcc/targhooks.c
gcc/targhooks.h
gcc/varasm.c