backport: sync.md: New file.
Merge from gomp-branch.
* config/sparc/sync.md: New file.
* config/sparc/sparc.md (UNSPECV_MEMBAR, UNSPECV_CAS, UNSPECV_SWAP,
UNSPECV_LDSTUB): New constants.
* config/sparc/sparc.c (sparc_expand_compare_and_swap_12): New function.
* config/sparc/predicates.md (memory_reg_operand): New predicate.
* config/sparc/sparc-protos.h (sparc_expand_compare_and_swap_12): New
prototype.
* gcc.dg/ia64-sync-1.c: On sparc*-*-*, pass -mcpu=v9.
* gcc.dg/ia64-sync-2.c: Likewise.
* gcc.dg/ia64-sync-3.c: Likewise.
* gcc.dg/ia64-sync-4.c: Likewise.
* gcc.dg/sync-2.c: Likewise.
* lib/target-supports.exp (sync_char_short, sync_int_long): Indicate
that sparc64-*-* and sparcv9-*-* supports sync builtins.
From-SVN: r109271
13 files changed: