Complex */
| 281 | } /* cdotc_ */ |
| 282 | |
| 283 | /* Complex */ VOID cdotu_(complex * ret_val, integer *n, complex *cx, integer |
| 284 | *incx, complex *cy, integer *incy) |
| 285 | { |
| 286 | /* System generated locals */ |
| 287 | integer i__1, i__2, i__3; |
| 288 | complex q__1, q__2; |
| 289 | |
| 290 | /* Local variables */ |
| 291 | static integer i__, ix, iy; |
| 292 | static complex ctemp; |
| 293 | |
| 294 | |
| 295 | /* |
| 296 | Purpose |
| 297 | ======= |
| 298 | |
| 299 | CDOTU forms the dot product of two vectors. |
| 300 | |
| 301 | Further Details |
| 302 | =============== |
| 303 | |
| 304 | jack dongarra, linpack, 3/11/78. |
| 305 | modified 12/3/93, array(1) declarations changed to array(*) |
| 306 | |
| 307 | ===================================================================== |
| 308 | */ |
| 309 | |
| 310 | /* Parameter adjustments */ |
| 311 | --cy; |
| 312 | --cx; |
| 313 | |
| 314 | /* Function Body */ |
| 315 | ctemp.r = 0.f, ctemp.i = 0.f; |
| 316 | ret_val->r = 0.f, ret_val->i = 0.f; |
| 317 | if (*n <= 0) { |
| 318 | return ; |
| 319 | } |
| 320 | if (*incx == 1 && *incy == 1) { |
| 321 | goto L20; |
| 322 | } |
| 323 | |
| 324 | /* |
| 325 | code for unequal increments or equal increments |
| 326 | not equal to 1 |
| 327 | */ |
| 328 | |
| 329 | ix = 1; |
| 330 | iy = 1; |
| 331 | if (*incx < 0) { |
| 332 | ix = (-(*n) + 1) * *incx + 1; |
| 333 | } |
| 334 | if (*incy < 0) { |
| 335 | iy = (-(*n) + 1) * *incy + 1; |
| 336 | } |
| 337 | i__1 = *n; |
| 338 | for (i__ = 1; i__ <= i__1; ++i__) { |
| 339 | i__2 = ix; |
| 340 | i__3 = iy; |