]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testcase: Add testcase for PR 117330 [PR117330]
authorAndrew Pinski <quic_apinski@quicinc.com>
Mon, 28 Oct 2024 20:29:58 +0000 (13:29 -0700)
committerAndrew Pinski <quic_apinski@quicinc.com>
Mon, 28 Oct 2024 20:32:05 +0000 (13:32 -0700)
This testcase was causing an ICE during vectorization
due to r15-4695-gd17e672ce82e69 but was fixed with
r15-4713-g0942bb85fc5573.

Pushed as obvious after a quick test on x86_64-linux-gnu to
make sure the testcase passes.

PR tree-optimization/117330

gcc/testsuite/ChangeLog:

* gcc.dg/torture/pr117330-1.c: New test.

Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
gcc/testsuite/gcc.dg/torture/pr117330-1.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.dg/torture/pr117330-1.c b/gcc/testsuite/gcc.dg/torture/pr117330-1.c
new file mode 100644 (file)
index 0000000..2626248
--- /dev/null
@@ -0,0 +1,22 @@
+/* { dg-do compile } */
+
+/* This used to ICE during vectorization
+   dealing with the removal of comparisons inside COND_EXPR. */
+/* PR tree-optimization/117330 */
+
+
+enum psi_states {
+  PSI_IO_NONE,
+  PSI_IO_ONE,
+  PSI_IO_TWO,
+};
+void f(unsigned *times,
+       unsigned *times1,
+       unsigned state_mask) {
+  enum psi_states s;
+  for (s = 0; s < 2; s++) {
+    if (state_mask & (1 << s))
+      times[s] += 1;
+    times[s] = times[s] - times1[s];
+  }
+}