aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorOleg Endo <olegendo@gcc.gnu.org>2014-12-01 23:53:12 +0000
committerOleg Endo <olegendo@gcc.gnu.org>2014-12-01 23:53:12 +0000
commit70c9ce2d464a94125411bc8ac5c99cae6fc91afc (patch)
treefa95744fff048fb427343f45bc02e0127d373e70 /gcc
parent14f2df344a8b68da0bd31e6a8201ae293b55d499 (diff)
downloadgcc-70c9ce2d464a94125411bc8ac5c99cae6fc91afc.zip
gcc-70c9ce2d464a94125411bc8ac5c99cae6fc91afc.tar.gz
gcc-70c9ce2d464a94125411bc8ac5c99cae6fc91afc.tar.bz2
re PR rtl-optimization/59278 (combine does not replace matched insn)
testsuite/ PR rtl-optimization/59278 * gcc.target/sh/pr59278.c: New. From-SVN: r218251
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.target/sh/pr59278.c19
2 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3f14726..dff9d02 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-01 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR rtl-optimization/59278
+ * gcc.target/sh/pr59278.c: New.
+
2014-12-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/60859
diff --git a/gcc/testsuite/gcc.target/sh/pr59278.c b/gcc/testsuite/gcc.target/sh/pr59278.c
new file mode 100644
index 0000000..563e5b7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/sh/pr59278.c
@@ -0,0 +1,19 @@
+/* Check that combine considers unused regs dead. */
+/* { dg-do compile } */
+/* { dg-options "-O1" } */
+/* { dg-skip-if "" { "sh*-*-*" } { "-m5*"} { "" } } */
+/* { dg-final { scan-assembler "addc" } } */
+
+struct result
+{
+ int a, b;
+};
+
+struct result
+test_00 (int a, int b, int d)
+{
+ struct result r;
+ r.a = a != b;
+ r.b = d + b + 1;
+ return r;
+}