Properly set the latency of atomic ops to the approximate latency of a remote memory...
authorWalter Lee <walt@tilera.com>
Mon, 27 Aug 2012 17:27:04 +0000 (17:27 +0000)
committerWalter Lee <walt@gcc.gnu.org>
Mon, 27 Aug 2012 17:27:04 +0000 (17:27 +0000)
commit9b0370aa4bb78d7fb8ba2b3a4ca0487647fbb9f1
tree3dc6ee6adb05e3e6c1085bc2753027848a296a2c
parent865ea646b4a8bc3b7891c2c3094f6c9267c2859f
Properly set the latency of atomic ops to the approximate latency of a remote memory operation.

Properly set the latency of atomic ops to the approximate latency of a
remote memory operation.
* config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>,
atomic_exchange_bare<mode>,
atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote.
* config/tilegx/tilegx-generic.md (X1_remote): New
insn_reservation.
* config/tilegx/tilegx.md (type): Add X1_remove.
(insn_cmpexch<four_if_si>, insn_exch<four_if_si>,
insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>,
insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to
X1_remote.

From-SVN: r190722
gcc/ChangeLog
gcc/config/tilegx/sync.md
gcc/config/tilegx/tilegx-generic.md
gcc/config/tilegx/tilegx.md