Diff for /rpl/lapack/blas/dsdot.f between versions 1.4 and 1.5

version 1.4, 2010/12/21 13:51:25 version 1.5, 2011/07/22 07:38:01
Line 72 Line 72
 *     ..  *     ..
       DSDOT = 0.0D0        DSDOT = 0.0D0
       IF (N.LE.0) RETURN        IF (N.LE.0) RETURN
       IF (INCX.EQ.INCY .AND. INCX.GT.0) GO TO 20        IF (INCX.EQ.INCY .AND. INCX.GT.0) THEN
 *  *
 *     Code for unequal or nonpositive increments.  *     Code for equal, positive, non-unit increments.
 *  *
       KX = 1           NS = N*INCX
       KY = 1           DO I = 1,NS,INCX
       IF (INCX.LT.0) KX = 1 + (1-N)*INCX              DSDOT = DSDOT + DBLE(SX(I))*DBLE(SY(I))
       IF (INCY.LT.0) KY = 1 + (1-N)*INCY           END DO
       DO 10 I = 1,N        ELSE
           DSDOT = DSDOT + DBLE(SX(KX))*DBLE(SY(KY))  
           KX = KX + INCX  
           KY = KY + INCY  
    10 CONTINUE  
       RETURN  
 *  *
 *     Code for equal, positive, non-unit increments.  *     Code for unequal or nonpositive increments.
 *  *
    20 NS = N*INCX           KX = 1
       DO 30 I = 1,NS,INCX           KY = 1
           DSDOT = DSDOT + DBLE(SX(I))*DBLE(SY(I))           IF (INCX.LT.0) KX = 1 + (1-N)*INCX
    30 CONTINUE           IF (INCY.LT.0) KY = 1 + (1-N)*INCY
            DO I = 1,N
               DSDOT = DSDOT + DBLE(SX(KX))*DBLE(SY(KY))
               KX = KX + INCX
               KY = KY + INCY
            END DO
         END IF
       RETURN        RETURN
       END        END

Removed from v.1.4  
changed lines
  Added in v.1.5


CVSweb interface <joel.bertrand@systella.fr>