diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2005-11-09 20:13:41 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@gcc.gnu.org> | 2005-11-09 20:13:41 +0000 |
commit | a0203ca711308b96d33acb895d4f7d254594287c (patch) | |
tree | cdc3a1f501856957bef831df0b91b2b381edd2b8 /gcc/configure | |
parent | 317adebb1faac58d50f0e44906aa18edaf663759 (diff) | |
download | gcc-a0203ca711308b96d33acb895d4f7d254594287c.zip gcc-a0203ca711308b96d33acb895d4f7d254594287c.tar.gz gcc-a0203ca711308b96d33acb895d4f7d254594287c.tar.bz2 |
re PR other/4372 (#pragma weak pthread* inclusion causes applications to crash without a linker error when one forgets to link with -lpthread)
PR other/4372
* tree.h (IDENTIFIER_TRANSPARENT_ALIAS): New.
(TREE_DEPRECATED): Adjust comment. Check for a DECL.
* c-common.c (handle_weakref_attribute): New.
(c_common_attribute_table): Add weakref.
* configure.ac (HAVE_GAS_WEAKREF): Check for weakref support
in the assembler.
* configure, config.in: Rebuilt.
* defaults.h (ASM_OUTPUT_WEAKREF): Define if HAVE_GAS_WEAKREF.
* doc/extend.texi: Document weakref attribute.
* varasm.c (ultimate_transparent_alias_target): New
(assemble_name): Use it.
(weak_finish_1): Split out of...
(weak_finish): ... and deal with weakrefs in...
(weakref_targets): ... new list.
(globalize_decl): Clean up weakref_targets.
(do_assemble_alias): Handle weakrefs.
(finish_aliases_1): Do not reject weakrefs to external symbols.
(assemble_alias): Handle weakrefs.
From-SVN: r106703
Diffstat (limited to 'gcc/configure')
-rwxr-xr-x | gcc/configure | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/gcc/configure b/gcc/configure index df77571..ba43b58 100755 --- a/gcc/configure +++ b/gcc/configure @@ -13988,6 +13988,43 @@ _ACEOF fi +echo "$as_me:$LINENO: checking assembler for .weakref" >&5 +echo $ECHO_N "checking assembler for .weakref... $ECHO_C" >&6 +if test "${gcc_cv_as_weakref+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gcc_cv_as_weakref=no + if test $in_tree_gas = yes; then + if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 17 \) \* 1000 + 0` + then gcc_cv_as_weakref=yes +fi + elif test x$gcc_cv_as != x; then + echo ' .weakref foobar, barfnot' > conftest.s + if { ac_try='$gcc_cv_as -o conftest.o conftest.s >&5' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } + then + gcc_cv_as_weakref=yes + else + echo "configure: failed program was" >&5 + cat conftest.s >&5 + fi + rm -f conftest.o conftest.s + fi +fi +echo "$as_me:$LINENO: result: $gcc_cv_as_weakref" >&5 +echo "${ECHO_T}$gcc_cv_as_weakref" >&6 +if test $gcc_cv_as_weakref = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_GAS_WEAKREF 1 +_ACEOF + +fi + echo "$as_me:$LINENO: checking assembler for .nsubspa comdat" >&5 echo $ECHO_N "checking assembler for .nsubspa comdat... $ECHO_C" >&6 if test "${gcc_cv_as_nsubspa_comdat+set}" = set; then |