diff options
author | ro <ro@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-17 20:28:56 +0000 |
---|---|---|
committer | ro <ro@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-17 20:28:56 +0000 |
commit | fa1a750285740ce8a2a7f9e1278ed71e68105331 (patch) | |
tree | 138f930705ab7ab9cd6f8a9659d2f3d7927c2c74 /gcc/configure.ac | |
parent | 7c75339c4af0b37a67933ede0dccae3ca45623f8 (diff) | |
download | gcc-fa1a750285740ce8a2a7f9e1278ed71e68105331.tar.gz |
PR target/44074
* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/i386.c (print_operand) <case ;>: Also print ; if
!HAVE_AS_IX86_REP_LOCK_PREFIX.
Don't emit whitespace.
* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
(*rep_movsi): Likewise.
(*rep_movsi_rex64): Likewise.
(*rep_movqi): Likewise.
(*rep_movqi_rex64): Likewise.
(*rep_stosdi_rex64): Likewise.
(*rep_stossi): Likewise.
(*rep_stossi_rex64): Likewise.
(*rep_stosqi): Likewise.
(*rep_stosqi_rex64): Likewise.
(*cmpstrnqi_nz_1): Use {%;} after repz.
(*cmpstrnqi_nz_rex_1): Likewise.
(*cmpstrnqi_1): Likewise.
(*cmpstrnqi_rex_1): Likewise.
(*strlenqi_1): Use {%;} after repnz.
(*strlenqi_rex_1): Likewise.
* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
(*sync_compare_and_swap<mode>): Likewise.
(sync_double_compare_and_swap<mode>): Likewise.
(*sync_double_compare_and_swapdi_pic): Likewise.
(sync_old_add<mode>): Likewise.
(sync_add<mode>): Likewise.
(sync_sub<mode>): Likewise.
(sync_<code><mode>): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159512 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/configure.ac')
-rw-r--r-- | gcc/configure.ac | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/configure.ac b/gcc/configure.ac index 5c3a1e18c4f..743798e23cb 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -3276,7 +3276,7 @@ foo: nop [AC_DEFINE(HAVE_AS_IX86_DIFF_SECT_DELTA, 1, [Define if your assembler supports the subtraction of symbols in different sections.])]) - # This one is used unconditionally by i386.[ch]; it is to be defined + # These two are used unconditionally by i386.[ch]; it is to be defined # to 1 if the feature is present, 0 otherwise. gcc_GAS_CHECK_FEATURE([GOTOFF in data], gcc_cv_as_ix86_gotoff_in_data, [2,11,0],, @@ -3288,6 +3288,15 @@ foo: nop AC_DEFINE_UNQUOTED(HAVE_AS_GOTOFF_IN_DATA, [`if test $gcc_cv_as_ix86_gotoff_in_data = yes; then echo 1; else echo 0; fi`], [Define true if the assembler supports '.long foo@GOTOFF'.]) + + gcc_GAS_CHECK_FEATURE([rep and lock prefix], + gcc_cv_as_ix86_rep_lock_prefix,,, + [rep movsl + lock orl $0, (%esp)]) + AC_DEFINE_UNQUOTED(HAVE_AS_IX86_REP_LOCK_PREFIX, + [`if test $gcc_cv_as_ix86_rep_lock_prefix = yes; then echo 1; else echo 0; fi`], + [Define true if the assembler supports 'rep <insn>, lock <insn>'.]) + ;; ia64*-*-*) |