S/390: Fix vector shift count operand
authorAndreas Krebbel <krebbel@linux.ibm.com>
Mon, 1 Jul 2019 14:56:41 +0000 (14:56 +0000)
committerAndreas Krebbel <krebbel@gcc.gnu.org>
Mon, 1 Jul 2019 14:56:41 +0000 (14:56 +0000)
commitcbce506fc4c8fe2762f193a51f5bc302e4ae36da
treeda39c6b9e330ca549d77df3569a8a487725c423e
parentd21c7dd6a2cf854da4776082cc6903acbdf8391f
S/390: Fix vector shift count operand

We currently use subst definitions to handle the different variants of shift
count operands. Unfortunately, in the vector shift pattern the shift count
operand is used directly. Without it being adjusted for the 'subst' variants the
displacement value is omitted resulting in a wrong shift count being applied.

This patch needs to be applied to older branches as well.

gcc/ChangeLog:

2019-07-01  Andreas Krebbel  <krebbel@linux.ibm.com>

* config/s390/vector.md:

gcc/testsuite/ChangeLog:

2019-07-01  Andreas Krebbel  <krebbel@linux.ibm.com>

* gcc.target/s390/vector/vec-shift-2.c: New test.

From-SVN: r272884
gcc/ChangeLog
gcc/config/s390/vector.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/s390/vector/vec-shift-2.c [new file with mode: 0644]