Adding tests to testsuite, fixed by gcc-16-6031-g8aa4ef38bd1
Bootstrapped Regtested on aarch64-none-linux-gnu,
arm-none-linux-gnueabihf, x86_64-pc-linux-gnu
-m32, -m64 and no issues.
Pushed.
Thanks,
Tamar
gcc/testsuite/ChangeLog:
PR tree-optimization/123043
* gcc.dg/vect/pr123043.c: New test.
---
diff --git a/gcc/testsuite/gcc.dg/vect/pr123043.c
b/gcc/testsuite/gcc.dg/vect/pr123043.c
new file mode 100644
index
0000000000000000000000000000000000000000..03d03368cede3152879e5623f4d783460c973e18
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr123043.c
@@ -0,0 +1,17 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-final { scan-tree-dump "loop vectorized" "vect" } } */
+/* { dg-additional-options "-O3 -mgeneral-regs-only" { target aarch64*-*-* } }
*/
+/* { dg-additional-options "-O3 -m32 -mno-sse" { target { { i?86-*-*
x86_64-*-* } && ilp32 } } } */
+/* { dg-additional-options "-w" } */
+
+char sad_memcpy_pout;
+int inflate_fast_len;
+void inflate_fast() {
+ char *out = &sad_memcpy_pout, *from;
+ do {
+ *out++ = *from++;
+ *out++ = *from++;
+ inflate_fast_len -= 3;
+ } while (inflate_fast_len > 2);
+}
--
diff --git a/gcc/testsuite/gcc.dg/vect/pr123043.c b/gcc/testsuite/gcc.dg/vect/pr123043.c
new file mode 100644
index 0000000000000000000000000000000000000000..03d03368cede3152879e5623f4d783460c973e18
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr123043.c
@@ -0,0 +1,17 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+/* { dg-final { scan-tree-dump "loop vectorized" "vect" } } */
+/* { dg-additional-options "-O3 -mgeneral-regs-only" { target aarch64*-*-* } } */
+/* { dg-additional-options "-O3 -m32 -mno-sse" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
+/* { dg-additional-options "-w" } */
+
+char sad_memcpy_pout;
+int inflate_fast_len;
+void inflate_fast() {
+ char *out = &sad_memcpy_pout, *from;
+ do {
+ *out++ = *from++;
+ *out++ = *from++;
+ inflate_fast_len -= 3;
+ } while (inflate_fast_len > 2);
+}