Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / gcc.target / i386 / pr20204.c
blob7f24abc552935492da5c4d1e7f4afd0bf2f1e11f
1 /* { dg-do run { target i?86-*-* x86_64-*-* } } */
2 /* { dg-options "-O2" } */
4 void *x (void *pdst, const void *psrc, unsigned int pn)
6 register void *return_dst = pdst;
7 register unsigned char *dst = pdst;
8 register unsigned const char *src = psrc;
9 register int n __asm__ ("ebx") = pn;
11 if (src < dst && dst < src + n)
13 src += n;
14 dst += n;
15 while (n--)
16 *--dst = *--src;
17 return return_dst;
20 while (n >= 16) n--;
22 return return_dst;
24 extern void abort ();
25 extern void exit (int);
26 char xx[30] = "abc";
27 int main (void)
29 char yy[30] = "aab";
31 if (x (xx + 1, xx, 2) != xx + 1 || memcmp (xx, yy, sizeof (yy)) != 0)
32 abort ();
33 exit (0);