Fix bug0023: SROTMG and DROTMG uses deprecated Fortran ASSIGN statement and assigned...
authorjulie <julielangou@users.noreply.github.com>
Thu, 10 Sep 2009 22:59:31 +0000 (22:59 +0000)
committerjulie <julielangou@users.noreply.github.com>
Thu, 10 Sep 2009 22:59:31 +0000 (22:59 +0000)
BLAS/SRC/drotm.f
BLAS/SRC/drotmg.f
BLAS/SRC/srotm.f
BLAS/SRC/srotmg.f

index 63a3b11..25fea5a 100644 (file)
       IF (.NOT. (INCX.EQ.INCY.AND.INCX.GT.0)) GO TO 70
 *
       NSTEPS = N*INCX
-      IF (DFLAG) 50,10,30
+      IF (DFLAG.LT.ZERO) THEN
+         GO TO 50
+      ELSE IF (DFLAG.EQ.ZERO) THEN
+         GO TO 10 
+      ELSE
+         GO TO 30
+      END IF
    10 CONTINUE
       DH12 = DPARAM(4)
       DH21 = DPARAM(3)
       IF (INCX.LT.0) KX = 1 + (1-N)*INCX
       IF (INCY.LT.0) KY = 1 + (1-N)*INCY
 *
-      IF (DFLAG) 120,80,100
+      IF (DFLAG.LT.ZERO) THEN
+         GO TO 120
+      ELSE IF (DFLAG.EQ.ZERO) THEN
+         GO TO 80 
+      ELSE
+         GO TO 100
+      END IF
    80 CONTINUE
       DH12 = DPARAM(4)
       DH21 = DPARAM(3)
index 3ae647b..f257843 100644 (file)
@@ -33,9 +33,9 @@
 *
 *  DD1    (input/output) DOUBLE PRECISION
 *
-*  DD2    (input/output) DOUBLE PRECISION 
+*  DD2    (input/output) DOUBLE PRECISION
 *
-*  DX1    (input/output) DOUBLE PRECISION 
+*  DX1    (input/output) DOUBLE PRECISION
 *
 *  DY1    (input) DOUBLE PRECISION
 *
@@ -71,8 +71,8 @@
       IF (.NOT.DP2.EQ.ZERO) GO TO 20
       DFLAG = -TWO
       GO TO 260
-*     REGULAR-CASE..
    20 CONTINUE
+*     REGULAR-CASE..
       DP1 = DD1*DX1
       DQ2 = DP2*DY1
       DQ1 = DP1*DX1
       DX1 = DY1*DU
 *         GO SCALE-CHECK
       GO TO 100
-*     PROCEDURE..ZERO-H-D-AND-DX1..
    60 CONTINUE
+*     PROCEDURE..ZERO-H-D-AND-DX1..
       DFLAG = -ONE
       DH11 = ZERO
       DH12 = ZERO
       DX1 = ZERO
 *         RETURN..
       GO TO 220
-*     PROCEDURE..FIX-H..
    70 CONTINUE
+*     PROCEDURE..FIX-H..
       IF (.NOT.DFLAG.GE.ZERO) GO TO 90
 *
       IF (.NOT.DFLAG.EQ.ZERO) GO TO 80
       DH12 = ONE
       DFLAG = -ONE
    90 CONTINUE
-      GO TO IGO(120,150,180,210)
-*     PROCEDURE..SCALE-CHECK
+      GO TO (150,180,210) IGO
+      GO TO 120
   100 CONTINUE
+*     PROCEDURE..SCALE-CHECK
   110 CONTINUE
       IF (.NOT.DD1.LE.RGAMSQ) GO TO 130
       IF (DD1.EQ.ZERO) GO TO 160
-      ASSIGN 120 TO IGO
+      IGO = 0
 *              FIX-H..
       GO TO 70
   120 CONTINUE
   130 CONTINUE
   140 CONTINUE
       IF (.NOT.DD1.GE.GAMSQ) GO TO 160
-      ASSIGN 150 TO IGO
+      IGO = 1
 *              FIX-H..
       GO TO 70
   150 CONTINUE
   170 CONTINUE
       IF (.NOT.DABS(DD2).LE.RGAMSQ) GO TO 190
       IF (DD2.EQ.ZERO) GO TO 220
-      ASSIGN 180 TO IGO
+      IGO = 2
 *              FIX-H..
       GO TO 70
   180 CONTINUE
   190 CONTINUE
   200 CONTINUE
       IF (.NOT.DABS(DD2).GE.GAMSQ) GO TO 220
-      ASSIGN 210 TO IGO
+      IGO = 3
 *              FIX-H..
       GO TO 70
   210 CONTINUE
       DH22 = DH22*GAM
       GO TO 200
   220 CONTINUE
-      IF (DFLAG) 250,230,240
+      IF (DFLAG.LT.ZERO) THEN
+         GO TO 250
+      ELSE IF (DFLAG.EQ.ZERO) THEN
+         GO TO 230 
+      ELSE
+         GO TO 240
+      END IF
   230 CONTINUE
       DPARAM(3) = DH21
       DPARAM(4) = DH12
index fc5a593..dd378fc 100644 (file)
       IF (.NOT. (INCX.EQ.INCY.AND.INCX.GT.0)) GO TO 70
 *
       NSTEPS = N*INCX
-      IF (SFLAG) 50,10,30
+      IF (SFLAG.LT.ZERO) THEN
+         GO TO 50
+      ELSE IF (SFLAG.EQ.ZERO) THEN
+         GO TO 10
+      ELSE
+         GO TO 30
+      END IF
    10 CONTINUE
       SH12 = SPARAM(4)
       SH21 = SPARAM(3)
       IF (INCX.LT.0) KX = 1 + (1-N)*INCX
       IF (INCY.LT.0) KY = 1 + (1-N)*INCY
 *
-      IF (SFLAG) 120,80,100
+      IF (SFLAG.LT.ZERO) THEN
+         GO TO 120
+      ELSE IF (SFLAG.EQ.ZERO) THEN
+         GO TO 80
+      ELSE
+         GO TO 100
+      END IF
    80 CONTINUE
       SH12 = SPARAM(4)
       SH21 = SPARAM(3)
index 7b3bd42..423160a 100644 (file)
@@ -73,8 +73,8 @@
       IF (.NOT.SP2.EQ.ZERO) GO TO 20
       SFLAG = -TWO
       GO TO 260
-*     REGULAR-CASE..
    20 CONTINUE
+*     REGULAR-CASE..
       SP1 = SD1*SX1
       SQ2 = SP2*SY1
       SQ1 = SP1*SX1
       SX1 = SY1*SU
 *         GO SCALE-CHECK
       GO TO 100
-*     PROCEDURE..ZERO-H-D-AND-SX1..
    60 CONTINUE
+*     PROCEDURE..ZERO-H-D-AND-SX1..
       SFLAG = -ONE
       SH11 = ZERO
       SH12 = ZERO
       SX1 = ZERO
 *         RETURN..
       GO TO 220
-*     PROCEDURE..FIX-H..
    70 CONTINUE
+*     PROCEDURE..FIX-H..
       IF (.NOT.SFLAG.GE.ZERO) GO TO 90
 *
       IF (.NOT.SFLAG.EQ.ZERO) GO TO 80
       SH12 = ONE
       SFLAG = -ONE
    90 CONTINUE
-      GO TO IGO(120,150,180,210)
-*     PROCEDURE..SCALE-CHECK
+      GO TO (150,180,210) IGO
+      GO TO 120
   100 CONTINUE
+*     PROCEDURE..SCALE-CHECK
   110 CONTINUE
       IF (.NOT.SD1.LE.RGAMSQ) GO TO 130
       IF (SD1.EQ.ZERO) GO TO 160
-      ASSIGN 120 TO IGO
+      IGO = 0
 *              FIX-H..
       GO TO 70
   120 CONTINUE
   130 CONTINUE
   140 CONTINUE
       IF (.NOT.SD1.GE.GAMSQ) GO TO 160
-      ASSIGN 150 TO IGO
+      IGO = 1
 *              FIX-H..
       GO TO 70
   150 CONTINUE
   170 CONTINUE
       IF (.NOT.ABS(SD2).LE.RGAMSQ) GO TO 190
       IF (SD2.EQ.ZERO) GO TO 220
-      ASSIGN 180 TO IGO
+      IGO = 2
 *              FIX-H..
       GO TO 70
   180 CONTINUE
   190 CONTINUE
   200 CONTINUE
       IF (.NOT.ABS(SD2).GE.GAMSQ) GO TO 220
-      ASSIGN 210 TO IGO
+      IGO = 3
 *              FIX-H..
       GO TO 70
   210 CONTINUE
       SH22 = SH22*GAM
       GO TO 200
   220 CONTINUE
-      IF (SFLAG) 250,230,240
+      IF (SFLAG.LT.ZERO) THEN
+         GO TO 250
+      ELSE IF (SFLAG.EQ.ZERO) THEN
+         GO TO 230
+      ELSE 
+         GO TO 240
+      END IF
   230 CONTINUE
       SPARAM(3) = SH21
       SPARAM(4) = SH12