r266336 - in /trunk/gcc: ChangeLog config.in co...
krebbel@gcc.gnu.org
krebbel@gcc.gnu.org
Wed Nov 21 07:48:00 GMT 2018
Author: krebbel
Date: Wed Nov 21 07:48:49 2018
New Revision: 266336
URL: https://gcc.gnu.org/viewcvs?rev=266336&root=gcc&view=rev
Log:
S/390: Support vector load/store alignment hints
The IBM z14 POP adds an optional alignment operand to the vl, vst,
vlm, and vstm instruction (vector loads and stores). Vectors residing
on 8 or 16 byte boundaries might get loaded or stored faster on some
models given the instruction uses the proper hint operand. A wrong
hint will hurt performance though.
The attached testcase align-1 currently fails due to:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88085
gcc/ChangeLog:
2018-11-21 Andreas Krebbel <krebbel@linux.ibm.com>
* configure.ac: Add check for Binutils to determine whether vector
load/store alignments hints are being supported.
* config.in: Regenerate.
* configure: Regenerate.
* config/s390/s390.c (print_operand): Support new output
modifier A.
* config/s390/s390.md ("movti"): Append alignment hint output
using the new output modifier 'A'.
* config/s390/vector.md ("mov<mode>", "*vec_tf_to_v1tf")
("*vec_ti_to_v1ti"): Likewise.
gcc/testsuite/ChangeLog:
2018-11-21 Andreas Krebbel <krebbel@linux.ibm.com>
* gcc.target/s390/vector/align-1.c: New test.
* gcc.target/s390/vector/align-2.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/s390/vector/align-1.c
trunk/gcc/testsuite/gcc.target/s390/vector/align-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config.in
trunk/gcc/config/s390/s390.c
trunk/gcc/config/s390/s390.md
trunk/gcc/config/s390/vector.md
trunk/gcc/configure
trunk/gcc/configure.ac
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-cvs
mailing list