[PATCH 0/3] S/390: Shift count improvements.
Robin Dapp
rdapp@linux.ibm.com
Mon Jul 8 06:54:00 GMT 2019
Hi,
these patches introduce a new predicate that recognizes
shift-count operands instead of the subst patterns we
used before. This allows introducing (no-op) subregs in
the patterns which was not possible via subst before
(see https://gcc.gnu.org/ml/gcc-patches/2019-05/msg00853.html).
The second patch adds some tests.
The third patch defines the shift_truncation_mask and adds
a test for it.
Bootstrapped and regtested.
Regards
Robin
---
Robin Dapp (3):
S/390: Rework shift count handling.
S/390: Shift count tests.
S/390: Define shift_truncation_mask.
gcc/config/s390/constraints.md | 12 ++
gcc/config/s390/predicates.md | 29 +++++
gcc/config/s390/s390-protos.h | 1 +
gcc/config/s390/s390.c | 59 +++++++++-
gcc/config/s390/s390.md | 43 +++----
gcc/config/s390/subst.md | 72 ------------
gcc/config/s390/vector.md | 14 ++-
.../gcc.target/s390/combine-rotate-modulo.c | 36 ++++++
.../s390/combine-shift-rotate-add-mod.c | 29 +++++
.../gcc.target/s390/vector/combine-shift-vec.c | 107 ++++++++++++++++++
.../gcc.target/s390/rotate-truncation-mask.c | 11 ++
11 files changed, 314 insertions(+), 99 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/s390/combine-rotate-modulo.c
create mode 100644 gcc/testsuite/gcc.target/s390/combine-shift-rotate-add-mod.c
create mode 100644 gcc/testsuite/gcc.target/s390/vector/combine-shift-vec.c
create mode 100644 gcc/testsuite/gcc.target/s390/rotate-truncation-mask.c
--
2.17.0
More information about the Gcc-patches
mailing list