From c646194bd3f6f67141d605e8d2f17ae8e02b1601 Mon Sep 17 00:00:00 2001 From: Oleg Endo Date: Mon, 15 Oct 2012 22:15:18 +0000 Subject: [PATCH] re PR target/54925 (Segfault in gen_split_910) PR target/54925 * gcc.c-torture/compile/pr54925.c: New. From-SVN: r192482 --- gcc/testsuite/ChangeLog | 5 ++++ gcc/testsuite/gcc.c-torture/compile/pr54925.c | 27 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/compile/pr54925.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 31292eab9be..45d271c5617 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2012-10-15 Oleg Endo + + PR target/54925 + * gcc.c-torture/compile/pr54925.c: New. + 2012-10-15 Oleg Endo PR target/51244 diff --git a/gcc/testsuite/gcc.c-torture/compile/pr54925.c b/gcc/testsuite/gcc.c-torture/compile/pr54925.c new file mode 100644 index 00000000000..72349c9d7d7 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr54925.c @@ -0,0 +1,27 @@ +/* PR target/54925 */ +extern int bar; +extern void foo (int *); +static unsigned char * +nr_memcpy (unsigned char *, unsigned char *, unsigned short); + +void +baz (char *buf, unsigned short len) +{ + unsigned char data[10]; + if (len == 0) + return; + nr_memcpy (data, (unsigned char *) buf, len); + foo (&bar); +} + +static unsigned char * +nr_memcpy (unsigned char * to, unsigned char * from, unsigned short len) +{ + unsigned char *p = to; + while (len > 0) + { + len--; + *to++ = *from++; + } + return p; +} -- 2.30.2