1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 /* { dg-options "-O2 -mlp64" { target ia64-*-hpux* } } */
4 
copy_loop_ldouble(void * xdest,const void * xsrc,long roff,long soff,long len,long shift)5 void copy_loop_ldouble (void *xdest,
6                         const void *xsrc,
7                         long roff,
8                         long soff,
9                         long len,
10                         long shift)
11 { __float128 *dest = xdest;
12   const long double *src;
13   long i;
14   roff /= sizeof (__float128);
15   soff /= sizeof (__float128);
16   src = xsrc;
17   src += shift * soff;
18   for (i = 0; i < len - shift; ++i) {
19         *dest = *src;
20         dest += roff;
21         src += soff;
22   }
23 }
24