re PR target/43733 (bootstrap fails on Solaris 10 x86 with GNU as 2.15 and --with-arch=core2)

PR target/43733
	* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
	* configure: Regenerate.
	* config.in: Regenerate.
	* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
	instead of sahf only for 64bit targets.

From-SVN: r159636
This commit is contained in:
Uros Bizjak 2010-05-20 20:52:03 +02:00 committed by Uros Bizjak
parent 8961e01e95
commit 953c29f73e
5 changed files with 26 additions and 14 deletions

View file

@ -1,3 +1,12 @@
2010-05-20 Uros Bizjak <ubizjak@gmail.com>
PR target/43733
* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
instead of sahf only for 64bit targets.
2010-05-20 Jakub Jelinek <jakub@redhat.com>
PR debug/44178

View file

@ -309,19 +309,19 @@
#endif
/* Define true if the assembler supports 'rep <insn>, lock <insn>'. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_IX86_REP_LOCK_PREFIX
#endif
/* Define if your assembler supports the .quad directive. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_IX86_QUAD
#endif
/* Define if your assembler supports the sahf mnemonic. */
/* Define true if the assembler supports 'rep <insn>, lock <insn>'. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_IX86_REP_LOCK_PREFIX
#endif
/* Define if your assembler supports the sahf mnemonic in 64bit mode. */
#ifndef USED_FOR_TARGET
#undef HAVE_AS_IX86_SAHF
#endif

View file

@ -1428,11 +1428,12 @@
UNSPEC_SAHF))]
"TARGET_SAHF"
{
#ifdef HAVE_AS_IX86_SAHF
return "sahf";
#else
return ASM_BYTE "0x9e";
#ifndef HAVE_AS_IX86_SAHF
if (TARGET_64BIT)
return ASM_BYTE "0x9e";
else
#endif
return "sahf";
}
[(set_attr "length" "1")
(set_attr "athlon_decode" "vector")

3
gcc/configure vendored
View file

@ -23195,7 +23195,8 @@ if test "${gcc_cv_as_ix86_sahf+set}" = set; then :
else
gcc_cv_as_ix86_sahf=no
if test x$gcc_cv_as != x; then
echo 'sahf' > conftest.s
echo '.code64
sahf' > conftest.s
if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5

View file

@ -3288,9 +3288,10 @@ foo: nop
gcc_GAS_CHECK_FEATURE([sahf mnemonic],
gcc_cv_as_ix86_sahf,,,
[sahf],,
[.code64
sahf],,
[AC_DEFINE(HAVE_AS_IX86_SAHF, 1,
[Define if your assembler supports the sahf mnemonic.])])
[Define if your assembler supports the sahf mnemonic in 64bit mode.])])
gcc_GAS_CHECK_FEATURE([swap suffix],
gcc_cv_as_ix86_swap,,,