Commit 4551169f by Richard Sandiford Committed by Richard Sandiford

configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE.

gcc/
	* configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE.  Test for the
	-mno-shared assembler option on mips targets.
	* configure, config.in: Regenerate.
	* config/mips/linux.h (NO_SHARED_SPECS): New macro.
	(DRIVER_SELF_SPECS): Define to NO_SHARED_SPECS if non-empty.
	* config/mips/linux64.h (DRIVER_SELF_SPECS): Include NO_SHARED_SPECS.

From-SVN: r118138
parent 5f687d19
2006-10-29 Richard Sandiford <richard@codesourcery.com> 2006-10-29 Richard Sandiford <richard@codesourcery.com>
* configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE. Test for the
-mno-shared assembler option on mips targets.
* configure, config.in: Regenerate.
* config/mips/linux.h (NO_SHARED_SPECS): New macro.
(DRIVER_SELF_SPECS): Define to NO_SHARED_SPECS if non-empty.
* config/mips/linux64.h (DRIVER_SELF_SPECS): Include NO_SHARED_SPECS.
2006-10-29 Richard Sandiford <richard@codesourcery.com>
* config/mips/mips.c (mips_classify_symbol): Test DECL_WEAK as well * config/mips/mips.c (mips_classify_symbol): Test DECL_WEAK as well
as TREE_PUBLIC when deciding whether to return SYMBOL_GOT_GLOBAL. as TREE_PUBLIC when deciding whether to return SYMBOL_GOT_GLOBAL.
......
...@@ -239,6 +239,12 @@ ...@@ -239,6 +239,12 @@
#endif #endif
/* Define if the assembler understands -mno-shared. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_NO_SHARED
#endif
/* Define if your assembler supports offsetable %lo(). */ /* Define if your assembler supports offsetable %lo(). */
#ifndef USED_FOR_TARGET #ifndef USED_FOR_TARGET
#undef HAVE_AS_OFFSETABLE_LO10 #undef HAVE_AS_OFFSETABLE_LO10
......
...@@ -179,3 +179,12 @@ Boston, MA 02110-1301, USA. */ ...@@ -179,3 +179,12 @@ Boston, MA 02110-1301, USA. */
%{profile:-lc_p} %{!profile: -lc}}" %{profile:-lc_p} %{!profile: -lc}}"
#define MD_UNWIND_SUPPORT "config/mips/linux-unwind.h" #define MD_UNWIND_SUPPORT "config/mips/linux-unwind.h"
#ifdef HAVE_AS_NO_SHARED
/* Default to -mno-shared for non-PIC. */
#define NO_SHARED_SPECS \
"%{mshared|mno-shared|fpic|fPIC|fpie|fPIE:;:-mno-shared}",
#define DRIVER_SELF_SPECS NO_SHARED_SPECS
#else
#define NO_SHARED_SPECS
#endif
...@@ -21,7 +21,9 @@ Boston, MA 02110-1301, USA. */ ...@@ -21,7 +21,9 @@ Boston, MA 02110-1301, USA. */
/* Force the default endianness and ABI flags onto the command line /* Force the default endianness and ABI flags onto the command line
in order to make the other specs easier to write. */ in order to make the other specs easier to write. */
#undef DRIVER_SELF_SPECS
#define DRIVER_SELF_SPECS \ #define DRIVER_SELF_SPECS \
NO_SHARED_SPECS \
"%{!EB:%{!EL:%(endian_spec)}}", \ "%{!EB:%{!EL:%(endian_spec)}}", \
"%{!mabi=*: -mabi=n32}" "%{!mabi=*: -mabi=n32}"
......
...@@ -15590,6 +15590,42 @@ if test $gcc_cv_as_mips_explicit_relocs = yes; then ...@@ -15590,6 +15590,42 @@ if test $gcc_cv_as_mips_explicit_relocs = yes; then
else target_cpu_default="($target_cpu_default)|MASK_EXPLICIT_RELOCS" else target_cpu_default="($target_cpu_default)|MASK_EXPLICIT_RELOCS"
fi fi
fi fi
echo "$as_me:$LINENO: checking assembler for -mno-shared support" >&5
echo $ECHO_N "checking assembler for -mno-shared support... $ECHO_C" >&6
if test "${gcc_cv_as_mips_no_shared+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
gcc_cv_as_mips_no_shared=no
if test $in_tree_gas = yes; then
if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 16 \) \* 1000 + 0`
then gcc_cv_as_mips_no_shared=yes
fi
elif test x$gcc_cv_as != x; then
echo 'nop' > conftest.s
if { ac_try='$gcc_cv_as -mno-shared -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_mips_no_shared=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_mips_no_shared" >&5
echo "${ECHO_T}$gcc_cv_as_mips_no_shared" >&6
if test $gcc_cv_as_mips_no_shared = yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_AS_NO_SHARED 1
_ACEOF
fi
;; ;;
esac esac
......
...@@ -2952,6 +2952,10 @@ LCF0: ...@@ -2952,6 +2952,10 @@ LCF0:
then target_cpu_default=MASK_EXPLICIT_RELOCS then target_cpu_default=MASK_EXPLICIT_RELOCS
else target_cpu_default="($target_cpu_default)|MASK_EXPLICIT_RELOCS" else target_cpu_default="($target_cpu_default)|MASK_EXPLICIT_RELOCS"
fi]) fi])
gcc_GAS_CHECK_FEATURE([-mno-shared support],
gcc_cv_as_mips_no_shared, [2,16,0], [-mno-shared], [nop],,
[AC_DEFINE(HAVE_AS_NO_SHARED, 1,
[Define if the assembler understands -mno-shared.])])
;; ;;
esac esac
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment