aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2025-01-09 22:04:58 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2025-01-09 22:04:58 +0100
commit8e4120500e0cfc71956dc6569fe4ff00d2c20949 (patch)
treef8d271e0718c0cd54cb29df0fb193507e579defd /gcc
parent21571cdd8355f2162910d40f2f72222d2dd4046f (diff)
downloadgcc-8e4120500e0cfc71956dc6569fe4ff00d2c20949.zip
gcc-8e4120500e0cfc71956dc6569fe4ff00d2c20949.tar.gz
gcc-8e4120500e0cfc71956dc6569fe4ff00d2c20949.tar.bz2
s390: Add testcase for just fixed PR118362
On Thu, Jan 09, 2025 at 01:29:27PM +0100, Stefan Schulze Frielinghaus wrote: > Optimization s390_constant_via_vgbm_p() should only apply to constant > vectors which can be expressed by the hardware, i.e., which have a size > of at most 16-bytes, similar as it is done for s390_constant_via_vgm_p() > and s390_constant_via_vrepi_p(). > > gcc/ChangeLog: > > PR target/118362 > * config/s390/s390.cc (s390_constant_via_vgbm_p): Allow at most > 16-byte vectors. > --- > Bootstrap and regtest are still running. If both are successful, I > will push this one promptly. This was committed without a testcase, which IMHO shouldn't hurt. 2025-01-09 Jakub Jelinek <jakub@redhat.com> PR target/118362 * gcc.c-torture/compile/pr118362.c: New test. * gcc.target/s390/pr118362.c: New test.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr118362.c19
-rw-r--r--gcc/testsuite/gcc.target/s390/pr118362.c5
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr118362.c b/gcc/testsuite/gcc.c-torture/compile/pr118362.c
new file mode 100644
index 0000000..b01c46a
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr118362.c
@@ -0,0 +1,19 @@
+/* PR target/118362 */
+
+int a, b, c[18];
+
+void
+foo (void)
+{
+ for (int i = 0; i < 8; i++)
+ if (b)
+ {
+ c[i * 2 + 1] = a;
+ c[i * 2 + 2] = 200;
+ }
+ else
+ {
+ c[i * 2 + 1] = 1000000;
+ c[i * 2 + 2] = 200;
+ }
+}
diff --git a/gcc/testsuite/gcc.target/s390/pr118362.c b/gcc/testsuite/gcc.target/s390/pr118362.c
new file mode 100644
index 0000000..d2fdacb
--- /dev/null
+++ b/gcc/testsuite/gcc.target/s390/pr118362.c
@@ -0,0 +1,5 @@
+/* PR target/118362 */
+/* { dg-do compile } */
+/* { dg-options "-O2 -march=z14" } */
+
+#include "../../gcc.c-torture/compile/pr118362.c"