Disallow 'B' constraints on amdgcn addc/subb
authorAndrew Stubbs <ams@codesourcery.com>
Tue, 7 Jan 2020 14:35:21 +0000 (14:35 +0000)
committerAndrew Stubbs <ams@gcc.gnu.org>
Tue, 7 Jan 2020 14:35:21 +0000 (14:35 +0000)
commit66b01cc3421055806f51ac36a8d237536970504c
tree3de52ccce5677baf7051c972f5ec102bac8a5b24
parent77aecac1b2564fd6087c424e3400f053202a79e0
Disallow 'B' constraints on amdgcn addc/subb

2020-01-07  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/gcn/constraints.md (DA): Update description and match.
(DB): Likewise.
(Db): New constraint.
* config/gcn/gcn-protos.h (gcn_inline_constant64_p): Add second
parameter.
* config/gcn/gcn.c (gcn_inline_constant64_p): Add 'mixed' parameter.
Implement 'Db' mixed immediate type.
* config/gcn/gcn-valu.md (addcv64si3<exec_vcc>): Rework constraints.
(addcv64si3_dup<exec_vcc>): Delete.
(subcv64si3<exec_vcc>): Rework constraints.
(addv64di3): Rework constraints.
(addv64di3_exec): Rework constraints.
(subv64di3): Rework constraints.
(addv64di3_dup): Delete.
(addv64di3_dup_exec): Delete.
(addv64di3_zext): Rework constraints.
(addv64di3_zext_exec): Rework constraints.
(addv64di3_zext_dup): Rework constraints.
(addv64di3_zext_dup_exec): Rework constraints.
(addv64di3_zext_dup2): Rework constraints.
(addv64di3_zext_dup2_exec): Rework constraints.
(addv64di3_sext_dup2): Rework constraints.
(addv64di3_sext_dup2_exec): Rework constraints.

From-SVN: r279959
gcc/ChangeLog
gcc/config/gcn/constraints.md
gcc/config/gcn/gcn-protos.h
gcc/config/gcn/gcn-valu.md
gcc/config/gcn/gcn.c