-
- Downloads
s390: Add LEN_LOAD/LEN_STORE support.
This patch adds LEN_LOAD/LEN_STORE support for z13 and newer. It defines a bias value of -1 and implements the LEN_LOAD and LEN_STORE optabs. Add vll/vstl testcases adapted from Power. Also change expectations for SLP testcases with more than one rgroup. gcc/ChangeLog: * config/s390/predicates.md (vll_bias_operand): Add -1 bias. * config/s390/s390.cc (s390_option_override_internal): Make partial vector usage the default from z13 on. * config/s390/vector.md (len_load_v16qi): Add. (len_store_v16qi): Add. gcc/testsuite/ChangeLog: * gcc.target/s390/s390.exp: Add partial subdirectory. * gcc.target/s390/vector/vec-nopeel-2.c: Change test expectation. * lib/target-supports.exp: Add s390. * gcc.target/s390/vector/partial/s390-vec-length-1.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-2.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-3.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-7.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-1.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-2.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-3.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-7.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-run-1.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-run-2.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-run-3.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-epil-run-7.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-1.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-2.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-3.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-7.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-run-1.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-run-2.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-run-3.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-full-run-7.c: New test. * gcc.target/s390/vector/partial/s390-vec-length-run-1.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-run-2.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-run-3.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-run-7.h: New test. * gcc.target/s390/vector/partial/s390-vec-length-small.c: New test. * gcc.target/s390/vector/partial/s390-vec-length.h: New test.
Showing
- gcc/config/s390/predicates.md 8 additions, 0 deletionsgcc/config/s390/predicates.md
- gcc/config/s390/s390.cc 8 additions, 1 deletiongcc/config/s390/s390.cc
- gcc/config/s390/vector.md 35 additions, 0 deletionsgcc/config/s390/vector.md
- gcc/testsuite/gcc.target/s390/s390.exp 3 additions, 0 deletionsgcc/testsuite/gcc.target/s390/s390.exp
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-1.h 18 additions, 0 deletions...tsuite/gcc.target/s390/vector/partial/s390-vec-length-1.h
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-2.h 18 additions, 0 deletions...tsuite/gcc.target/s390/vector/partial/s390-vec-length-2.h
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-3.h 31 additions, 0 deletions...tsuite/gcc.target/s390/vector/partial/s390-vec-length-3.h
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-7.h 17 additions, 0 deletions...tsuite/gcc.target/s390/vector/partial/s390-vec-length-7.h
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-1.c 13 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-epil-1.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-2.c 13 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-epil-2.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-3.c 16 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-epil-3.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-7.c 11 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-epil-7.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-run-1.c 7 additions, 0 deletions...c.target/s390/vector/partial/s390-vec-length-epil-run-1.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-run-2.c 7 additions, 0 deletions...c.target/s390/vector/partial/s390-vec-length-epil-run-2.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-run-3.c 7 additions, 0 deletions...c.target/s390/vector/partial/s390-vec-length-epil-run-3.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-epil-run-7.c 7 additions, 0 deletions...c.target/s390/vector/partial/s390-vec-length-epil-run-7.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-full-1.c 12 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-full-1.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-full-2.c 12 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-full-2.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-full-3.c 13 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-full-3.c
- gcc/testsuite/gcc.target/s390/vector/partial/s390-vec-length-full-7.c 14 additions, 0 deletions...e/gcc.target/s390/vector/partial/s390-vec-length-full-7.c
Loading
Please register or sign in to comment