diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/sh/pr59278.c | 19 |
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; +} |