Merge pull request #4046 from martin-frbg/lapack795

Extend LAPACK tests for error exit sysv/sytd2/gehd2 (Reference-LAPACK PR 795)
This commit is contained in:
Martin Kroeker 2023-05-18 21:55:05 +02:00 committed by GitHub
commit 941a34bb96
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 508 additions and 76 deletions

View File

@ -21,8 +21,8 @@
*>
*> \verbatim
*>
*> CERRHS tests the error exits for CGEBAK, CGEBAL, CGEHRD, CUNGHR,
*> CUNMHR, CHSEQR, CHSEIN, and CTREVC.
*> CERRHS tests the error exits for CGEBAK, CGEBAL, CGEHRD, CGEHD2,
*> CUNGHR, CUNMHR, CHSEQR, CHSEIN, CTREVC, and CTREVC3.
*> \endverbatim
*
* Arguments:
@ -86,7 +86,7 @@
* ..
* .. External Subroutines ..
EXTERNAL CHKXER, CGEBAK, CGEBAL, CGEHRD, CHSEIN, CHSEQR,
$ CUNGHR, CUNMHR, CTREVC
$ CUNGHR, CUNMHR, CTREVC, CTREVC3, CGEHD2
* ..
* .. Intrinsic Functions ..
INTRINSIC REAL
@ -193,6 +193,29 @@
CALL CHKXER( 'CGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* CGEHD2
*
SRNAMT = 'CGEHD2'
INFOT = 1
CALL CGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* CUNGHR
*
SRNAMT = 'CUNGHR'
@ -398,6 +421,47 @@
$ RW, INFO )
CALL CHKXER( 'CTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* CTREVC3
*
SRNAMT = 'CTREVC3'
INFOT = 1
CALL CTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL CTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL CTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 16
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 9
END IF
*
* Print a summary line.

View File

@ -21,7 +21,7 @@
*>
*> \verbatim
*>
*> CERRST tests the error exits for CHETRD, CUNGTR, CUNMTR, CHPTRD,
*> CERRST tests the error exits for CHETRD, CHETD2, CUNGTR, CUNMTR, CHPTRD,
*> CUNGTR, CUPMTR, CSTEQR, CSTEIN, CPTEQR, CHBTRD,
*> CHEEV, CHEEVX, CHEEVD, CHBEV, CHBEVX, CHBEVD,
*> CHPEV, CHPEVX, CHPEVD, and CSTEDC.
@ -94,7 +94,7 @@
EXTERNAL CHBEV, CHBEVD, CHBEVX, CHBTRD, CHEEV, CHEEVD,
$ CHEEVR, CHEEVX, CHETRD, CHKXER, CHPEV, CHPEVD,
$ CHPEVX, CHPTRD, CPTEQR, CSTEDC, CSTEIN, CSTEQR,
$ CUNGTR, CUNMTR, CUPGTR, CUPMTR,
$ CUNGTR, CUNMTR, CUPGTR, CUPMTR, CHETD2,
$ CHEEVD_2STAGE, CHEEVR_2STAGE, CHEEVX_2STAGE,
$ CHEEV_2STAGE, CHBEV_2STAGE, CHBEVD_2STAGE,
$ CHBEVX_2STAGE, CHETRD_2STAGE, CHETRD_HE2HB,
@ -156,6 +156,20 @@
CALL CHKXER( 'CHETRD', INFOT, NOUT, LERR, OK )
NT = NT + 4
*
* CHETD2
*
SRNAMT = 'CHETD2'
INFOT = 1
CALL CHETD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHETD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL CHETD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* CHETRD_2STAGE
*
SRNAMT = 'CHETRD_2STAGE'

View File

@ -21,8 +21,8 @@
*>
*> \verbatim
*>
*> DERRHS tests the error exits for DGEBAK, SGEBAL, SGEHRD, DORGHR,
*> DORMHR, DHSEQR, SHSEIN, and DTREVC.
*> DERRHS tests the error exits for DGEBAK, DGEBAL, DGEHRD, DGEHD2,
*> DORGHR, DORMHR, DHSEQR, DHSEIN, DTREVC, and DTREVC3.
*> \endverbatim
*
* Arguments:
@ -86,7 +86,7 @@
* ..
* .. External Subroutines ..
EXTERNAL CHKXER, DGEBAK, DGEBAL, DGEHRD, DHSEIN, DHSEQR,
$ DORGHR, DORMHR, DTREVC
$ DORGHR, DORMHR, DTREVC, DTREVC3, DGEHD2
* ..
* .. Intrinsic Functions ..
INTRINSIC DBLE
@ -194,6 +194,29 @@
CALL CHKXER( 'DGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* DGEHD2
*
SRNAMT = 'DGEHD2'
INFOT = 1
CALL DGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL DGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* DORGHR
*
SRNAMT = 'DORGHR'
@ -328,7 +351,11 @@
CALL DHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'DHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 9
INFOT = 13
CALL DHSEQR( 'E', 'N', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'DHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 10
*
* DHSEIN
*
@ -399,6 +426,43 @@
$ INFO )
CALL CHKXER( 'DTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* DTREVC3
*
SRNAMT = 'DTREVC3'
INFOT = 1
CALL DTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL DTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL DTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL DTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 8
END IF
*
* Print a summary line.

View File

@ -21,10 +21,10 @@
*>
*> \verbatim
*>
*> DERRST tests the error exits for DSYTRD, DORGTR, DORMTR, DSPTRD,
*> DOPGTR, DOPMTR, DSTEQR, SSTERF, SSTEBZ, SSTEIN, DPTEQR, DSBTRD,
*> DSYEV, SSYEVX, SSYEVD, DSBEV, SSBEVX, SSBEVD,
*> DSPEV, SSPEVX, SSPEVD, DSTEV, SSTEVX, SSTEVD, and SSTEDC.
*> DERRST tests the error exits for DSYTRD, DSYTD2, DORGTR, DORMTR, DSPTRD,
*> DOPGTR, DOPMTR, DSTEQR, DSTERF, DSTEBZ, DSTEIN, DPTEQR, DSBTRD,
*> DSYEV, DSYEVX, DSYEVD, DSBEV, DSBEVX, DSBEVD,
*> DSPEV, DSPEVX, DSPEVD, DSTEV, DSTEVX, DSTEVD, and DSTEDC.
*> DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
*> DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
*> DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
@ -95,7 +95,7 @@
$ DSBEV, DSBEVD, DSBEVX, DSBTRD, DSPEV, DSPEVD,
$ DSPEVX, DSPTRD, DSTEBZ, DSTEDC, DSTEIN, DSTEQR,
$ DSTERF, DSTEV, DSTEVD, DSTEVR, DSTEVX, DSYEV,
$ DSYEVD, DSYEVR, DSYEVX, DSYTRD,
$ DSYEVD, DSYEVR, DSYEVX, DSYTRD, DSYTD2,
$ DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
$ DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
$ DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
@ -157,6 +157,20 @@
CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
NT = NT + 4
*
* DSYTD2
*
SRNAMT = 'DSYTD2'
INFOT = 1
CALL DSYTD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DSYTD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL DSYTD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* DSYTRD_2STAGE
*
SRNAMT = 'DSYTRD_2STAGE'

View File

@ -21,8 +21,8 @@
*>
*> \verbatim
*>
*> SERRHS tests the error exits for SGEBAK, SGEBAL, SGEHRD, SORGHR,
*> SORMHR, SHSEQR, SHSEIN, and STREVC.
*> SERRHS tests the error exits for SGEBAK, SGEBAL, SGEHRD, SGEHD2,
*> SORGHR, SORMHR, SHSEQR, SHSEIN, STREVC, and STREVC3.
*> \endverbatim
*
* Arguments:
@ -85,7 +85,7 @@
* ..
* .. External Subroutines ..
EXTERNAL CHKXER, SGEBAK, SGEBAL, SGEHRD, SHSEIN, SHSEQR,
$ SORGHR, SORMHR, STREVC
$ SORGHR, SORMHR, STREVC, STREVC3, SGEHD2
* ..
* .. Intrinsic Functions ..
INTRINSIC REAL
@ -193,6 +193,29 @@
CALL CHKXER( 'SGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* SGEHD2
*
SRNAMT = 'SGEHD2'
INFOT = 1
CALL SGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL SGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL SGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* SORGHR
*
SRNAMT = 'SORGHR'
@ -327,7 +350,11 @@
CALL SHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'SHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 9
INFOT = 13
CALL SHSEQR( 'E', 'N', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'SHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 10
*
* SHSEIN
*
@ -398,6 +425,43 @@
$ INFO )
CALL CHKXER( 'STREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* STREVC3
*
SRNAMT = 'STREVC3'
INFOT = 1
CALL STREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL STREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL STREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL STREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL STREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 8
END IF
*
* Print a summary line.

View File

@ -21,7 +21,7 @@
*>
*> \verbatim
*>
*> SERRST tests the error exits for SSYTRD, SORGTR, SORMTR, SSPTRD,
*> SERRST tests the error exits for SSYTRD, SSYTD2, SORGTR, SORMTR, SSPTRD,
*> SOPGTR, SOPMTR, SSTEQR, SSTERF, SSTEBZ, SSTEIN, SPTEQR, SSBTRD,
*> SSYEV, SSYEVX, SSYEVD, SSBEV, SSBEVX, SSBEVD,
*> SSPEV, SSPEVX, SSPEVD, SSTEV, SSTEVX, SSTEVD, and SSTEDC.
@ -95,7 +95,7 @@
$ SSBEV, SSBEVD, SSBEVX, SSBTRD, SSPEV, SSPEVD,
$ SSPEVX, SSPTRD, SSTEBZ, SSTEDC, SSTEIN, SSTEQR,
$ SSTERF, SSTEV, SSTEVD, SSTEVR, SSTEVX, SSYEV,
$ SSYEVD, SSYEVR, SSYEVX, SSYTRD,
$ SSYEVD, SSYEVR, SSYEVX, SSYTRD, SSYTD2,
$ SSYEVD_2STAGE, SSYEVR_2STAGE, SSYEVX_2STAGE,
$ SSYEV_2STAGE, SSBEV_2STAGE, SSBEVD_2STAGE,
$ SSBEVX_2STAGE, SSYTRD_2STAGE, SSYTRD_SY2SB,
@ -157,6 +157,20 @@
CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
NT = NT + 4
*
* SSYTD2
*
SRNAMT = 'SSYTD2'
INFOT = 1
CALL SSYTD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SSYTD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL SSYTD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* SSYTRD_2STAGE
*
SRNAMT = 'SSYTRD_2STAGE'

View File

@ -21,8 +21,8 @@
*>
*> \verbatim
*>
*> ZERRHS tests the error exits for ZGEBAK, CGEBAL, CGEHRD, ZUNGHR,
*> ZUNMHR, ZHSEQR, CHSEIN, and ZTREVC.
*> ZERRHS tests the error exits for ZGEBAK, ZGEBAL, ZGEHRD, ZGEHD2,
*> ZUNGHR, ZUNMHR, ZHSEQR, ZHSEIN, ZTREVC, and ZTREVC3.
*> \endverbatim
*
* Arguments:
@ -86,7 +86,7 @@
* ..
* .. External Subroutines ..
EXTERNAL CHKXER, ZGEBAK, ZGEBAL, ZGEHRD, ZHSEIN, ZHSEQR,
$ ZTREVC, ZUNGHR, ZUNMHR
$ ZUNGHR, ZUNMHR, ZTREVC, ZTREVC3
* ..
* .. Intrinsic Functions ..
INTRINSIC DBLE
@ -193,6 +193,29 @@
CALL CHKXER( 'ZGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* ZGEHD2
*
SRNAMT = 'ZGEHD2'
INFOT = 1
CALL ZGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* ZUNGHR
*
SRNAMT = 'ZUNGHR'
@ -389,6 +412,47 @@
$ INFO )
CALL CHKXER( 'ZTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7
*
* ZTREVC3
*
SRNAMT = 'ZTREVC3'
INFOT = 1
CALL ZTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL ZTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL ZTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 16
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 9
END IF
*
* Print a summary line.

View File

@ -23,7 +23,7 @@
*>
*> \verbatim
*>
*> ZERRST tests the error exits for ZHETRD, ZUNGTR, CUNMTR, ZHPTRD,
*> ZERRST tests the error exits for ZHETRD, ZHETD2, ZUNGTR, CUNMTR, ZHPTRD,
*> ZUNGTR, ZUPMTR, ZSTEQR, CSTEIN, ZPTEQR, ZHBTRD,
*> ZHEEV, CHEEVX, CHEEVD, ZHBEV, CHBEVX, CHBEVD,
*> ZHPEV, CHPEVX, CHPEVD, and ZSTEDC.
@ -95,7 +95,7 @@
EXTERNAL CHKXER, ZHBEV, ZHBEVD, ZHBEVX, ZHBTRD, ZHEEV,
$ ZHEEVD, ZHEEVR, ZHEEVX, ZHETRD, ZHPEV, ZHPEVD,
$ ZHPEVX, ZHPTRD, ZPTEQR, ZSTEDC, ZSTEIN, ZSTEQR,
$ ZUNGTR, ZUNMTR, ZUPGTR, ZUPMTR,
$ ZUNGTR, ZUNMTR, ZUPGTR, ZUPMTR, ZHETD2,
$ ZHEEVD_2STAGE, ZHEEVR_2STAGE, ZHEEVX_2STAGE,
$ ZHEEV_2STAGE, ZHBEV_2STAGE, ZHBEVD_2STAGE,
$ ZHBEVX_2STAGE, ZHETRD_2STAGE
@ -156,6 +156,20 @@
CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
NT = NT + 4
*
* ZHETD2
*
SRNAMT = 'ZHETD2'
INFOT = 1
CALL ZHETD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZHETD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL ZHETD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* ZHETRD_2STAGE
*
SRNAMT = 'ZHETRD_2STAGE'

View File

@ -87,7 +87,7 @@
* ..
* .. External Subroutines ..
EXTERNAL CGBSV, CGBSVX, CGESV, CGESVX, CGTSV, CGTSVX,
$ CHESV, CHESV_RK ,CHESV_ROOK, CHESVX, CHKXER,
$ CHESV, CHESV_RK, CHESV_ROOK, CHESVX, CHKXER,
$ CHPSV, CHPSVX, CPBSV, CPBSVX, CPOSV, CPOSVX,
$ CPPSV, CPPSVX, CPTSV, CPTSVX, CSPSV, CSPSVX,
$ CSYSV, CSYSV_AA, CSYSV_RK, CSYSV_ROOK,
@ -651,6 +651,9 @@
INFOT = 3
CALL CHESV_ROOK( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CHESV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CHESV_ROOK( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'CHESV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHESV_ROOK( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CHESV_ROOK', INFOT, NOUT, LERR, OK )
@ -710,9 +713,15 @@
INFOT = 3
CALL CHESV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CHESV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'CHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CHESV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CHESV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'CHESV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'H2' ) ) THEN
*
@ -733,16 +742,44 @@
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CHESV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL CHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 13
CALL CHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'CHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'SA' ) ) THEN
*
* CSYSV_AASEN
*
SRNAMT = 'CSYSV_AA'
INFOT = 1
CALL CSYSV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CSYSV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CSYSV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CSYSV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CSYSV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CSYSV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'CSYSV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'S2' ) ) THEN
*
@ -763,14 +800,18 @@
CALL CHKXER( 'CSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CSYSV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'CSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL CSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'CSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'CSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL CSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
INFOT = 13
CALL CSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'CSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*
@ -834,6 +875,9 @@
INFOT = 3
CALL CSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CSYSV( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'CSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV ', INFOT, NOUT, LERR, OK )
@ -898,6 +942,9 @@
INFOT = 3
CALL CSYSV_ROOK( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CSYSV_ROOK( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'CSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CSYSV_ROOK( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'CSYSV_ROOK', INFOT, NOUT, LERR, OK )

View File

@ -699,21 +699,27 @@
*
ELSE IF( LSAMEN( 2, C2, 'SA' ) ) THEN
*
* DSYSV_AA
* DSYSV_AASEN
*
SRNAMT = 'DSYSV_AA'
INFOT = 1
CALL DSYSV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DSYSV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DSYSV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL DSYSV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
SRNAMT = 'DSYSV_AA'
INFOT = 1
CALL DSYSV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DSYSV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DSYSV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL DSYSV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL DSYSV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL DSYSV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'DSYSV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'S2' ) ) THEN
*
@ -734,14 +740,18 @@
CALL CHKXER( 'DSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL DSYSV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'DSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL DSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'DSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL DSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'DSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL DSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
INFOT = 13
CALL DSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'DSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*

View File

@ -582,6 +582,9 @@
INFOT = 3
CALL SSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SSYSV( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL SSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
@ -647,6 +650,9 @@
INFOT = 3
CALL SSYSV_ROOK( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SSYSV_ROOK( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'SSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL SSYSV_ROOK( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV_ROOK', INFOT, NOUT, LERR, OK )
@ -694,7 +700,7 @@
*
ELSE IF( LSAMEN( 2, C2, 'SA' ) ) THEN
*
* SSYSV_AA
* SSYSV_AASEN
*
SRNAMT = 'SSYSV_AA'
INFOT = 1
@ -706,13 +712,19 @@
INFOT = 3
CALL SSYSV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SSYSV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'SSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL SSYSV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'SSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL SSYSV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'SSYSV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'S2' ) ) THEN
*
* DSYSV_AASEN_2STAGE
* SSYSV_AASEN_2STAGE
*
SRNAMT = 'SSYSV_AA_2STAGE'
INFOT = 1
@ -729,14 +741,18 @@
CALL CHKXER( 'SSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SSYSV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'SSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL SSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'SSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL SSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'SSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL SSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
INFOT = 13
CALL SSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'SSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*

View File

@ -229,7 +229,7 @@
* Test path
*
PATH( 1: 1 ) = 'Zomplex precision'
PATH( 2: 3 ) = 'H2'
PATH( 2: 3 ) = 'S2'
*
* Path to generate matrices
*

View File

@ -653,6 +653,9 @@
INFOT = 3
CALL ZHESV_ROOK( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZHESV_ROOK( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'ZHESV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZHESV_ROOK( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_ROOK', INFOT, NOUT, LERR, OK )
@ -700,21 +703,27 @@
*
ELSE IF( LSAMEN( 2, C2, 'HA' ) ) THEN
*
* ZHESV_AA
* ZHESV_AASEN
*
SRNAMT = 'ZHESV_AA'
INFOT = 1
CALL ZHESV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZHESV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZHESV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZHESV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
SRNAMT = 'ZHESV_AA'
INFOT = 1
CALL ZHESV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZHESV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZHESV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZHESV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZHESV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL ZHESV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'ZHESV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'H2' ) ) THEN
*
@ -735,16 +744,44 @@
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZHESV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL ZHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL ZHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL ZHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 13
CALL ZHESV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'ZHESV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'SA' ) ) THEN
*
* ZSYSV_AASEN
*
SRNAMT = 'ZSYSV_AA'
INFOT = 1
CALL ZSYSV_AA( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZSYSV_AA( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZSYSV_AA( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZSYSV_AA( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZSYSV_AA( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL ZSYSV_AA( 'U', 3, 1, A, 3, IP, B, 3, W, 6, INFO )
CALL CHKXER( 'ZSYSV_AA', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'S2' ) ) THEN
*
@ -765,17 +802,21 @@
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZSYSV_AA_2STAGE( 'U', 2, 1, A, 1, A, 1, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL ZSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 7
CALL ZSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 1, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
**
INFOT = 11
CALL ZSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 1,
$ W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
INFOT = 13
CALL ZSYSV_AA_2STAGE( 'U', 2, 1, A, 2, A, 8, IP, IP, B, 2,
$ W, 1, INFO )
CALL CHKXER( 'ZSYSV_AA_2STAGE', INFOT, NOUT, LERR, OK )
*
ELSE IF( LSAMEN( 2, C2, 'HP' ) ) THEN
*
* ZHPSV
@ -836,6 +877,9 @@
INFOT = 3
CALL ZSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZSYSV( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
@ -900,6 +944,9 @@
INFOT = 3
CALL ZSYSV_ROOK( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZSYSV_ROOK( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
CALL CHKXER( 'ZSYSV_ROOK', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZSYSV_ROOK( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
CALL CHKXER( 'ZSYSV_ROOK', INFOT, NOUT, LERR, OK )