constraints.md (ZR): New constraint.
authorTom de Vries <vries@codesourcery.com>
Wed, 20 Jun 2012 00:59:08 +0000 (00:59 +0000)
committerMaxim Kuvyrkov <mkuvyrkov@gcc.gnu.org>
Wed, 20 Jun 2012 00:59:08 +0000 (00:59 +0000)
commit6399761a4a77d5e5996c8e82eba042f4a26a4c3d
treef1219ec201306c17b838cace3e3d9e84db7b1af8
parent01c196ea91cce2665bc7e8df7edfd7dca0352d86
constraints.md (ZR): New constraint.

2012-06-19  Tom de Vries  <vries@codesourcery.com>
            Maxim Kuvyrkov  <maxim@codesourcery.com>

* config/mips/constraints.md (ZR): New constraint.
* config/mips/predicates.md (mem_noofs_operand): New predicate.
* config/mips/mips.c (mips_print_operand): Handle new print modifier.
        * config/mips/mips.h (TARGET_XLP): Define.
(TARGET_SYNC_AFTER_SC): Update.
(ISA_HAS_SWAP, ISA_HAS_LDADD): Define.
* config/mips/sync.md (atomic_exchange, atomic_fetch_add): Use
XLP-specific swap and ldadd patterns.
(atomic_exchange_swap, atomic_fetch_add_ldadd): New patterns.

Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com>
From-SVN: r188804
gcc/ChangeLog
gcc/config/mips/constraints.md
gcc/config/mips/mips.c
gcc/config/mips/mips.h
gcc/config/mips/predicates.md
gcc/config/mips/sync.md