summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--math/lapack/Makefile6
-rw-r--r--math/lapack/distinfo8
-rw-r--r--math/lapack/files/patch-r109139
-rw-r--r--math/lapack/files/patch-r109752
-rw-r--r--math/lapack/files/patch-r109976
-rw-r--r--math/lapack/files/patch-r1128252
-rw-r--r--math/lapack/files/patch-r1136239
-rw-r--r--math/lapack/files/patch-r113881
-rw-r--r--math/lapack/files/patch-r1139394
-rw-r--r--math/lapack/files/patch-r120711
10 files changed, 6 insertions, 1152 deletions
diff --git a/math/lapack/Makefile b/math/lapack/Makefile
index c3b9bcb190e9..4317ec27881c 100644
--- a/math/lapack/Makefile
+++ b/math/lapack/Makefile
@@ -6,11 +6,9 @@
#
PORTNAME?= lapack
-PORTVERSION= 3.4.0
-PORTREVISION?= 2
+PORTVERSION= 3.4.1
CATEGORIES= math
-MASTER_SITES= NL/lapack/ \
- http://service-spi.web.cern.ch/service-spi/external/tarFiles/
+MASTER_SITES= NL/lapack/
DISTFILES= lapack-${PORTVERSION}.tgz
.if make(makesum) || !(defined(BLAS_SLAVEPORT) || defined(XLAPACK_SLAVEPORT))
DISTFILES+= manpages-${PORTVERSION}.tgz
diff --git a/math/lapack/distinfo b/math/lapack/distinfo
index 99eafe246fe9..f9b9b45d6591 100644
--- a/math/lapack/distinfo
+++ b/math/lapack/distinfo
@@ -1,4 +1,4 @@
-SHA256 (lapack/lapack-3.4.0.tgz) = a7139ef97004d0e3c4c30f1c52d508fd7ae84b5fbaf0dd8e792c167dc306c3e9
-SIZE (lapack/lapack-3.4.0.tgz) = 6127787
-SHA256 (lapack/manpages-3.4.0.tgz) = 92fc029d5a43c5120cb122bef2a1209eddce20c6e20c9d71f056a40a5ef94c2c
-SIZE (lapack/manpages-3.4.0.tgz) = 1349045
+SHA256 (lapack/lapack-3.4.1.tgz) = 93b910f94f6091a2e71b59809c4db4a14655db527cfc5821ade2e8c8ab75380f
+SIZE (lapack/lapack-3.4.1.tgz) = 6147915
+SHA256 (lapack/manpages-3.4.1.tgz) = 95c82f2d551238af53656522938d6ed4abfd1b7681d177037875f9f60e7c0e93
+SIZE (lapack/manpages-3.4.1.tgz) = 1349866
diff --git a/math/lapack/files/patch-r1091 b/math/lapack/files/patch-r1091
deleted file mode 100644
index ef33f51c0301..000000000000
--- a/math/lapack/files/patch-r1091
+++ /dev/null
@@ -1,39 +0,0 @@
-Index: SRC/ctprfb.f
-===================================================================
---- SRC/ctprfb.f (revision 1090)
-+++ SRC/ctprfb.f (revision 1091)
-@@ -280,7 +280,7 @@
- EXTERNAL LSAME
- * ..
- * .. External Subroutines ..
-- EXTERNAL CCOPY, CGEMM, CLACGV, CTRMM
-+ EXTERNAL CGEMM, CTRMM
- * ..
- * .. Intrinsic Functions ..
- INTRINSIC CONJG
-Index: SRC/ztprfb.f
-===================================================================
---- SRC/ztprfb.f (revision 1090)
-+++ SRC/ztprfb.f (revision 1091)
-@@ -280,7 +280,7 @@
- EXTERNAL LSAME
- * ..
- * .. External Subroutines ..
-- EXTERNAL ZCOPY, ZGEMM, ZLACGV, ZTRMM
-+ EXTERNAL ZGEMM, ZTRMM
- * ..
- * .. Intrinsic Functions ..
- INTRINSIC CONJG
-Index: SRC/stprfb.f
-===================================================================
---- SRC/stprfb.f (revision 1090)
-+++ SRC/stprfb.f (revision 1091)
-@@ -280,7 +280,7 @@
- EXTERNAL LSAME
- * ..
- * .. External Subroutines ..
-- EXTERNAL SCOPY, SGEMM, SLACGV, STRMM
-+ EXTERNAL SGEMM, STRMM
- * ..
- * .. Executable Statements ..
- *
diff --git a/math/lapack/files/patch-r1097 b/math/lapack/files/patch-r1097
deleted file mode 100644
index 2e51690163c2..000000000000
--- a/math/lapack/files/patch-r1097
+++ /dev/null
@@ -1,52 +0,0 @@
-Index: TESTING/LIN/cdrvsyx.f
-===================================================================
---- TESTING/LIN/cdrvsyx.f (revision 1096)
-+++ TESTING/LIN/cdrvsyx.f (revision 1097)
-@@ -620,7 +620,7 @@
- $ LDA, IWORK, EQUED, WORK( N+1 ), B, LDA, X,
- $ LDA, RCOND, RPVGRW_SVXX, BERR, N_ERR_BNDS,
- $ ERRBNDS_N, ERRBNDS_C, 0, ZERO, WORK,
-- $ IWORK( N+1 ), INFO )
-+ $ RWORK, INFO )
- *
- * Adjust the expected value of INFO to account for
- * pivoting.
-Index: TESTING/LIN/zdrvhex.f
-===================================================================
---- TESTING/LIN/zdrvhex.f (revision 1096)
-+++ TESTING/LIN/zdrvhex.f (revision 1097)
-@@ -614,7 +614,7 @@
- $ LDA, IWORK, EQUED, WORK( N+1 ), B, LDA, X,
- $ LDA, RCOND, RPVGRW_SVXX, BERR, N_ERR_BNDS,
- $ ERRBNDS_N, ERRBNDS_C, 0, ZERO, WORK,
-- $ IWORK( N+1 ), INFO )
-+ $ RWORK, INFO )
- *
- * Adjust the expected value of INFO to account for
- * pivoting.
-Index: TESTING/LIN/cdrvhex.f
-===================================================================
---- TESTING/LIN/cdrvhex.f (revision 1096)
-+++ TESTING/LIN/cdrvhex.f (revision 1097)
-@@ -614,7 +614,7 @@
- $ LDA, IWORK, EQUED, WORK( N+1 ), B, LDA, X,
- $ LDA, RCOND, RPVGRW_SVXX, BERR, N_ERR_BNDS,
- $ ERRBNDS_N, ERRBNDS_C, 0, ZERO, WORK,
-- $ IWORK( N+1 ), INFO )
-+ $ RWORK, INFO )
- *
- * Adjust the expected value of INFO to account for
- * pivoting.
-Index: TESTING/LIN/zdrvsyx.f
-===================================================================
---- TESTING/LIN/zdrvsyx.f (revision 1096)
-+++ TESTING/LIN/zdrvsyx.f (revision 1097)
-@@ -620,7 +620,7 @@
- $ LDA, IWORK, EQUED, WORK( N+1 ), B, LDA, X,
- $ LDA, RCOND, RPVGRW_SVXX, BERR, N_ERR_BNDS,
- $ ERRBNDS_N, ERRBNDS_C, 0, ZERO, WORK,
-- $ IWORK( N+1 ), INFO )
-+ $ RWORK, INFO )
- *
- * Adjust the expected value of INFO to account for
- * pivoting.
diff --git a/math/lapack/files/patch-r1099 b/math/lapack/files/patch-r1099
deleted file mode 100644
index 6f6a88530144..000000000000
--- a/math/lapack/files/patch-r1099
+++ /dev/null
@@ -1,76 +0,0 @@
-Index: SRC/ilazlr.f
-===================================================================
---- SRC/ilazlr.f (revision 1098)
-+++ SRC/ilazlr.f (revision 1099)
-@@ -111,12 +111,9 @@
- ILAZLR = 0
- DO J = 1, N
- I=M
-- DO WHILE ((A(I,J).NE.ZERO).AND.(I.GE.1))
-- I=I-1
-- IF (I.EQ.0) THEN
-- EXIT
-- END IF
-- ENDDO
-+ DO WHILE((A(MAX(I,1),J).EQ.ZERO).AND.(I.GE.1))
-+ I=I-1
-+ ENDDO
- ILAZLR = MAX( ILAZLR, I )
- END DO
- END IF
-Index: SRC/ilaclr.f
-===================================================================
---- SRC/ilaclr.f (revision 1098)
-+++ SRC/ilaclr.f (revision 1099)
-@@ -111,12 +111,9 @@
- ILACLR = 0
- DO J = 1, N
- I=M
-- DO WHILE ((A(I,J).NE.ZERO).AND.(I.GE.1))
-- I=I-1
-- IF (I.EQ.0) THEN
-- EXIT
-- END IF
-- ENDDO
-+ DO WHILE((A(MAX(I,1),J).EQ.ZERO).AND.(I.GE.1))
-+ I=I-1
-+ ENDDO
- ILACLR = MAX( ILACLR, I )
- END DO
- END IF
-Index: SRC/ilaslr.f
-===================================================================
---- SRC/ilaslr.f (revision 1098)
-+++ SRC/ilaslr.f (revision 1099)
-@@ -111,11 +111,8 @@
- ILASLR = 0
- DO J = 1, N
- I=M
-- DO WHILE ((A(I,J).NE.ZERO).AND.(I.GE.1))
-- I=I-1
-- IF (I.EQ.0) THEN
-- EXIT
-- END IF
-+ DO WHILE((A(MAX(I,1),J).EQ.ZERO).AND.(I.GE.1))
-+ I=I-1
- ENDDO
- ILASLR = MAX( ILASLR, I )
- END DO
-Index: SRC/iladlr.f
-===================================================================
---- SRC/iladlr.f (revision 1098)
-+++ SRC/iladlr.f (revision 1099)
-@@ -111,11 +111,8 @@
- ILADLR = 0
- DO J = 1, N
- I=M
-- DO WHILE ((A(I,J).NE.ZERO).AND.(I.GE.1))
-- I=I-1
-- IF (I.EQ.0) THEN
-- EXIT
-- END IF
-+ DO WHILE((A(MAX(I,1),J).EQ.ZERO).AND.(I.GE.1))
-+ I=I-1
- ENDDO
- ILADLR = MAX( ILADLR, I )
- END DO
diff --git a/math/lapack/files/patch-r1128 b/math/lapack/files/patch-r1128
deleted file mode 100644
index e4c63001e20b..000000000000
--- a/math/lapack/files/patch-r1128
+++ /dev/null
@@ -1,252 +0,0 @@
-Index: SRC/cgesvxx.f
-===================================================================
---- SRC/cgesvxx.f (revision 1127)
-+++ SRC/cgesvxx.f (revision 1128)
-@@ -584,9 +584,9 @@
- $ ROWCND, SMLNUM
- * ..
- * .. External Functions ..
-- EXTERNAL LSAME, SLAMCH, CLA_RPVGRW
-+ EXTERNAL LSAME, SLAMCH, CLA_GERPVGRW
- LOGICAL LSAME
-- REAL SLAMCH, CLA_RPVGRW
-+ REAL SLAMCH, CLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL CGEEQUB, CGETRF, CGETRS, CLACPY, CLAQGE,
-@@ -735,14 +735,14 @@
- * Compute the reciprocal pivot growth factor of the
- * leading rank-deficient INFO columns of A.
- *
-- RPVGRW = CLA_RPVGRW( N, INFO, A, LDA, AF, LDAF )
-+ RPVGRW = CLA_GERPVGRW( N, INFO, A, LDA, AF, LDAF )
- RETURN
- END IF
- END IF
- *
- * Compute the reciprocal pivot growth factor RPVGRW.
- *
-- RPVGRW = CLA_RPVGRW( N, N, A, LDA, AF, LDAF )
-+ RPVGRW = CLA_GERPVGRW( N, N, A, LDA, AF, LDAF )
- *
- * Compute the solution matrix X.
- *
-Index: SRC/sgesvxx.f
-===================================================================
---- SRC/sgesvxx.f (revision 1127)
-+++ SRC/sgesvxx.f (revision 1128)
-@@ -584,9 +584,9 @@
- $ SMLNUM
- * ..
- * .. External Functions ..
-- EXTERNAL LSAME, SLAMCH, SLA_RPVGRW
-+ EXTERNAL LSAME, SLAMCH, SLA_GERPVGRW
- LOGICAL LSAME
-- REAL SLAMCH, SLA_RPVGRW
-+ REAL SLAMCH, SLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL SGEEQUB, SGETRF, SGETRS, SLACPY, SLAQGE,
-@@ -735,14 +735,14 @@
- * Compute the reciprocal pivot growth factor of the
- * leading rank-deficient INFO columns of A.
- *
-- RPVGRW = SLA_RPVGRW( N, INFO, A, LDA, AF, LDAF )
-+ RPVGRW = SLA_GERPVGRW( N, INFO, A, LDA, AF, LDAF )
- RETURN
- END IF
- END IF
- *
- * Compute the reciprocal pivot growth factor RPVGRW.
- *
-- RPVGRW = SLA_RPVGRW( N, N, A, LDA, AF, LDAF )
-+ RPVGRW = SLA_GERPVGRW( N, N, A, LDA, AF, LDAF )
- *
- * Compute the solution matrix X.
- *
-Index: SRC/dgesvxx.f
-===================================================================
---- SRC/dgesvxx.f (revision 1127)
-+++ SRC/dgesvxx.f (revision 1128)
-@@ -581,9 +581,9 @@
- $ SMLNUM
- * ..
- * .. External Functions ..
-- EXTERNAL LSAME, DLAMCH, DLA_RPVGRW
-+ EXTERNAL LSAME, DLAMCH, DLA_GERPVGRW
- LOGICAL LSAME
-- DOUBLE PRECISION DLAMCH, DLA_RPVGRW
-+ DOUBLE PRECISION DLAMCH, DLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL DGEEQUB, DGETRF, DGETRS, DLACPY, DLAQGE,
-@@ -732,14 +732,14 @@
- * Compute the reciprocal pivot growth factor of the
- * leading rank-deficient INFO columns of A.
- *
-- RPVGRW = DLA_RPVGRW( N, INFO, A, LDA, AF, LDAF )
-+ RPVGRW = DLA_GERPVGRW( N, INFO, A, LDA, AF, LDAF )
- RETURN
- END IF
- END IF
- *
- * Compute the reciprocal pivot growth factor RPVGRW.
- *
-- RPVGRW = DLA_RPVGRW( N, N, A, LDA, AF, LDAF )
-+ RPVGRW = DLA_GERPVGRW( N, N, A, LDA, AF, LDAF )
- *
- * Compute the solution matrix X.
- *
-Index: SRC/zgesvxx.f
-===================================================================
---- SRC/zgesvxx.f (revision 1127)
-+++ SRC/zgesvxx.f (revision 1128)
-@@ -581,9 +581,9 @@
- $ ROWCND, SMLNUM
- * ..
- * .. External Functions ..
-- EXTERNAL LSAME, DLAMCH, ZLA_RPVGRW
-+ EXTERNAL LSAME, DLAMCH, ZLA_GERPVGRW
- LOGICAL LSAME
-- DOUBLE PRECISION DLAMCH, ZLA_RPVGRW
-+ DOUBLE PRECISION DLAMCH, ZLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL ZGEEQUB, ZGETRF, ZGETRS, ZLACPY, ZLAQGE,
-@@ -732,14 +732,14 @@
- * Compute the reciprocal pivot growth factor of the
- * leading rank-deficient INFO columns of A.
- *
-- RPVGRW = ZLA_RPVGRW( N, INFO, A, LDA, AF, LDAF )
-+ RPVGRW = ZLA_GERPVGRW( N, INFO, A, LDA, AF, LDAF )
- RETURN
- END IF
- END IF
- *
- * Compute the reciprocal pivot growth factor RPVGRW.
- *
-- RPVGRW = ZLA_RPVGRW( N, N, A, LDA, AF, LDAF )
-+ RPVGRW = ZLA_GERPVGRW( N, N, A, LDA, AF, LDAF )
- *
- * Compute the solution matrix X.
- *
-Index: TESTING/LIN/zdrvgex.f
-===================================================================
---- TESTING/LIN/zdrvgex.f (revision 1127)
-+++ TESTING/LIN/zdrvgex.f (revision 1128)
-@@ -217,9 +217,9 @@
- * ..
- * .. External Functions ..
- LOGICAL LSAME
-- DOUBLE PRECISION DGET06, DLAMCH, ZLANGE, ZLANTR, ZLA_RPVGRW
-+ DOUBLE PRECISION DGET06, DLAMCH, ZLANGE, ZLANTR, ZLA_GERPVGRW
- EXTERNAL LSAME, DGET06, DLAMCH, ZLANGE, ZLANTR,
-- $ ZLA_RPVGRW
-+ $ ZLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL ALADHD, ALAERH, ALASVM, XLAENV, ZERRVX, ZGEEQU,
-@@ -745,9 +745,11 @@
- *
-
- IF ( INFO .GT. 0 .AND. INFO .LT. N+1 ) THEN
-- RPVGRW = ZLA_RPVGRW(N, INFO, A, LDA, AFAC, LDA)
-+ RPVGRW = ZLA_GERPVGRW
-+ $ (N, INFO, A, LDA, AFAC, LDA)
- ELSE
-- RPVGRW = ZLA_RPVGRW(N, N, A, LDA, AFAC, LDA)
-+ RPVGRW = ZLA_GERPVGRW
-+ $ (N, N, A, LDA, AFAC, LDA)
- ENDIF
-
- RESULT( 7 ) = ABS( RPVGRW-rpvgrw_svxx ) /
-Index: TESTING/LIN/cdrvgex.f
-===================================================================
---- TESTING/LIN/cdrvgex.f (revision 1127)
-+++ TESTING/LIN/cdrvgex.f (revision 1128)
-@@ -217,9 +217,9 @@
- * ..
- * .. External Functions ..
- LOGICAL LSAME
-- REAL CLANGE, CLANTR, SGET06, SLAMCH, CLA_RPVGRW
-+ REAL CLANGE, CLANTR, SGET06, SLAMCH, CLA_GERPVGRW
- EXTERNAL LSAME, CLANGE, CLANTR, SGET06, SLAMCH,
-- $ CLA_RPVGRW
-+ $ CLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL ALADHD, ALAERH, ALASVM, CERRVX, CGEEQU, CGESV,
-@@ -745,9 +745,11 @@
- *
-
- IF ( INFO .GT. 0 .AND. INFO .LT. N+1 ) THEN
-- RPVGRW = CLA_RPVGRW(N, INFO, A, LDA, AFAC, LDA)
-+ RPVGRW = CLA_GERPVGRW
-+ $ (N, INFO, A, LDA, AFAC, LDA)
- ELSE
-- RPVGRW = CLA_RPVGRW(N, N, A, LDA, AFAC, LDA)
-+ RPVGRW = CLA_GERPVGRW
-+ $ (N, N, A, LDA, AFAC, LDA)
- ENDIF
-
- RESULT( 7 ) = ABS( RPVGRW-rpvgrw_svxx ) /
-Index: TESTING/LIN/sdrvgex.f
-===================================================================
---- TESTING/LIN/sdrvgex.f (revision 1127)
-+++ TESTING/LIN/sdrvgex.f (revision 1128)
-@@ -217,9 +217,9 @@
- * ..
- * .. External Functions ..
- LOGICAL LSAME
-- REAL SGET06, SLAMCH, SLANGE, SLANTR, SLA_RPVGRW
-+ REAL SGET06, SLAMCH, SLANGE, SLANTR, SLA_GERPVGRW
- EXTERNAL LSAME, SGET06, SLAMCH, SLANGE, SLANTR,
-- $ SLA_RPVGRW
-+ $ SLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL ALADHD, ALAERH, ALASVM, SERRVX, SGEEQU, SGESV,
-@@ -743,9 +743,11 @@
- *
-
- IF ( INFO .GT. 0 .AND. INFO .LT. N+1 ) THEN
-- RPVGRW = SLA_RPVGRW(N, INFO, A, LDA, AFAC, LDA)
-+ RPVGRW = SLA_GERPVGRW
-+ $ (N, INFO, A, LDA, AFAC, LDA)
- ELSE
-- RPVGRW = SLA_RPVGRW(N, N, A, LDA, AFAC, LDA)
-+ RPVGRW = SLA_GERPVGRW
-+ $ (N, N, A, LDA, AFAC, LDA)
- ENDIF
-
- RESULT( 7 ) = ABS( RPVGRW-RPVGRW_SVXX ) /
-Index: TESTING/LIN/ddrvgex.f
-===================================================================
---- TESTING/LIN/ddrvgex.f (revision 1127)
-+++ TESTING/LIN/ddrvgex.f (revision 1128)
-@@ -217,9 +217,9 @@
- * ..
- * .. External Functions ..
- LOGICAL LSAME
-- DOUBLE PRECISION DGET06, DLAMCH, DLANGE, DLANTR, DLA_RPVGRW
-+ DOUBLE PRECISION DGET06, DLAMCH, DLANGE, DLANTR, DLA_GERPVGRW
- EXTERNAL LSAME, DGET06, DLAMCH, DLANGE, DLANTR,
-- $ DLA_RPVGRW
-+ $ DLA_GERPVGRW
- * ..
- * .. External Subroutines ..
- EXTERNAL ALADHD, ALAERH, ALASVM, DERRVX, DGEEQU, DGESV,
-@@ -743,9 +743,11 @@
- *
-
- IF ( INFO .GT. 0 .AND. INFO .LT. N+1 ) THEN
-- RPVGRW = DLA_RPVGRW(N, INFO, A, LDA, AFAC, LDA)
-+ RPVGRW = DLA_GERPVGRW
-+ $ (N, INFO, A, LDA, AFAC, LDA)
- ELSE
-- RPVGRW = DLA_RPVGRW(N, N, A, LDA, AFAC, LDA)
-+ RPVGRW = DLA_GERPVGRW
-+ $ (N, N, A, LDA, AFAC, LDA)
- ENDIF
-
- RESULT( 7 ) = ABS( RPVGRW-RPVGRW_SVXX ) /
diff --git a/math/lapack/files/patch-r1136 b/math/lapack/files/patch-r1136
deleted file mode 100644
index d7cf8ba19fde..000000000000
--- a/math/lapack/files/patch-r1136
+++ /dev/null
@@ -1,239 +0,0 @@
-Index: SRC/dlasq3.f
-===================================================================
---- SRC/dlasq3.f (revision 1135)
-+++ SRC/dlasq3.f (revision 1136)
-@@ -331,15 +331,15 @@
- *
- 70 CONTINUE
- *
-- CALL DLASQ5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
-- $ DN1, DN2, IEEE )
-+ CALL DLASQ5( I0, N0, Z, PP, TAU, SIGMA, DMIN, DMIN1, DMIN2, DN,
-+ $ DN1, DN2, IEEE, EPS )
- *
- NDIV = NDIV + ( N0-I0+2 )
- ITER = ITER + 1
- *
- * Check status.
- *
-- IF( DMIN.GE.ZERO .AND. DMIN1.GT.ZERO ) THEN
-+ IF( DMIN.GE.ZERO .AND. DMIN1.GE.ZERO ) THEN
- *
- * Success.
- *
-Index: SRC/dlasq5.f
-===================================================================
---- SRC/dlasq5.f (revision 1135)
-+++ SRC/dlasq5.f (revision 1136)
-@@ -18,13 +18,13 @@
- * Definition:
- * ===========
- *
--* SUBROUTINE DLASQ5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
--* DNM1, DNM2, IEEE )
-+* SUBROUTINE DLASQ5( I0, N0, Z, PP, TAU, SIGMA, DMIN, DMIN1, DMIN2, DN,
-+* DNM1, DNM2, IEEE, EPS )
- *
- * .. Scalar Arguments ..
- * LOGICAL IEEE
- * INTEGER I0, N0, PP
--* DOUBLE PRECISION DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU
-+* DOUBLE PRECISION DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU, SIGMA, EPS
- * ..
- * .. Array Arguments ..
- * DOUBLE PRECISION Z( * )
-@@ -74,6 +74,12 @@
- *> This is the shift.
- *> \endverbatim
- *>
-+*> \param[in] SIGMA
-+*> \verbatim
-+*> SIGMA is DOUBLE PRECISION
-+*> This is the accumulated shift up to this step.
-+*> \endverbatim
-+*>
- *> \param[out] DMIN
- *> \verbatim
- *> DMIN is DOUBLE PRECISION
-@@ -116,6 +122,12 @@
- *> Flag for IEEE or non IEEE arithmetic.
- *> \endverbatim
- *
-+*> \param[in] EPS
-+*> \verbatim
-+*> EPS is DOUBLE PRECISION
-+*> This is the value of epsilon used.
-+*> \endverbatim
-+*>
- * Authors:
- * ========
- *
-@@ -129,8 +141,8 @@
- *> \ingroup auxOTHERcomputational
- *
- * =====================================================================
-- SUBROUTINE DLASQ5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
-- $ DNM1, DNM2, IEEE )
-+ SUBROUTINE DLASQ5( I0, N0, Z, PP, TAU, SIGMA, DMIN, DMIN1, DMIN2,
-+ $ DN, DNM1, DNM2, IEEE, EPS )
- *
- * -- LAPACK computational routine (version 3.4.0) --
- * -- LAPACK is a software package provided by Univ. of Tennessee, --
-@@ -140,7 +152,8 @@
- * .. Scalar Arguments ..
- LOGICAL IEEE
- INTEGER I0, N0, PP
-- DOUBLE PRECISION DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU
-+ DOUBLE PRECISION DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU,
-+ $ SIGMA, EPS
- * ..
- * .. Array Arguments ..
- DOUBLE PRECISION Z( * )
-@@ -149,12 +162,12 @@
- * =====================================================================
- *
- * .. Parameter ..
-- DOUBLE PRECISION ZERO
-- PARAMETER ( ZERO = 0.0D0 )
-+ DOUBLE PRECISION ZERO, HALF
-+ PARAMETER ( ZERO = 0.0D0, HALF = 0.5 )
- * ..
- * .. Local Scalars ..
- INTEGER J4, J4P2
-- DOUBLE PRECISION D, EMIN, TEMP
-+ DOUBLE PRECISION D, EMIN, TEMP, DTHRESH
- * ..
- * .. Intrinsic Functions ..
- INTRINSIC MIN
-@@ -164,6 +177,9 @@
- IF( ( N0-I0-1 ).LE.0 )
- $ RETURN
- *
-+ DTHRESH = EPS*(SIGMA+TAU)
-+ IF( TAU.LT.DTHRESH*HALF ) TAU = ZERO
-+ IF( TAU.NE.ZERO ) THEN
- J4 = 4*I0 + PP - 3
- EMIN = Z( J4+4 )
- D = Z( J4 ) - TAU
-@@ -271,7 +287,120 @@
- DMIN = MIN( DMIN, DN )
- *
- END IF
--*
-+ ELSE
-+* This is the version that sets d's to zero if they are small enough
-+ J4 = 4*I0 + PP - 3
-+ EMIN = Z( J4+4 )
-+ D = Z( J4 ) - TAU
-+ DMIN = D
-+ DMIN1 = -Z( J4 )
-+ IF( IEEE ) THEN
-+*
-+* Code for IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 50 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ TEMP = Z( J4+1 ) / Z( J4-2 )
-+ D = D*TEMP - TAU
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ Z( J4 ) = Z( J4-1 )*TEMP
-+ EMIN = MIN( Z( J4 ), EMIN )
-+ 50 CONTINUE
-+ ELSE
-+ DO 60 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ TEMP = Z( J4+2 ) / Z( J4-3 )
-+ D = D*TEMP - TAU
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ Z( J4-1 ) = Z( J4 )*TEMP
-+ EMIN = MIN( Z( J4-1 ), EMIN )
-+ 60 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ DMIN = MIN( DMIN, DN )
-+*
-+ ELSE
-+*
-+* Code for non IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 70 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4+1 )*( Z( J4-1 ) / Z( J4-2 ) )
-+ D = Z( J4+1 )*( D / Z( J4-2 ) ) - TAU
-+ END IF
-+ IF( D.LT.DTHRESH) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4 ) )
-+ 70 CONTINUE
-+ ELSE
-+ DO 80 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4-1 ) = Z( J4+2 )*( Z( J4 ) / Z( J4-3 ) )
-+ D = Z( J4+2 )*( D / Z( J4-3 ) ) - TAU
-+ END IF
-+ IF( D.LT.DTHRESH) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4-1 ) )
-+ 80 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
-+ IF( DNM2.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
-+ IF( DNM1.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DN )
-+*
-+ END IF
-+ END IF
-+*
- Z( J4+2 ) = DN
- Z( 4*N0-PP ) = EMIN
- RETURN
diff --git a/math/lapack/files/patch-r1138 b/math/lapack/files/patch-r1138
deleted file mode 100644
index 9d42c9b6bb7f..000000000000
--- a/math/lapack/files/patch-r1138
+++ /dev/null
@@ -1,81 +0,0 @@
-Index: INSTALL/dlamchf77.f
-===================================================================
---- INSTALL/dlamchf77.f (revision 1137)
-+++ INSTALL/dlamchf77.f (revision 1138)
-@@ -71,35 +71,6 @@
- * .. Scalar Arguments ..
- CHARACTER CMACH
- * ..
--*
--* .. Scalar Arguments ..
-- LOGICAL IEEE1, RND
-- INTEGER BETA, T
--* ..
--*
--* .. Scalar Arguments ..
-- LOGICAL RND
-- INTEGER BETA, EMAX, EMIN, T
-- DOUBLE PRECISION EPS, RMAX, RMIN
--* ..
--*
--* .. Scalar Arguments ..
-- DOUBLE PRECISION A, B
--* ..
--*
--* .. Scalar Arguments ..
-- INTEGER BASE, EMIN
-- DOUBLE PRECISION START
--* ..
--*
--* .. Scalar Arguments ..
-- LOGICAL IEEE
-- INTEGER BETA, EMAX, EMIN, P
-- DOUBLE PRECISION RMAX
--* ..
--*
--* =====================================================================
--*
- * .. Parameters ..
- DOUBLE PRECISION ONE, ZERO
- PARAMETER ( ONE = 1.0D+0, ZERO = 0.0D+0 )
-Index: INSTALL/slamchf77.f
-===================================================================
---- INSTALL/slamchf77.f (revision 1137)
-+++ INSTALL/slamchf77.f (revision 1138)
-@@ -75,36 +75,6 @@
- * .. Scalar Arguments ..
- CHARACTER CMACH
- * ..
--*
--* .. Scalar Arguments ..
-- LOGICAL IEEE1, RND
-- INTEGER BETA, T
--* ..
--*
--* .. Scalar Arguments ..
-- LOGICAL RND
-- INTEGER BETA, EMAX, EMIN, T
-- REAL EPS, RMAX, RMIN
--* ..
--*
--* .. Scalar Arguments ..
-- REAL A, B
--* ..
--*
--* .. Scalar Arguments ..
-- INTEGER BASE
-- INTEGER EMIN
-- REAL START
--* ..
--*
--* .. Scalar Arguments ..
-- LOGICAL IEEE
-- INTEGER BETA, EMAX, EMIN, P
-- REAL RMAX
--* ..
--*
--* =====================================================================
--*
- * .. Parameters ..
- REAL ONE, ZERO
- PARAMETER ( ONE = 1.0E+0, ZERO = 0.0E+0 )
diff --git a/math/lapack/files/patch-r1139 b/math/lapack/files/patch-r1139
deleted file mode 100644
index cc6ae9025fbe..000000000000
--- a/math/lapack/files/patch-r1139
+++ /dev/null
@@ -1,394 +0,0 @@
-Index: SRC/slasq5.f
-===================================================================
---- SRC/slasq5.f (revision 1138)
-+++ SRC/slasq5.f (revision 1139)
-@@ -129,8 +129,8 @@
- *> \ingroup auxOTHERcomputational
- *
- * =====================================================================
-- SUBROUTINE SLASQ5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
-- $ DNM1, DNM2, IEEE )
-+ SUBROUTINE SLASQ5( I0, N0, Z, PP, TAU, SIGMA, DMIN, DMIN1, DMIN2,
-+ $ DN, DNM1, DNM2, IEEE, EPS )
- *
- * -- LAPACK computational routine (version 3.4.0) --
- * -- LAPACK is a software package provided by Univ. of Tennessee, --
-@@ -140,7 +140,8 @@
- * .. Scalar Arguments ..
- LOGICAL IEEE
- INTEGER I0, N0, PP
-- REAL DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU
-+ REAL DMIN, DMIN1, DMIN2, DN, DNM1, DNM2, TAU,
-+ $ SIGMA, EPS
- * ..
- * .. Array Arguments ..
- REAL Z( * )
-@@ -149,12 +150,12 @@
- * =====================================================================
- *
- * .. Parameter ..
-- REAL ZERO
-- PARAMETER ( ZERO = 0.0E0 )
-+ REAL ZERO, HALF
-+ PARAMETER ( ZERO = 0.0E0, HALF = 0.5 )
- * ..
- * .. Local Scalars ..
- INTEGER J4, J4P2
-- REAL D, EMIN, TEMP
-+ REAL D, EMIN, TEMP, DTHRESH
- * ..
- * .. Intrinsic Functions ..
- INTRINSIC MIN
-@@ -164,114 +165,231 @@
- IF( ( N0-I0-1 ).LE.0 )
- $ RETURN
- *
-- J4 = 4*I0 + PP - 3
-- EMIN = Z( J4+4 )
-- D = Z( J4 ) - TAU
-- DMIN = D
-- DMIN1 = -Z( J4 )
--*
-- IF( IEEE ) THEN
--*
--* Code for IEEE arithmetic.
--*
-- IF( PP.EQ.0 ) THEN
-- DO 10 J4 = 4*I0, 4*( N0-3 ), 4
-- Z( J4-2 ) = D + Z( J4-1 )
-- TEMP = Z( J4+1 ) / Z( J4-2 )
-- D = D*TEMP - TAU
-- DMIN = MIN( DMIN, D )
-- Z( J4 ) = Z( J4-1 )*TEMP
-- EMIN = MIN( Z( J4 ), EMIN )
-- 10 CONTINUE
-+ DTHRESH = EPS*(SIGMA+TAU)
-+ IF( TAU.LT.DTHRESH*HALF ) TAU = ZERO
-+ IF( TAU.NE.ZERO ) THEN
-+ J4 = 4*I0 + PP - 3
-+ EMIN = Z( J4+4 )
-+ D = Z( J4 ) - TAU
-+ DMIN = D
-+ DMIN1 = -Z( J4 )
-+*
-+ IF( IEEE ) THEN
-+*
-+* Code for IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 10 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ TEMP = Z( J4+1 ) / Z( J4-2 )
-+ D = D*TEMP - TAU
-+ DMIN = MIN( DMIN, D )
-+ Z( J4 ) = Z( J4-1 )*TEMP
-+ EMIN = MIN( Z( J4 ), EMIN )
-+ 10 CONTINUE
-+ ELSE
-+ DO 20 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ TEMP = Z( J4+2 ) / Z( J4-3 )
-+ D = D*TEMP - TAU
-+ DMIN = MIN( DMIN, D )
-+ Z( J4-1 ) = Z( J4 )*TEMP
-+ EMIN = MIN( Z( J4-1 ), EMIN )
-+ 20 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ DMIN = MIN( DMIN, DN )
-+*
- ELSE
-- DO 20 J4 = 4*I0, 4*( N0-3 ), 4
-- Z( J4-3 ) = D + Z( J4 )
-- TEMP = Z( J4+2 ) / Z( J4-3 )
-- D = D*TEMP - TAU
-- DMIN = MIN( DMIN, D )
-- Z( J4-1 ) = Z( J4 )*TEMP
-- EMIN = MIN( Z( J4-1 ), EMIN )
-- 20 CONTINUE
-+*
-+* Code for non IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 30 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4+1 )*( Z( J4-1 ) / Z( J4-2 ) )
-+ D = Z( J4+1 )*( D / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4 ) )
-+ 30 CONTINUE
-+ ELSE
-+ DO 40 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4-1 ) = Z( J4+2 )*( Z( J4 ) / Z( J4-3 ) )
-+ D = Z( J4+2 )*( D / Z( J4-3 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4-1 ) )
-+ 40 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
-+ IF( DNM2.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
-+ IF( DNM1.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DN )
-+*
- END IF
- *
--* Unroll last two steps.
--*
-- DNM2 = D
-- DMIN2 = DMIN
-- J4 = 4*( N0-2 ) - PP
-- J4P2 = J4 + 2*PP - 1
-- Z( J4-2 ) = DNM2 + Z( J4P2 )
-- Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-- DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-- DMIN = MIN( DMIN, DNM1 )
--*
-- DMIN1 = DMIN
-- J4 = J4 + 4
-- J4P2 = J4 + 2*PP - 1
-- Z( J4-2 ) = DNM1 + Z( J4P2 )
-- Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-- DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-- DMIN = MIN( DMIN, DN )
--*
- ELSE
--*
--* Code for non IEEE arithmetic.
--*
-- IF( PP.EQ.0 ) THEN
-- DO 30 J4 = 4*I0, 4*( N0-3 ), 4
-- Z( J4-2 ) = D + Z( J4-1 )
-- IF( D.LT.ZERO ) THEN
-- RETURN
-- ELSE
-- Z( J4 ) = Z( J4+1 )*( Z( J4-1 ) / Z( J4-2 ) )
-- D = Z( J4+1 )*( D / Z( J4-2 ) ) - TAU
-- END IF
-- DMIN = MIN( DMIN, D )
-- EMIN = MIN( EMIN, Z( J4 ) )
-- 30 CONTINUE
-- ELSE
-- DO 40 J4 = 4*I0, 4*( N0-3 ), 4
-- Z( J4-3 ) = D + Z( J4 )
-- IF( D.LT.ZERO ) THEN
-- RETURN
-- ELSE
-- Z( J4-1 ) = Z( J4+2 )*( Z( J4 ) / Z( J4-3 ) )
-- D = Z( J4+2 )*( D / Z( J4-3 ) ) - TAU
-- END IF
-- DMIN = MIN( DMIN, D )
-- EMIN = MIN( EMIN, Z( J4-1 ) )
-- 40 CONTINUE
-- END IF
--*
--* Unroll last two steps.
--*
-- DNM2 = D
-- DMIN2 = DMIN
-- J4 = 4*( N0-2 ) - PP
-- J4P2 = J4 + 2*PP - 1
-- Z( J4-2 ) = DNM2 + Z( J4P2 )
-- IF( DNM2.LT.ZERO ) THEN
-- RETURN
-- ELSE
-+* This is the version that sets d's to zero if they are small enough
-+ J4 = 4*I0 + PP - 3
-+ EMIN = Z( J4+4 )
-+ D = Z( J4 ) - TAU
-+ DMIN = D
-+ DMIN1 = -Z( J4 )
-+ IF( IEEE ) THEN
-+*
-+* Code for IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 50 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ TEMP = Z( J4+1 ) / Z( J4-2 )
-+ D = D*TEMP - TAU
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ Z( J4 ) = Z( J4-1 )*TEMP
-+ EMIN = MIN( Z( J4 ), EMIN )
-+ 50 CONTINUE
-+ ELSE
-+ DO 60 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ TEMP = Z( J4+2 ) / Z( J4-3 )
-+ D = D*TEMP - TAU
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ Z( J4-1 ) = Z( J4 )*TEMP
-+ EMIN = MIN( Z( J4-1 ), EMIN )
-+ 60 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
- Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
- DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-- END IF
-- DMIN = MIN( DMIN, DNM1 )
--*
-- DMIN1 = DMIN
-- J4 = J4 + 4
-- J4P2 = J4 + 2*PP - 1
-- Z( J4-2 ) = DNM1 + Z( J4P2 )
-- IF( DNM1.LT.ZERO ) THEN
-- RETURN
-- ELSE
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
- Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
- DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ DMIN = MIN( DMIN, DN )
-+*
-+ ELSE
-+*
-+* Code for non IEEE arithmetic.
-+*
-+ IF( PP.EQ.0 ) THEN
-+ DO 70 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-2 ) = D + Z( J4-1 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4+1 )*( Z( J4-1 ) / Z( J4-2 ) )
-+ D = Z( J4+1 )*( D / Z( J4-2 ) ) - TAU
-+ END IF
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4 ) )
-+ 70 CONTINUE
-+ ELSE
-+ DO 80 J4 = 4*I0, 4*( N0-3 ), 4
-+ Z( J4-3 ) = D + Z( J4 )
-+ IF( D.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4-1 ) = Z( J4+2 )*( Z( J4 ) / Z( J4-3 ) )
-+ D = Z( J4+2 )*( D / Z( J4-3 ) ) - TAU
-+ END IF
-+ IF( D.LT.DTHRESH ) D = ZERO
-+ DMIN = MIN( DMIN, D )
-+ EMIN = MIN( EMIN, Z( J4-1 ) )
-+ 80 CONTINUE
-+ END IF
-+*
-+* Unroll last two steps.
-+*
-+ DNM2 = D
-+ DMIN2 = DMIN
-+ J4 = 4*( N0-2 ) - PP
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM2 + Z( J4P2 )
-+ IF( DNM2.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DNM1 = Z( J4P2+2 )*( DNM2 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DNM1 )
-+*
-+ DMIN1 = DMIN
-+ J4 = J4 + 4
-+ J4P2 = J4 + 2*PP - 1
-+ Z( J4-2 ) = DNM1 + Z( J4P2 )
-+ IF( DNM1.LT.ZERO ) THEN
-+ RETURN
-+ ELSE
-+ Z( J4 ) = Z( J4P2+2 )*( Z( J4P2 ) / Z( J4-2 ) )
-+ DN = Z( J4P2+2 )*( DNM1 / Z( J4-2 ) ) - TAU
-+ END IF
-+ DMIN = MIN( DMIN, DN )
-+*
- END IF
-- DMIN = MIN( DMIN, DN )
--*
-+*
- END IF
--*
- Z( J4+2 ) = DN
- Z( 4*N0-PP ) = EMIN
- RETURN
-Index: SRC/slasq3.f
-===================================================================
---- SRC/slasq3.f (revision 1138)
-+++ SRC/slasq3.f (revision 1139)
-@@ -331,15 +331,15 @@
- *
- 70 CONTINUE
- *
-- CALL SLASQ5( I0, N0, Z, PP, TAU, DMIN, DMIN1, DMIN2, DN,
-- $ DN1, DN2, IEEE )
-+ CALL SLASQ5( I0, N0, Z, PP, TAU, SIGMA, DMIN, DMIN1, DMIN2, DN,
-+ $ DN1, DN2, IEEE, EPS )
- *
- NDIV = NDIV + ( N0-I0+2 )
- ITER = ITER + 1
- *
- * Check status.
- *
-- IF( DMIN.GE.ZERO .AND. DMIN1.GT.ZERO ) THEN
-+ IF( DMIN.GE.ZERO .AND. DMIN1.GE.ZERO ) THEN
- *
- * Success.
- *
diff --git a/math/lapack/files/patch-r1207 b/math/lapack/files/patch-r1207
deleted file mode 100644
index 549b6caf9eb1..000000000000
--- a/math/lapack/files/patch-r1207
+++ /dev/null
@@ -1,11 +0,0 @@
---- SRC/dgesvd.f 2011-11-12 04:34:11.000000000 +0900
-+++ SRC/dgesvd.f 2012-03-12 16:38:41.000000000 +0900
-@@ -477,7 +477,7 @@
- CALL DGELQF( M, N, A, LDA, DUM(1), DUM(1), -1, IERR )
- LWORK_DGELQF=DUM(1)
- * Compute space needed for DORGLQ
-- CALL DORGLQ( N, N, M, VT, LDVT, DUM(1), DUM(1), -1, IERR )
-+ CALL DORGLQ( N, N, M, DUM(1), N, DUM(1), DUM(1), -1, IERR )
- LWORK_DORGLQ_N=DUM(1)
- CALL DORGLQ( M, N, M, A, LDA, DUM(1), DUM(1), -1, IERR )
- LWORK_DORGLQ_M=DUM(1)