S/390: Improve support of 128 bit vectors in GPRs
commit4c715561ea10236239c4c2e2a24da7ea6d99ebc1
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Mar 2017 13:53:43 +0000 (24 13:53 +0000)
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 24 Mar 2017 13:53:43 +0000 (24 13:53 +0000)
tree64f82f05433ab392a1c3945b90fb5f938fdd94cc
parent7aace192e6fe015b0c0be11978aa790abfa7fa85
S/390: Improve support of 128 bit vectors in GPRs

This patch improves the handling of 128 bit vectors residing in GPRs
by adding more alternatives to the move pattern.

Regression tested on s390x.

gcc/ChangeLog:

2017-03-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/constraints.md: Add comments.
(jKK): Reject element sizes > 8 bytes.
* config/s390/s390.c (s390_split_ok_p): Enable splitting also for
s_operands.
* config/s390/s390.md: Add the s_operand checks formerly in
s390_split_ok_p to various splitters where they are still
required.
* config/s390/vector.md ("mov<mode>" V_128): Add GPR alternatives
for 128 bit vectors.  Plus two splitters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246445 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/s390/constraints.md
gcc/config/s390/s390.c
gcc/config/s390/s390.md
gcc/config/s390/vector.md