diff options
author | Richard Henderson <rth@redhat.com> | 2011-11-22 15:13:48 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2011-11-22 15:13:48 -0800 |
commit | 28875d673a290305b10f249b72c6c25ca0c5fd18 (patch) | |
tree | de0d7f6e93913bbb6d43c880707e4fe1118e3452 /gcc/c-errors.c | |
parent | 127e44c868bd2bc9416781d212a293760ea413f6 (diff) | |
download | gcc-28875d673a290305b10f249b72c6c25ca0c5fd18.zip gcc-28875d673a290305b10f249b72c6c25ca0c5fd18.tar.gz gcc-28875d673a290305b10f249b72c6c25ca0c5fd18.tar.bz2 |
ia64: Update to atomic optabs
* config/ia64/ia64.c (ia64_expand_atomic_op): Add model parameter.
Generate the barrier required for the memory model.
(rtx_needs_barrier): Handle UNSPEC_FETCHADD_REL, UNSPEC_CMPXCHG_REL.
* config/ia64/ia64-protos.h: Update.
* config/ia64/ia64.md (UNSPEC_FETCHADD_REL): New.
(UNSPEC_CMPXCHG_REL): New.
* config/ia64/sync.md (mem_thread_fence): New.
(atomic_load<IMODE>, atomic_store<IMODE>): New.
(atomic_compare_and_swap<IMODE>): New.
(cmpxchg_acq_<I124MODE>, cmpxchg_acq_di): New.
(atomic_exchange<IMODE>): New.
(xchg_acq_<IMODE>): Rename from sync_lock_test_and_set<IMODE>.
(atomic_<FETCHOP><IMODE>, atomic_nand<IMODE>): New.
(atomic_fetch_<FETCHOP><IMODE>, atomic_fetch_nand<IMODE>): New.
(atomic_<FETCHOP>_fetch<IMODE>, atomic_nand_fetch<IMODE>): New.
(fetchadd_rel_<I48MODE>): New.
(sync_<FETCHOP><IMODE>, sync_nand<IMODE>): Remove.
(sync_old_<FETCHOP><IMODE>, sync_old_nand<IMODE>): Remove.
(sync_new_<FETCHOP><IMODE>, sync_new_nand<IMODE>): Remove.
(sync_compare_and_swap<IMODE>): Remove.
(sync_lock_release<IMODE>): Remove.
From-SVN: r181643
Diffstat (limited to 'gcc/c-errors.c')
0 files changed, 0 insertions, 0 deletions