summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-25 19:50:56 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-25 19:50:56 +0000
commit628ce22b27ee5839cde4a7e52f06ef7b556c6add (patch)
treec3bf33476cd79def86c5357582c9dcc5d72f16bb /gcc/testsuite
parentf9c26062b6910114b2590ca1095b74732d4de319 (diff)
downloadgcc-628ce22b27ee5839cde4a7e52f06ef7b556c6add.tar.gz
PR tree-optimization/47265
PR tree-optimization/47443 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false if name still has some uses. * gcc.c-torture/compile/pr47265.c: New test. * gcc.dg/pr47443.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169250 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr47265.c20
-rw-r--r--gcc/testsuite/gcc.dg/pr47443.c14
3 files changed, 41 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index b23f02dd465..24fbc0bba06 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2011-01-25 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/47265
+ PR tree-optimization/47443
+ * gcc.c-torture/compile/pr47265.c: New test.
+ * gcc.dg/pr47443.c: New test.
+
2011-01-25 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/47382
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr47265.c b/gcc/testsuite/gcc.c-torture/compile/pr47265.c
new file mode 100644
index 00000000000..183c3f98621
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr47265.c
@@ -0,0 +1,20 @@
+/* PR tree-optimization/47265 */
+
+struct S
+{
+ char a[3];
+ char b[3];
+};
+
+void
+bar (char *dst, const char *src, unsigned n)
+{
+ while (n--)
+ *dst++ = *src ? *src++ : ' ';
+}
+
+void
+foo (struct S *s)
+{
+ bar (s->a, s->b, 3);
+}
diff --git a/gcc/testsuite/gcc.dg/pr47443.c b/gcc/testsuite/gcc.dg/pr47443.c
new file mode 100644
index 00000000000..fa7d6b98ad3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr47443.c
@@ -0,0 +1,14 @@
+/* PR tree-optimization/47443 */
+/* { dg-do compile } */
+/* { dg-options "-O -fstack-check=generic" } */
+
+static inline bar (char *c, int i)
+{
+ return c + i > c;
+}
+
+int foo ()
+{
+ char c[100];
+ return (bar (c, 1));
+}