Remove amdgcn expcnt waits.
authorAndrew Stubbs <ams@codesourcery.com>
Wed, 31 Jul 2019 11:51:21 +0000 (11:51 +0000)
committerAndrew Stubbs <ams@gcc.gnu.org>
Wed, 31 Jul 2019 11:51:21 +0000 (11:51 +0000)
commit930c55993f514c51aca0374650029d99056412a3
tree33a7d4810d8aa18f48b7e86b657146d4ed4a0f5f
parentf86c2e7196bdf285c0245064be96a0b2816e013a
Remove amdgcn expcnt waits.

2019-07-31  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/gcn/gcn-valu.md
(scatter<mode>_insn_1offset<exec_scatter>): Remove s_waitcnt.
(scatter<mode>_insn_1offset_ds<exec_scatter>): Likewise.
(scatter<mode>_insn_2offsets<exec_scatter>): Likewise.
* config/gcn/gcn.c (gcn_md_reorg): Add delayeduse and reads to
struct ilist. Add nops for delayeduse insns.
* config/gcn/gcn.md (delayeduse): New attribute.
(*movbi): Remove s_waitcnt from stores.
(*mov<mode>_insn): Likewise.
(*movti_insn): Likewise. Add delayeduse attribute.
(sync_compare_and_swap<mode>_insn): Add delayeduse attribute.
(atomic_store<mode>): Remove or adjust s_waitcnt.

From-SVN: r273931
gcc/ChangeLog
gcc/config/gcn/gcn-valu.md
gcc/config/gcn/gcn.c
gcc/config/gcn/gcn.md