summaryrefslogtreecommitdiff
path: root/TESTING/EIG/serrst.f
diff options
context:
space:
mode:
authorjason <jason@8a072113-8704-0410-8d35-dd094bca7971>2008-10-28 01:38:50 +0000
committerjason <jason@8a072113-8704-0410-8d35-dd094bca7971>2008-10-28 01:38:50 +0000
commitbaba851215b44ac3b60b9248eb02bcce7eb76247 (patch)
tree8c0f5c006875532a30d4409f5e94b0f310ff00a7 /TESTING/EIG/serrst.f
downloadlapack-baba851215b44ac3b60b9248eb02bcce7eb76247.tar.gz
lapack-baba851215b44ac3b60b9248eb02bcce7eb76247.tar.bz2
lapack-baba851215b44ac3b60b9248eb02bcce7eb76247.zip
Move LAPACK trunk into position.
Diffstat (limited to 'TESTING/EIG/serrst.f')
-rw-r--r--TESTING/EIG/serrst.f886
1 files changed, 886 insertions, 0 deletions
diff --git a/TESTING/EIG/serrst.f b/TESTING/EIG/serrst.f
new file mode 100644
index 00000000..81ba8a1f
--- /dev/null
+++ b/TESTING/EIG/serrst.f
@@ -0,0 +1,886 @@
+ SUBROUTINE SERRST( PATH, NUNIT )
+*
+* -- LAPACK test routine (version 3.1) --
+* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
+* November 2006
+*
+* .. Scalar Arguments ..
+ CHARACTER*3 PATH
+ INTEGER NUNIT
+* ..
+*
+* Purpose
+* =======
+*
+* SERRST tests the error exits for SSYTRD, 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.
+*
+* Arguments
+* =========
+*
+* PATH (input) CHARACTER*3
+* The LAPACK path name for the routines to be tested.
+*
+* NUNIT (input) INTEGER
+* The unit number for output.
+*
+* =====================================================================
+*
+* NMAX has to be at least 3 or LIW may be too small
+* .. Parameters ..
+ INTEGER NMAX, LIW, LW
+ PARAMETER ( NMAX = 3, LIW = 12*NMAX, LW = 20*NMAX )
+* ..
+* .. Local Scalars ..
+ CHARACTER*2 C2
+ INTEGER I, INFO, J, M, N, NSPLIT, NT
+* ..
+* .. Local Arrays ..
+ INTEGER I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
+ REAL A( NMAX, NMAX ), C( NMAX, NMAX ), D( NMAX ),
+ $ E( NMAX ), Q( NMAX, NMAX ), R( NMAX ),
+ $ TAU( NMAX ), W( LW ), X( NMAX ),
+ $ Z( NMAX, NMAX )
+* ..
+* .. External Functions ..
+ LOGICAL LSAMEN
+ EXTERNAL LSAMEN
+* ..
+* .. External Subroutines ..
+ EXTERNAL CHKXER, SOPGTR, SOPMTR, SORGTR, SORMTR, SPTEQR,
+ $ SSBEV, SSBEVD, SSBEVX, SSBTRD, SSPEV, SSPEVD,
+ $ SSPEVX, SSPTRD, SSTEBZ, SSTEDC, SSTEIN, SSTEQR,
+ $ SSTERF, SSTEV, SSTEVD, SSTEVR, SSTEVX, SSYEV,
+ $ SSYEVD, SSYEVR, SSYEVX, SSYTRD
+* ..
+* .. Scalars in Common ..
+ LOGICAL LERR, OK
+ CHARACTER(32) SRNAMT
+ INTEGER INFOT, NOUT
+* ..
+* .. Common blocks ..
+ COMMON / INFOC / INFOT, NOUT, OK, LERR
+ COMMON / SRNAMC / SRNAMT
+* ..
+* .. Intrinsic Functions ..
+ INTRINSIC REAL
+* ..
+* .. Executable Statements ..
+*
+ NOUT = NUNIT
+ WRITE( NOUT, FMT = * )
+ C2 = PATH( 2: 3 )
+*
+* Set the variables to innocuous values.
+*
+ DO 20 J = 1, NMAX
+ DO 10 I = 1, NMAX
+ A( I, J ) = 1. / REAL( I+J )
+ 10 CONTINUE
+ 20 CONTINUE
+ DO 30 J = 1, NMAX
+ D( J ) = REAL( J )
+ E( J ) = 0.0
+ I1( J ) = J
+ I2( J ) = J
+ TAU( J ) = 1.
+ 30 CONTINUE
+ OK = .TRUE.
+ NT = 0
+*
+* Test error exits for the ST path.
+*
+ IF( LSAMEN( 2, C2, 'ST' ) ) THEN
+*
+* SSYTRD
+*
+ SRNAMT = 'SSYTRD'
+ INFOT = 1
+ CALL SSYTRD( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
+ CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSYTRD( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
+ CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSYTRD( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
+ CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSYTRD( 'U', 0, A, 1, D, E, TAU, W, 0, INFO )
+ CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
+ NT = NT + 4
+*
+* SORGTR
+*
+ SRNAMT = 'SORGTR'
+ INFOT = 1
+ CALL SORGTR( '/', 0, A, 1, TAU, W, 1, INFO )
+ CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SORGTR( 'U', -1, A, 1, TAU, W, 1, INFO )
+ CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SORGTR( 'U', 2, A, 1, TAU, W, 1, INFO )
+ CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SORGTR( 'U', 3, A, 3, TAU, W, 1, INFO )
+ CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
+ NT = NT + 4
+*
+* SORMTR
+*
+ SRNAMT = 'SORMTR'
+ INFOT = 1
+ CALL SORMTR( '/', 'U', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SORMTR( 'L', '/', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SORMTR( 'L', 'U', '/', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SORMTR( 'L', 'U', 'N', -1, 0, A, 1, TAU, C, 1, W, 1,
+ $ INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SORMTR( 'L', 'U', 'N', 0, -1, A, 1, TAU, C, 1, W, 1,
+ $ INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SORMTR( 'L', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SORMTR( 'R', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SORMTR( 'L', 'U', 'N', 2, 0, A, 2, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 12
+ CALL SORMTR( 'L', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 12
+ CALL SORMTR( 'R', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
+ CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
+ NT = NT + 10
+*
+* SSPTRD
+*
+ SRNAMT = 'SSPTRD'
+ INFOT = 1
+ CALL SSPTRD( '/', 0, A, D, E, TAU, INFO )
+ CALL CHKXER( 'SSPTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSPTRD( 'U', -1, A, D, E, TAU, INFO )
+ CALL CHKXER( 'SSPTRD', INFOT, NOUT, LERR, OK )
+ NT = NT + 2
+*
+* SOPGTR
+*
+ SRNAMT = 'SOPGTR'
+ INFOT = 1
+ CALL SOPGTR( '/', 0, A, TAU, Z, 1, W, INFO )
+ CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SOPGTR( 'U', -1, A, TAU, Z, 1, W, INFO )
+ CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SOPGTR( 'U', 2, A, TAU, Z, 1, W, INFO )
+ CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
+ NT = NT + 3
+*
+* SOPMTR
+*
+ SRNAMT = 'SOPMTR'
+ INFOT = 1
+ CALL SOPMTR( '/', 'U', 'N', 0, 0, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SOPMTR( 'L', '/', 'N', 0, 0, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SOPMTR( 'L', 'U', '/', 0, 0, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SOPMTR( 'L', 'U', 'N', -1, 0, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SOPMTR( 'L', 'U', 'N', 0, -1, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SOPMTR( 'L', 'U', 'N', 2, 0, A, TAU, C, 1, W, INFO )
+ CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
+ NT = NT + 6
+*
+* SPTEQR
+*
+ SRNAMT = 'SPTEQR'
+ INFOT = 1
+ CALL SPTEQR( '/', 0, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SPTEQR( 'N', -1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SPTEQR( 'V', 2, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
+ NT = NT + 3
+*
+* SSTEBZ
+*
+ SRNAMT = 'SSTEBZ'
+ INFOT = 1
+ CALL SSTEBZ( '/', 'E', 0, 0.0, 1.0, 1, 0, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEBZ( 'A', '/', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSTEBZ( 'A', 'E', -1, 0.0, 0.0, 0, 0, 0.0, D, E, M,
+ $ NSPLIT, X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SSTEBZ( 'V', 'E', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEBZ( 'I', 'E', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 2, 1, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 1, 0, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 1, 2, 0.0, D, E, M, NSPLIT,
+ $ X, I1, I2, W, IW, INFO )
+ CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
+ NT = NT + 8
+*
+* SSTEIN
+*
+ SRNAMT = 'SSTEIN'
+ INFOT = 1
+ CALL SSTEIN( -1, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSTEIN( 0, D, E, -1, X, I1, I2, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSTEIN( 0, D, E, 1, X, I1, I2, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSTEIN( 2, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
+ NT = NT + 4
+*
+* SSTEQR
+*
+ SRNAMT = 'SSTEQR'
+ INFOT = 1
+ CALL SSTEQR( '/', 0, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEQR( 'N', -1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEQR( 'V', 2, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
+ NT = NT + 3
+*
+* SSTERF
+*
+ SRNAMT = 'SSTERF'
+ INFOT = 1
+ CALL SSTERF( -1, D, E, INFO )
+ CALL CHKXER( 'SSTERF', INFOT, NOUT, LERR, OK )
+ NT = NT + 1
+*
+* SSTEDC
+*
+ SRNAMT = 'SSTEDC'
+ INFOT = 1
+ CALL SSTEDC( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEDC( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEDC( 'V', 2, D, E, Z, 1, W, 23, IW, 28, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEDC( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEDC( 'I', 2, D, E, Z, 2, W, 0, IW, 12, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEDC( 'V', 2, D, E, Z, 2, W, 0, IW, 28, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSTEDC( 'N', 1, D, E, Z, 1, W, 1, IW, 0, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSTEDC( 'I', 2, D, E, Z, 2, W, 19, IW, 0, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSTEDC( 'V', 2, D, E, Z, 2, W, 23, IW, 0, INFO )
+ CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
+ NT = NT + 9
+*
+* SSTEVD
+*
+ SRNAMT = 'SSTEVD'
+ INFOT = 1
+ CALL SSTEVD( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEVD( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEVD( 'V', 2, D, E, Z, 1, W, 19, IW, 12, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEVD( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEVD( 'V', 2, D, E, Z, 2, W, 12, IW, 12, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSTEVD( 'N', 0, D, E, Z, 1, W, 1, IW, 0, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSTEVD( 'V', 2, D, E, Z, 2, W, 19, IW, 11, INFO )
+ CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
+ NT = NT + 7
+*
+* SSTEV
+*
+ SRNAMT = 'SSTEV '
+ INFOT = 1
+ CALL SSTEV( '/', 0, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEV( 'N', -1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSTEV( 'V', 2, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
+ NT = NT + 3
+*
+* SSTEVX
+*
+ SRNAMT = 'SSTEVX'
+ INFOT = 1
+ CALL SSTEVX( '/', 'A', 0, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEVX( 'N', '/', 0, D, E, 0.0, 1.0, 1, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSTEVX( 'N', 'A', -1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSTEVX( 'N', 'V', 1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSTEVX( 'N', 'I', 2, D, E, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 1, 2, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 14
+ CALL SSTEVX( 'V', 'A', 2, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
+ NT = NT + 9
+*
+* SSTEVR
+*
+ N = 1
+ SRNAMT = 'SSTEVR'
+ INFOT = 1
+ CALL SSTEVR( '/', 'A', 0, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSTEVR( 'V', '/', 0, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSTEVR( 'V', 'A', -1, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSTEVR( 'V', 'V', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 0, 1, 0.0, M, W, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ N = 2
+ CALL SSTEVR( 'V', 'I', 2, D, E, 0.0, 0.0, 2, 1, 0.0, M, W, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 14
+ N = 1
+ CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
+ $ 0, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 17
+ CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
+ $ 1, IW, X, 20*N-1, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 19
+ CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
+ $ 1, IW, X, 20*N, IW( 2*N+1 ), 10*N-1, INFO )
+ CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
+ NT = NT + 9
+*
+* SSYEVD
+*
+ SRNAMT = 'SSYEVD'
+ INFOT = 1
+ CALL SSYEVD( '/', 'U', 0, A, 1, X, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSYEVD( 'N', '/', 0, A, 1, X, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSYEVD( 'N', 'U', -1, A, 1, X, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SSYEVD( 'N', 'U', 2, A, 1, X, W, 3, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEVD( 'N', 'U', 1, A, 1, X, W, 0, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEVD( 'N', 'U', 2, A, 2, X, W, 4, IW, 1, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEVD( 'V', 'U', 2, A, 2, X, W, 20, IW, 12, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSYEVD( 'N', 'U', 1, A, 1, X, W, 1, IW, 0, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSYEVD( 'N', 'U', 2, A, 2, X, W, 5, IW, 0, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSYEVD( 'V', 'U', 2, A, 2, X, W, 27, IW, 11, INFO )
+ CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
+ NT = NT + 10
+*
+* SSYEVR
+*
+ SRNAMT = 'SSYEVR'
+ N = 1
+ INFOT = 1
+ CALL SSYEVR( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
+ $ Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSYEVR( 'V', '/', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
+ $ Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSYEVR( 'V', 'A', '/', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
+ $ R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSYEVR( 'V', 'A', 'U', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
+ $ R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSYEVR( 'V', 'A', 'U', 2, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
+ $ Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEVR( 'V', 'V', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
+ $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 0, 1, 0.0,
+ $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+*
+ CALL SSYEVR( 'V', 'I', 'U', 2, A, 2, 0.0E0, 0.0E0, 2, 1, 0.0,
+ $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 15
+ CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
+ $ M, R, Z, 0, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 18
+ CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
+ $ M, R, Z, 1, IW, Q, 26*N-1, IW( 2*N+1 ), 10*N,
+ $ INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ INFOT = 20
+ CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
+ $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N-1,
+ $ INFO )
+ CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
+ NT = NT + 11
+*
+* SSYEV
+*
+ SRNAMT = 'SSYEV '
+ INFOT = 1
+ CALL SSYEV( '/', 'U', 0, A, 1, X, W, 1, INFO )
+ CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSYEV( 'N', '/', 0, A, 1, X, W, 1, INFO )
+ CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSYEV( 'N', 'U', -1, A, 1, X, W, 1, INFO )
+ CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SSYEV( 'N', 'U', 2, A, 1, X, W, 3, INFO )
+ CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEV( 'N', 'U', 1, A, 1, X, W, 1, INFO )
+ CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
+ NT = NT + 5
+*
+* SSYEVX
+*
+ SRNAMT = 'SSYEVX'
+ INFOT = 1
+ CALL SSYEVX( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 1, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSYEVX( 'N', '/', 'U', 0, A, 1, 0.0, 1.0, 1, 0, 0.0, M, X,
+ $ Z, 1, W, 1, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSYEVX( 'N', 'A', '/', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 1, IW, I3, INFO )
+ INFOT = 4
+ CALL SSYEVX( 'N', 'A', 'U', -1, A, 1, 0.0, 0.0, 0, 0, 0.0, M,
+ $ X, Z, 1, W, 1, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSYEVX( 'N', 'A', 'U', 2, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 16, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSYEVX( 'N', 'V', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 8, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 8, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 2, 1, 0.0, M, X,
+ $ Z, 1, W, 8, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSYEVX( 'N', 'I', 'U', 2, A, 2, 0.0, 0.0, 2, 1, 0.0, M, X,
+ $ Z, 1, W, 16, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 1, 2, 0.0, M, X,
+ $ Z, 1, W, 8, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 15
+ CALL SSYEVX( 'V', 'A', 'U', 2, A, 2, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 16, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 17
+ CALL SSYEVX( 'V', 'A', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, 0, IW, I3, INFO )
+ CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
+ NT = NT + 12
+*
+* SSPEVD
+*
+ SRNAMT = 'SSPEVD'
+ INFOT = 1
+ CALL SSPEVD( '/', 'U', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSPEVD( 'N', '/', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSPEVD( 'N', 'U', -1, A, X, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSPEVD( 'V', 'U', 2, A, X, Z, 1, W, 23, IW, 12, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 0, IW, 1, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 3, IW, 1, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 16, IW, 12, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, IW, 0, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 4, IW, 0, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 23, IW, 11, INFO )
+ CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
+ NT = NT + 10
+*
+* SSPEV
+*
+ SRNAMT = 'SSPEV '
+ INFOT = 1
+ CALL SSPEV( '/', 'U', 0, A, W, Z, 1, X, INFO )
+ CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSPEV( 'N', '/', 0, A, W, Z, 1, X, INFO )
+ CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSPEV( 'N', 'U', -1, A, W, Z, 1, X, INFO )
+ CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSPEV( 'V', 'U', 2, A, W, Z, 1, X, INFO )
+ CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
+ NT = NT + 4
+*
+* SSPEVX
+*
+ SRNAMT = 'SSPEVX'
+ INFOT = 1
+ CALL SSPEVX( '/', 'A', 'U', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSPEVX( 'N', '/', 'U', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSPEVX( 'N', 'A', '/', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ INFOT = 4
+ CALL SSPEVX( 'N', 'A', 'U', -1, A, 0.0, 0.0, 0, 0, 0.0, M, X,
+ $ Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSPEVX( 'N', 'V', 'U', 1, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 8
+ CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSPEVX( 'N', 'I', 'U', 2, A, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 1, 2, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 14
+ CALL SSPEVX( 'V', 'A', 'U', 2, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
+ $ 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
+ NT = NT + 10
+*
+* Test error exits for the SB path.
+*
+ ELSE IF( LSAMEN( 2, C2, 'SB' ) ) THEN
+*
+* SSBTRD
+*
+ SRNAMT = 'SSBTRD'
+ INFOT = 1
+ CALL SSBTRD( '/', 'U', 0, 0, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSBTRD( 'N', '/', 0, 0, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSBTRD( 'N', 'U', -1, 0, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSBTRD( 'N', 'U', 0, -1, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSBTRD( 'N', 'U', 1, 1, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ INFOT = 10
+ CALL SSBTRD( 'V', 'U', 2, 0, A, 1, D, E, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
+ NT = NT + 6
+*
+* SSBEVD
+*
+ SRNAMT = 'SSBEVD'
+ INFOT = 1
+ CALL SSBEVD( '/', 'U', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSBEVD( 'N', '/', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSBEVD( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, 1, IW, 1,
+ $ INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSBEVD( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, 1, IW, 1,
+ $ INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSBEVD( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, 4, IW, 1, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 1, W, 25, IW, 12,
+ $ INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 0, IW, 1, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSBEVD( 'N', 'U', 2, 0, A, 1, X, Z, 1, W, 3, IW, 1, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 18, IW, 12,
+ $ INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 13
+ CALL SSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 1, IW, 0, INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ INFOT = 13
+ CALL SSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 25, IW, 11,
+ $ INFO )
+ CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
+ NT = NT + 11
+*
+* SSBEV
+*
+ SRNAMT = 'SSBEV '
+ INFOT = 1
+ CALL SSBEV( '/', 'U', 0, 0, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSBEV( 'N', '/', 0, 0, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSBEV( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 4
+ CALL SSBEV( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 6
+ CALL SSBEV( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSBEV( 'V', 'U', 2, 0, A, 1, X, Z, 1, W, INFO )
+ CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
+ NT = NT + 6
+*
+* SSBEVX
+*
+ SRNAMT = 'SSBEVX'
+ INFOT = 1
+ CALL SSBEVX( '/', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 2
+ CALL SSBEVX( 'N', '/', 'U', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 3
+ CALL SSBEVX( 'N', 'A', '/', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ INFOT = 4
+ CALL SSBEVX( 'N', 'A', 'U', -1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 5
+ CALL SSBEVX( 'N', 'A', 'U', 0, -1, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 7
+ CALL SSBEVX( 'N', 'A', 'U', 2, 1, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 9
+ CALL SSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 2, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 11
+ CALL SSBEVX( 'N', 'V', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 12
+ CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 12
+ CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 2, 1,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 13
+ CALL SSBEVX( 'N', 'I', 'U', 2, 0, A, 1, Q, 1, 0.0, 0.0, 2, 1,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 13
+ CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 1, 2,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ INFOT = 18
+ CALL SSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 2, 0.0, 0.0, 0, 0,
+ $ 0.0, M, X, Z, 1, W, IW, I3, INFO )
+ CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
+ NT = NT + 13
+ END IF
+*
+* Print a summary line.
+*
+ IF( OK ) THEN
+ WRITE( NOUT, FMT = 9999 )PATH, NT
+ ELSE
+ WRITE( NOUT, FMT = 9998 )PATH
+ END IF
+*
+ 9999 FORMAT( 1X, A3, ' routines passed the tests of the error exits',
+ $ ' (', I3, ' tests done)' )
+ 9998 FORMAT( ' *** ', A3, ' routines failed the tests of the error ',
+ $ 'exits ***' )
+*
+ RETURN
+*
+* End of SERRST
+*
+ END