diff mbox

[SH] PR 54925 - Add test case

Message ID 20121015.203740.249770528.kkojima@rr.iij4u.or.jp
State New
Headers show

Commit Message

Kaz Kojima Oct. 15, 2012, 11:37 a.m. UTC
Oleg Endo <oleg.endo@t-online.de> wrote:
> This adds the test case from the PR.
> Tested together with the patch posted here
> http://gcc.gnu.org/ml/gcc-patches/2012-10/msg01380.html
> 
> OK?

It would be better to make it a valid C program.  I've checked
that the test case with the change below also ICEs on revision
192446 for sh-linux and your another patch fixes it.  OK with
that change.

Regards,
	kaz
--

Comments

Oleg Endo Oct. 15, 2012, 10:26 p.m. UTC | #1
On Mon, 2012-10-15 at 20:37 +0900, Kaz Kojima wrote:
> Oleg Endo <oleg.endo@t-online.de> wrote:
> > This adds the test case from the PR.
> > Tested together with the patch posted here
> > http://gcc.gnu.org/ml/gcc-patches/2012-10/msg01380.html
> > 
> > OK?
> 
> It would be better to make it a valid C program.  I've checked
> that the test case with the change below also ICEs on revision
> 192446 for sh-linux and your another patch fixes it.  OK with
> that change.
> 
> Regards,
> 	kaz
> --
> --- gcc.c-torture/compile/pr54925.c~	2012-10-15 20:00:50.000000000 +0900
> +++ gcc.c-torture/compile/pr54925.c	2012-10-15 20:01:03.000000000 +0900
> @@ -1,5 +1,6 @@
>  /* PR target/54925  */
>  extern int bar;
> +extern void foo (int *);
>  static unsigned char *
>  nr_memcpy (unsigned char *, unsigned char *, unsigned short);
>  
> @@ -16,9 +17,11 @@ baz (char *buf, unsigned short len)
>  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;
>  }

Thanks for checking it!  Committed with the change as rev 192482.

Cheers,
Oleg
diff mbox

Patch

--- gcc.c-torture/compile/pr54925.c~	2012-10-15 20:00:50.000000000 +0900
+++ gcc.c-torture/compile/pr54925.c	2012-10-15 20:01:03.000000000 +0900
@@ -1,5 +1,6 @@ 
 /* PR target/54925  */
 extern int bar;
+extern void foo (int *);
 static unsigned char *
 nr_memcpy (unsigned char *, unsigned char *, unsigned short);
 
@@ -16,9 +17,11 @@  baz (char *buf, unsigned short len)
 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;
 }