diff --git a/lapack-netlib/SRC/chbgvx.f b/lapack-netlib/SRC/chbgvx.f index 57cf51a55..6b37a4127 100644 --- a/lapack-netlib/SRC/chbgvx.f +++ b/lapack-netlib/SRC/chbgvx.f @@ -327,7 +327,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, UPPER, VALEIG, WANTZ CHARACTER ORDER, VECT - INTEGER I, IINFO, INDD, INDE, INDEE, INDIBL, INDISP, + INTEGER I, IINFO, INDD, INDE, INDEE, INDISP, $ INDIWK, INDRWK, INDWRK, ITMP1, J, JJ, NSPLIT REAL TMP1 * .. @@ -470,17 +470,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWK = INDISP + N CALL SSTEBZ( RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL, $ RWORK( INDD ), RWORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), RWORK( INDRWK ), + $ IWORK( 1 ), IWORK( INDISP ), RWORK( INDRWK ), $ IWORK( INDIWK ), INFO ) * IF( WANTZ ) THEN CALL CSTEIN( N, RWORK( INDD ), RWORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ RWORK( INDRWK ), IWORK( INDIWK ), IFAIL, INFO ) * * Apply unitary matrix used in reduction to tridiagonal @@ -510,11 +509,11 @@ 40 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL CSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/chpevx.f b/lapack-netlib/SRC/chpevx.f index a5af973a7..1f602701a 100644 --- a/lapack-netlib/SRC/chpevx.f +++ b/lapack-netlib/SRC/chpevx.f @@ -264,7 +264,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, INDIBL, + INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, $ INDISP, INDIWK, INDRWK, INDTAU, INDWRK, ISCALE, $ ITMP1, J, JJ, NSPLIT REAL ABSTLL, ANRM, BIGNUM, EPS, RMAX, RMIN, SAFMIN, @@ -434,17 +434,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWK = INDISP + N CALL SSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTLL, $ RWORK( INDD ), RWORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), RWORK( INDRWK ), + $ IWORK( 1 ), IWORK( INDISP ), RWORK( INDRWK ), $ IWORK( INDIWK ), INFO ) * IF( WANTZ ) THEN CALL CSTEIN( N, RWORK( INDD ), RWORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ RWORK( INDRWK ), IWORK( INDIWK ), IFAIL, INFO ) * * Apply unitary matrix used in reduction to tridiagonal @@ -482,11 +481,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL CSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/dsbgvx.f b/lapack-netlib/SRC/dsbgvx.f index 55dbce2ee..20de17931 100644 --- a/lapack-netlib/SRC/dsbgvx.f +++ b/lapack-netlib/SRC/dsbgvx.f @@ -317,7 +317,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, UPPER, VALEIG, WANTZ CHARACTER ORDER, VECT - INTEGER I, IINFO, INDD, INDE, INDEE, INDIBL, INDISP, + INTEGER I, IINFO, INDD, INDE, INDEE, INDISP, $ INDIWO, INDWRK, ITMP1, J, JJ, NSPLIT DOUBLE PRECISION TMP1 * .. @@ -457,17 +457,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL DSTEBZ( RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL, $ WORK( INDD ), WORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), WORK( INDWRK ), + $ IWORK( 1 ), IWORK( INDISP ), WORK( INDWRK ), $ IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN CALL DSTEIN( N, WORK( INDD ), WORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ WORK( INDWRK ), IWORK( INDIWO ), IFAIL, INFO ) * * Apply transformation matrix used in reduction to tridiagonal @@ -497,11 +496,11 @@ 40 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL DSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/dspevx.f b/lapack-netlib/SRC/dspevx.f index f56ce298f..658cb1f52 100644 --- a/lapack-netlib/SRC/dspevx.f +++ b/lapack-netlib/SRC/dspevx.f @@ -255,7 +255,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, INDIBL, + INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, $ INDISP, INDIWO, INDTAU, INDWRK, ISCALE, ITMP1, $ J, JJ, NSPLIT DOUBLE PRECISION ABSTLL, ANRM, BIGNUM, EPS, RMAX, RMIN, SAFMIN, @@ -424,17 +424,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL DSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTLL, $ WORK( INDD ), WORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), WORK( INDWRK ), + $ IWORK( 1 ), IWORK( INDISP ), WORK( INDWRK ), $ IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN CALL DSTEIN( N, WORK( INDD ), WORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ WORK( INDWRK ), IWORK( INDIWO ), IFAIL, INFO ) * * Apply orthogonal matrix used in reduction to tridiagonal @@ -471,11 +470,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL DSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/dstevx.f b/lapack-netlib/SRC/dstevx.f index f93c1d3b7..e0cd07da0 100644 --- a/lapack-netlib/SRC/dstevx.f +++ b/lapack-netlib/SRC/dstevx.f @@ -248,7 +248,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IMAX, INDIBL, INDISP, INDIWO, INDWRK, + INTEGER I, IMAX, INDISP, INDIWO, INDWRK, $ ISCALE, ITMP1, J, JJ, NSPLIT DOUBLE PRECISION BIGNUM, EPS, RMAX, RMIN, SAFMIN, SIGMA, SMLNUM, $ TMP1, TNRM, VLL, VUU @@ -399,15 +399,14 @@ ORDER = 'E' END IF INDWRK = 1 - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL DSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTOL, D, E, M, - $ NSPLIT, W, IWORK( INDIBL ), IWORK( INDISP ), + $ NSPLIT, W, IWORK( 1 ), IWORK( INDISP ), $ WORK( INDWRK ), IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN - CALL DSTEIN( N, D, E, M, W, IWORK( INDIBL ), IWORK( INDISP ), + CALL DSTEIN( N, D, E, M, W, IWORK( 1 ), IWORK( INDISP ), $ Z, LDZ, WORK( INDWRK ), IWORK( INDIWO ), IFAIL, $ INFO ) END IF @@ -439,11 +438,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL DSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/ssbgvx.f b/lapack-netlib/SRC/ssbgvx.f index 64a67534e..271f35964 100644 --- a/lapack-netlib/SRC/ssbgvx.f +++ b/lapack-netlib/SRC/ssbgvx.f @@ -317,7 +317,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, UPPER, VALEIG, WANTZ CHARACTER ORDER, VECT - INTEGER I, IINFO, INDD, INDE, INDEE, INDIBL, INDISP, + INTEGER I, IINFO, INDD, INDE, INDEE, INDISP, $ INDIWO, INDWRK, ITMP1, J, JJ, NSPLIT REAL TMP1 * .. @@ -457,17 +457,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL SSTEBZ( RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL, $ WORK( INDD ), WORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), WORK( INDWRK ), + $ IWORK( 1 ), IWORK( INDISP ), WORK( INDWRK ), $ IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN CALL SSTEIN( N, WORK( INDD ), WORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ WORK( INDWRK ), IWORK( INDIWO ), IFAIL, INFO ) * * Apply transformation matrix used in reduction to tridiagonal @@ -497,11 +496,11 @@ 40 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL SSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/sspevx.f b/lapack-netlib/SRC/sspevx.f index e33712d58..6d60ed7ac 100644 --- a/lapack-netlib/SRC/sspevx.f +++ b/lapack-netlib/SRC/sspevx.f @@ -255,7 +255,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, INDIBL, + INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, $ INDISP, INDIWO, INDTAU, INDWRK, ISCALE, ITMP1, $ J, JJ, NSPLIT REAL ABSTLL, ANRM, BIGNUM, EPS, RMAX, RMIN, SAFMIN, @@ -424,17 +424,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL SSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTLL, $ WORK( INDD ), WORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), WORK( INDWRK ), + $ IWORK( 1 ), IWORK( INDISP ), WORK( INDWRK ), $ IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN CALL SSTEIN( N, WORK( INDD ), WORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ WORK( INDWRK ), IWORK( INDIWO ), IFAIL, INFO ) * * Apply orthogonal matrix used in reduction to tridiagonal @@ -471,11 +470,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL SSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/sstevx.f b/lapack-netlib/SRC/sstevx.f index 570864e6e..6d8c8e5ca 100644 --- a/lapack-netlib/SRC/sstevx.f +++ b/lapack-netlib/SRC/sstevx.f @@ -248,7 +248,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IMAX, INDIBL, INDISP, INDIWO, INDWRK, + INTEGER I, IMAX, INDISP, INDIWO, INDWRK, $ ISCALE, ITMP1, J, JJ, NSPLIT REAL BIGNUM, EPS, RMAX, RMIN, SAFMIN, SIGMA, SMLNUM, $ TMP1, TNRM, VLL, VUU @@ -399,15 +399,14 @@ ORDER = 'E' END IF INDWRK = 1 - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWO = INDISP + N CALL SSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTOL, D, E, M, - $ NSPLIT, W, IWORK( INDIBL ), IWORK( INDISP ), + $ NSPLIT, W, IWORK( 1 ), IWORK( INDISP ), $ WORK( INDWRK ), IWORK( INDIWO ), INFO ) * IF( WANTZ ) THEN - CALL SSTEIN( N, D, E, M, W, IWORK( INDIBL ), IWORK( INDISP ), + CALL SSTEIN( N, D, E, M, W, IWORK( 1 ), IWORK( INDISP ), $ Z, LDZ, WORK( INDWRK ), IWORK( INDIWO ), IFAIL, $ INFO ) END IF @@ -439,11 +438,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL SSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/zhbgvx.f b/lapack-netlib/SRC/zhbgvx.f index 79a3811b2..3832ed414 100644 --- a/lapack-netlib/SRC/zhbgvx.f +++ b/lapack-netlib/SRC/zhbgvx.f @@ -327,7 +327,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, UPPER, VALEIG, WANTZ CHARACTER ORDER, VECT - INTEGER I, IINFO, INDD, INDE, INDEE, INDIBL, INDISP, + INTEGER I, IINFO, INDD, INDE, INDEE, INDISP, $ INDIWK, INDRWK, INDWRK, ITMP1, J, JJ, NSPLIT DOUBLE PRECISION TMP1 * .. @@ -470,17 +470,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWK = INDISP + N CALL DSTEBZ( RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL, $ RWORK( INDD ), RWORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), RWORK( INDRWK ), + $ IWORK( 1 ), IWORK( INDISP ), RWORK( INDRWK ), $ IWORK( INDIWK ), INFO ) * IF( WANTZ ) THEN CALL ZSTEIN( N, RWORK( INDD ), RWORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ RWORK( INDRWK ), IWORK( INDIWK ), IFAIL, INFO ) * * Apply unitary matrix used in reduction to tridiagonal @@ -510,11 +509,11 @@ 40 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL ZSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I ) diff --git a/lapack-netlib/SRC/zhpevx.f b/lapack-netlib/SRC/zhpevx.f index f22e84bd7..0fc80c51a 100644 --- a/lapack-netlib/SRC/zhpevx.f +++ b/lapack-netlib/SRC/zhpevx.f @@ -264,7 +264,7 @@ * .. Local Scalars .. LOGICAL ALLEIG, INDEIG, TEST, VALEIG, WANTZ CHARACTER ORDER - INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, INDIBL, + INTEGER I, IINFO, IMAX, INDD, INDE, INDEE, $ INDISP, INDIWK, INDRWK, INDTAU, INDWRK, ISCALE, $ ITMP1, J, JJ, NSPLIT DOUBLE PRECISION ABSTLL, ANRM, BIGNUM, EPS, RMAX, RMIN, SAFMIN, @@ -434,17 +434,16 @@ ELSE ORDER = 'E' END IF - INDIBL = 1 - INDISP = INDIBL + N + INDISP = 1 + N INDIWK = INDISP + N CALL DSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTLL, $ RWORK( INDD ), RWORK( INDE ), M, NSPLIT, W, - $ IWORK( INDIBL ), IWORK( INDISP ), RWORK( INDRWK ), + $ IWORK( 1 ), IWORK( INDISP ), RWORK( INDRWK ), $ IWORK( INDIWK ), INFO ) * IF( WANTZ ) THEN CALL ZSTEIN( N, RWORK( INDD ), RWORK( INDE ), M, W, - $ IWORK( INDIBL ), IWORK( INDISP ), Z, LDZ, + $ IWORK( 1 ), IWORK( INDISP ), Z, LDZ, $ RWORK( INDRWK ), IWORK( INDIWK ), IFAIL, INFO ) * * Apply unitary matrix used in reduction to tridiagonal @@ -482,11 +481,11 @@ 30 CONTINUE * IF( I.NE.0 ) THEN - ITMP1 = IWORK( INDIBL+I-1 ) + ITMP1 = IWORK( 1 + I-1 ) W( I ) = W( J ) - IWORK( INDIBL+I-1 ) = IWORK( INDIBL+J-1 ) + IWORK( 1 + I-1 ) = IWORK( 1 + J-1 ) W( J ) = TMP1 - IWORK( INDIBL+J-1 ) = ITMP1 + IWORK( 1 + J-1 ) = ITMP1 CALL ZSWAP( N, Z( 1, I ), 1, Z( 1, J ), 1 ) IF( INFO.NE.0 ) THEN ITMP1 = IFAIL( I )