| |
| |
| |
| |
| |
| |
| #include "f2c.h" |
| |
| int scopy_(integer *n, real *sx, integer *incx, real *sy, |
| integer *incy) |
| { |
| |
| |
| |
| integer i__1; |
| |
| |
| static integer i, m, ix, iy, mp1; |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #define SY(I) sy[(I)-1] |
| #define SX(I) sx[(I)-1] |
| |
| |
| if (*n <= 0) { |
| return 0; |
| } |
| if (*incx == 1 && *incy == 1) { |
| goto L20; |
| } |
| |
| |
| |
| |
| ix = 1; |
| iy = 1; |
| if (*incx < 0) { |
| ix = (-(*n) + 1) * *incx + 1; |
| } |
| if (*incy < 0) { |
| iy = (-(*n) + 1) * *incy + 1; |
| } |
| i__1 = *n; |
| for (i = 1; i <= *n; ++i) { |
| SY(iy) = SX(ix); |
| ix += *incx; |
| iy += *incy; |
| |
| } |
| return 0; |
| |
| |
| |
| |
| |
| |
| L20: |
| m = *n % 7; |
| if (m == 0) { |
| goto L40; |
| } |
| i__1 = m; |
| for (i = 1; i <= m; ++i) { |
| SY(i) = SX(i); |
| |
| } |
| if (*n < 7) { |
| return 0; |
| } |
| L40: |
| mp1 = m + 1; |
| i__1 = *n; |
| for (i = mp1; i <= *n; i += 7) { |
| SY(i) = SX(i); |
| SY(i + 1) = SX(i + 1); |
| SY(i + 2) = SX(i + 2); |
| SY(i + 3) = SX(i + 3); |
| SY(i + 4) = SX(i + 4); |
| SY(i + 5) = SX(i + 5); |
| SY(i + 6) = SX(i + 6); |
| |
| } |
| return 0; |
| } |
| |