[gcc r14-6110] RISC-V: Add test case for bug PR112813

Pan Li panli@gcc.gnu.org
Mon Dec 4 08:11:27 GMT 2023


https://gcc.gnu.org/g:462ccc3b9d5625cdc6104322a417bcd1ff1a8ff4

commit r14-6110-g462ccc3b9d5625cdc6104322a417bcd1ff1a8ff4
Author: Pan Li <pan2.li@intel.com>
Date:   Mon Dec 4 16:06:14 2023 +0800

    RISC-V: Add test case for bug PR112813
    
    The bugzilla 112813 has been fixed recently, add below test
    case for the bug.
    
            PR target/112813
    
    gcc/testsuite/ChangeLog:
    
            * gcc.target/riscv/rvv/vsetvl/pr112813-1.c: New test.
    
    Signed-off-by: Pan Li <pan2.li@intel.com>

Diff:
---
 .../gcc.target/riscv/rvv/vsetvl/pr112813-1.c       | 32 ++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gcc/testsuite/gcc.target/riscv/rvv/vsetvl/pr112813-1.c b/gcc/testsuite/gcc.target/riscv/rvv/vsetvl/pr112813-1.c
new file mode 100644
index 00000000000..5aab9c2bf09
--- /dev/null
+++ b/gcc/testsuite/gcc.target/riscv/rvv/vsetvl/pr112813-1.c
@@ -0,0 +1,32 @@
+/* Test that we do not have ice when compile */
+/* { dg-do compile } */
+/* { dg-options "-march=rv32gcv_zvl256b -mabi=ilp32d -O3" } */
+
+int a, c, d, f, j;
+int b[7];
+long e;
+char *g;
+int *h;
+long long *i;
+
+void k() {
+  int l[][1] = {{}, {1}, {1}};
+  int *m = &d, *n = &l[0][0];
+
+  for (; e;)
+    {
+      f = 3;
+
+      for (; f >= 0; f--)
+	{
+	  *m &= b[f] >= 0;
+	  j = a >= 2 ? 0 : 1 >> a;
+	  *i |= j;
+        }
+
+	for (; c;)
+	  *g = 0;
+     }
+
+  h = n;
+}


More information about the Gcc-cvs mailing list