x86: Add a testcase for PR target/31799
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 17 Nov 2020 14:01:41 +0000 (06:01 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 17 Nov 2020 14:01:41 +0000 (06:01 -0800)
Add a testcase for PR target/31799 which was fixed by

commit 4f0473fe89e68bf7c09542ee5c3684da25a5b435
Author: Uros Bizjak <ubizjak@gmail.com>
Date:   Fri May 12 21:04:05 2017 +0200

    compare-elim.c (try_eliminate_compare): Canonicalize operation with embedded compare to [(set (reg:CCM) (compare:CCM...

            * compare-elim.c (try_eliminate_compare): Canonicalize
            operation with embedded compare to
            [(set (reg:CCM) (compare:CCM (operation) (immediate)))
             (set (reg) (operation)].

            * config/i386/i386.c (TARGET_FLAGS_REGNUM): New define.

in GCC 8.

PR target/31799
* gcc.target/i386/pr31799.c: New test.

gcc/testsuite/gcc.target/i386/pr31799.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.target/i386/pr31799.c b/gcc/testsuite/gcc.target/i386/pr31799.c
new file mode 100644 (file)
index 0000000..c72c4ea
--- /dev/null
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+void
+foo (int x, int *y, int *z)
+{
+  *z = ++x;
+  if (x != 0)
+  *y = 1;
+}
+
+/* { dg-final { scan-assembler-not "test" } } */