aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure.ac
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-11-23 17:06:37 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2010-11-23 16:06:37 +0000
commitf16d3f392e1b5a317ac75dbed2b9cb81d79bc50f (patch)
tree152a6dc3dab8ba9ba276a0b044af0fa1b93bb32b /gcc/configure.ac
parent7f814c0bb0216cf3c6929ae28bffcc4620ea2fef (diff)
downloadgcc-f16d3f392e1b5a317ac75dbed2b9cb81d79bc50f.zip
gcc-f16d3f392e1b5a317ac75dbed2b9cb81d79bc50f.tar.gz
gcc-f16d3f392e1b5a317ac75dbed2b9cb81d79bc50f.tar.bz2
tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): New macro.
* tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): New macro. (tree_decl_with_vis): Add implicit_section_name_p. * targhooks.h (default_function_section): Declare. * target.def (function_section): New hook. * defaults.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove. * predict.c (choose_function_section): Remove. (estimate_bb_frequencies): Do not use choose_function_section. * coretypes.h (enum node_frequency): Move here from cgraph.h * cgraph.h (enum node_frequency): Remove. * varasm.c (initialize_cold_section_name, unlikely_text_section, unlikely_text_section_p): Remove. (named_subsection_entry): New structure. (get_text_section): New function. (default_function_section): New function. (function_section_1): Break out from ...; handle profile info. (function_section): ... here. (unlikely_text_section): Remove. (unlikely_text_section_p): Use function_section_1. (assemble_start_function): Do not initialize cold section. (default_section_type_flags): Do not special case cold subsection. (switch_to_section): Likewise. * output.h (get_text_section): Define. * config/i386/winnt.c: Do not special case cold section. * config/darwin-protos.h (darwin_function_section): Declare. * config/microblaze/microblaze.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove. * config/ia64/hpux.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove. (TARGET_ASM_FUNCTION_SECTION): Define to ia64_hpux_function_section. * config/ia64/ia64.c (ia64_hpux_function_section): New function. * config/darwin.c (machopic_select_section): Use darwin_function_section. (darwin_function_section): New function. * config/darwin.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove. (TARGET_ASM_FUNCTION_SECTION): Define. * system.h (HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Poison. From-SVN: r167085
Diffstat (limited to 'gcc/configure.ac')
-rw-r--r--gcc/configure.ac22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 0eb2d8b..8d6d164 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -3127,6 +3127,28 @@ if test x"$demangler_in_ld" = xyes; then
AC_MSG_RESULT($gcc_cv_ld_demangle)
fi
+if test x"$linker_plugin_in_ld" = xyes; then
+ AC_MSG_CHECKING(linker support)
+ gcc_cv_ld_plugin=no
+ if test x"$ld_is_gold" = xyes; then
+ gcc_cv_ld_plugin=yes
+ else if test $in_tree_ld = yes; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 21 -o "$gcc_cv_gld_major_version" -gt 2; then \
+ gcc_cv_ld_plugin=yes
+ fi
+ elif test x$PLUGIN_LD != x -a x"$gnu_ld" = xyes; then
+ # Check if the GNU linker supports --plugin-opt option
+ if $gcc_cv_ld --help 2>/dev/null | grep no-demangle > /dev/null; then
+ gcc_cv_ld_plugin=yes
+ fi
+ fi
+ if test x"$gcc_cv_ld_plugin" = xyes; then
+ AC_DEFINE(HAVE_LD_PLUGIN, 1,
+[Define if your linker supports plugin.])
+ fi
+ AC_MSG_RESULT($gcc_cv_ld_plugin)
+fi
+
case "$target" in
# All TARGET_ABI_OSF targets.
alpha*-*-osf* | alpha*-*-linux* | alpha*-*-*bsd*)