configure.ac: Check for .gnu_attribute on MIPS.

* configure.ac: Check for .gnu_attribute on MIPS.
	* configure, config.in: Regenerate.
	* config/mips/mips.c (mips_file_start): If supported, output
	attribute for floating-point ABI.

From-SVN: r126157
This commit is contained in:
Joseph Myers 2007-06-30 23:01:30 +01:00 committed by Joseph Myers
parent 81c3e25a40
commit dcb957d9dc
5 changed files with 61 additions and 0 deletions

View File

@ -1,3 +1,10 @@
2007-06-30 Joseph Myers <joseph@codesourcery.com>
* configure.ac: Check for .gnu_attribute on MIPS.
* configure, config.in: Regenerate.
* config/mips/mips.c (mips_file_start): If supported, output
attribute for floating-point ABI.
2007-06-30 Uros Bizjak <ubizjak@gmail.com>
PR target/32433

View File

@ -210,6 +210,12 @@
#endif
/* Define if your assembler supports .gnu_attribute. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_GNU_ATTRIBUTE
#endif
/* Define true if the assembler supports '.long foo@GOTOFF'. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_GOTOFF_IN_DATA

View File

@ -6010,6 +6010,11 @@ mips_file_start (void)
if (!TARGET_IRIX)
{
#ifdef HAVE_AS_GNU_ATTRIBUTE
fprintf (asm_out_file, "\t.gnu_attribute 4, %d\n",
TARGET_HARD_FLOAT_ABI ? (TARGET_DOUBLE_FLOAT ? 1 : 2) : 3);
#endif
/* Generate a special section to describe the ABI switches used to
produce the resultant binary. This used to be done by the assembler
setting bits in the ELF header's flags field, but we have run out of

37
gcc/configure vendored
View File

@ -15832,6 +15832,43 @@ cat >>confdefs.h <<\_ACEOF
#define HAVE_AS_NO_SHARED 1
_ACEOF
fi
echo "$as_me:$LINENO: checking assembler for .gnu_attribute support" >&5
echo $ECHO_N "checking assembler for .gnu_attribute support... $ECHO_C" >&6
if test "${gcc_cv_as_mips_gnu_attribute+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
gcc_cv_as_mips_gnu_attribute=no
if test $in_tree_gas = yes; then
if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 18 \) \* 1000 + 0`
then gcc_cv_as_mips_gnu_attribute=yes
fi
elif test x$gcc_cv_as != x; then
echo '.gnu_attribute 4,1' > 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_mips_gnu_attribute=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_gnu_attribute" >&5
echo "${ECHO_T}$gcc_cv_as_mips_gnu_attribute" >&6
if test $gcc_cv_as_mips_gnu_attribute = yes; then
cat >>confdefs.h <<\_ACEOF
#define HAVE_AS_GNU_ATTRIBUTE 1
_ACEOF
fi
;;
esac

View File

@ -2943,6 +2943,12 @@ LCF0:
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.])])
gcc_GAS_CHECK_FEATURE([.gnu_attribute support],
gcc_cv_as_mips_gnu_attribute, [2,18,0],,
[.gnu_attribute 4,1],,
[AC_DEFINE(HAVE_AS_GNU_ATTRIBUTE, 1,
[Define if your assembler supports .gnu_attribute.])])
;;
esac