diff options
Diffstat (limited to 'BLAS/SRC/csrot.f')
-rw-r--r-- | BLAS/SRC/csrot.f | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/BLAS/SRC/csrot.f b/BLAS/SRC/csrot.f index 09e72b27..4178079a 100644 --- a/BLAS/SRC/csrot.f +++ b/BLAS/SRC/csrot.f @@ -63,33 +63,33 @@ * IF( N.LE.0 ) $ RETURN - IF( INCX.EQ.1 .AND. INCY.EQ.1 ) - $ GO TO 20 + IF( INCX.EQ.1 .AND. INCY.EQ.1 ) THEN * -* code for unequal increments or equal increments not equal -* to 1 +* code for both increments equal to 1 * - IX = 1 - IY = 1 - IF( INCX.LT.0 ) - $ IX = ( -N+1 )*INCX + 1 - IF( INCY.LT.0 ) - $ IY = ( -N+1 )*INCY + 1 - DO 10 I = 1, N - CTEMP = C*CX( IX ) + S*CY( IY ) - CY( IY ) = C*CY( IY ) - S*CX( IX ) - CX( IX ) = CTEMP - IX = IX + INCX - IY = IY + INCY - 10 CONTINUE - RETURN + DO I = 1, N + CTEMP = C*CX( I ) + S*CY( I ) + CY( I ) = C*CY( I ) - S*CX( I ) + CX( I ) = CTEMP + END DO + ELSE * -* code for both increments equal to 1 +* code for unequal increments or equal increments not equal +* to 1 * - 20 DO 30 I = 1, N - CTEMP = C*CX( I ) + S*CY( I ) - CY( I ) = C*CY( I ) - S*CX( I ) - CX( I ) = CTEMP - 30 CONTINUE + IX = 1 + IY = 1 + IF( INCX.LT.0 ) + $ IX = ( -N+1 )*INCX + 1 + IF( INCY.LT.0 ) + $ IY = ( -N+1 )*INCY + 1 + DO I = 1, N + CTEMP = C*CX( IX ) + S*CY( IY ) + CY( IY ) = C*CY( IY ) - S*CX( IX ) + CX( IX ) = CTEMP + IX = IX + INCX + IY = IY + INCY + END DO + END IF RETURN END |