This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r181851 - in /trunk/gcc: ChangeLog config/sparc...
- From: rth at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 30 Nov 2011 15:53:46 -0000
- Subject: r181851 - in /trunk/gcc: ChangeLog config/sparc...
Author: rth
Date: Wed Nov 30 15:53:45 2011
New Revision: 181851
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181851
Log:
sparc: Convert to atomic_compare_and_swap.
* config/sparc/constraints.md ("w"): New.
* config/sparc/predicates.md (mem_noofs_operand): New.
* config/sparc/sparc.c (sparc_expand_compare_and_swap_12): Make static.
Generate the boolean result of the atomic_compare_exchange.
(sparc_expand_compare_and_swap): New.
* config/sparc/sync.md (atomic_compare_and_swap<I>): New.
(atomic_compare_and_swap<I48MODE>_1): Rename from
*sync_compare_and_swap<I48MODE>, use mem_noofs_operand.
(*atomic_compare_and_swapdi_v8plus): Rename from
*sync_compare_and_swapdi_v8plus, use mem_noofs_operand.
(sync_compare_and_swap<I12MODE>): Remove.
(sync_compare_and_swap<I48MODE>): Remove.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sparc/constraints.md
trunk/gcc/config/sparc/predicates.md
trunk/gcc/config/sparc/sparc-protos.h
trunk/gcc/config/sparc/sparc.c
trunk/gcc/config/sparc/sync.md