r181851 - in /trunk/gcc: ChangeLog config/sparc...
rth@gcc.gnu.org
rth@gcc.gnu.org
Wed Nov 30 15:53:00 GMT 2011
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
More information about the Gcc-cvs
mailing list