]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Add testcase for already fixed PR [PR123753]
authorJakub Jelinek <jakub@redhat.com>
Thu, 22 Jan 2026 12:54:08 +0000 (13:54 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 22 Jan 2026 12:54:08 +0000 (13:54 +0100)
This testcase started to ICE with r16-6671, since r16-6741
it has been miscompiled and finally fixed with r16-6976.

2026-01-22  Jakub Jelinek  <jakub@redhat.com>

PR tree-optimization/123753
* gcc.c-torture/execute/pr123753.c: New test.

gcc/testsuite/gcc.c-torture/execute/pr123753.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.c-torture/execute/pr123753.c b/gcc/testsuite/gcc.c-torture/execute/pr123753.c
new file mode 100644 (file)
index 0000000..e3d403d
--- /dev/null
@@ -0,0 +1,25 @@
+/* PR tree-optimization/123753 */
+
+typedef int V __attribute__((__vector_size__ (8)));
+typedef short W __attribute__((__vector_size__ (8)));
+
+union { unsigned short u[4]; W w; } u;
+V v;
+
+V
+foo ()
+{
+  u.w--;
+  V r = v + u.u[0];
+  return r;
+}
+
+int
+main ()
+{
+  if (sizeof (int) != 4 || sizeof (short) != 2)
+    return 0;
+  V x = foo ();
+  if (x[0] != (unsigned short) -1 || x[1] != (unsigned short) -1)
+    __builtin_abort ();
+}