LAPACK 3.3.0

serrst.f

Go to the documentation of this file.
00001       SUBROUTINE SERRST( PATH, NUNIT )
00002 *
00003 *  -- LAPACK test routine (version 3.1) --
00004 *     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
00005 *     November 2006
00006 *
00007 *     .. Scalar Arguments ..
00008       CHARACTER*3        PATH
00009       INTEGER            NUNIT
00010 *     ..
00011 *
00012 *  Purpose
00013 *  =======
00014 *
00015 *  SERRST tests the error exits for SSYTRD, SORGTR, SORMTR, SSPTRD,
00016 *  SOPGTR, SOPMTR, SSTEQR, SSTERF, SSTEBZ, SSTEIN, SPTEQR, SSBTRD,
00017 *  SSYEV, SSYEVX, SSYEVD, SSBEV, SSBEVX, SSBEVD,
00018 *  SSPEV, SSPEVX, SSPEVD, SSTEV, SSTEVX, SSTEVD, and SSTEDC.
00019 *
00020 *  Arguments
00021 *  =========
00022 *
00023 *  PATH    (input) CHARACTER*3
00024 *          The LAPACK path name for the routines to be tested.
00025 *
00026 *  NUNIT   (input) INTEGER
00027 *          The unit number for output.
00028 *
00029 *  =====================================================================
00030 *
00031 *     NMAX has to be at least 3 or LIW may be too small
00032 *     .. Parameters ..
00033       INTEGER            NMAX, LIW, LW
00034       PARAMETER          ( NMAX = 3, LIW = 12*NMAX, LW = 20*NMAX )
00035 *     ..
00036 *     .. Local Scalars ..
00037       CHARACTER*2        C2
00038       INTEGER            I, INFO, J, M, N, NSPLIT, NT
00039 *     ..
00040 *     .. Local Arrays ..
00041       INTEGER            I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
00042       REAL               A( NMAX, NMAX ), C( NMAX, NMAX ), D( NMAX ),
00043      $                   E( NMAX ), Q( NMAX, NMAX ), R( NMAX ),
00044      $                   TAU( NMAX ), W( LW ), X( NMAX ),
00045      $                   Z( NMAX, NMAX )
00046 *     ..
00047 *     .. External Functions ..
00048       LOGICAL            LSAMEN
00049       EXTERNAL           LSAMEN
00050 *     ..
00051 *     .. External Subroutines ..
00052       EXTERNAL           CHKXER, SOPGTR, SOPMTR, SORGTR, SORMTR, SPTEQR,
00053      $                   SSBEV, SSBEVD, SSBEVX, SSBTRD, SSPEV, SSPEVD,
00054      $                   SSPEVX, SSPTRD, SSTEBZ, SSTEDC, SSTEIN, SSTEQR,
00055      $                   SSTERF, SSTEV, SSTEVD, SSTEVR, SSTEVX, SSYEV,
00056      $                   SSYEVD, SSYEVR, SSYEVX, SSYTRD
00057 *     ..
00058 *     .. Scalars in Common ..
00059       LOGICAL            LERR, OK
00060       CHARACTER*32       SRNAMT
00061       INTEGER            INFOT, NOUT
00062 *     ..
00063 *     .. Common blocks ..
00064       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00065       COMMON             / SRNAMC / SRNAMT
00066 *     ..
00067 *     .. Intrinsic Functions ..
00068       INTRINSIC          REAL
00069 *     ..
00070 *     .. Executable Statements ..
00071 *
00072       NOUT = NUNIT
00073       WRITE( NOUT, FMT = * )
00074       C2 = PATH( 2: 3 )
00075 *
00076 *     Set the variables to innocuous values.
00077 *
00078       DO 20 J = 1, NMAX
00079          DO 10 I = 1, NMAX
00080             A( I, J ) = 1. / REAL( I+J )
00081    10    CONTINUE
00082    20 CONTINUE
00083       DO 30 J = 1, NMAX
00084          D( J ) = REAL( J )
00085          E( J ) = 0.0
00086          I1( J ) = J
00087          I2( J ) = J
00088          TAU( J ) = 1.
00089    30 CONTINUE
00090       OK = .TRUE.
00091       NT = 0
00092 *
00093 *     Test error exits for the ST path.
00094 *
00095       IF( LSAMEN( 2, C2, 'ST' ) ) THEN
00096 *
00097 *        SSYTRD
00098 *
00099          SRNAMT = 'SSYTRD'
00100          INFOT = 1
00101          CALL SSYTRD( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
00102          CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
00103          INFOT = 2
00104          CALL SSYTRD( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
00105          CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
00106          INFOT = 4
00107          CALL SSYTRD( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
00108          CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
00109          INFOT = 9
00110          CALL SSYTRD( 'U', 0, A, 1, D, E, TAU, W, 0, INFO )
00111          CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
00112          NT = NT + 4
00113 *
00114 *        SORGTR
00115 *
00116          SRNAMT = 'SORGTR'
00117          INFOT = 1
00118          CALL SORGTR( '/', 0, A, 1, TAU, W, 1, INFO )
00119          CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
00120          INFOT = 2
00121          CALL SORGTR( 'U', -1, A, 1, TAU, W, 1, INFO )
00122          CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
00123          INFOT = 4
00124          CALL SORGTR( 'U', 2, A, 1, TAU, W, 1, INFO )
00125          CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
00126          INFOT = 7
00127          CALL SORGTR( 'U', 3, A, 3, TAU, W, 1, INFO )
00128          CALL CHKXER( 'SORGTR', INFOT, NOUT, LERR, OK )
00129          NT = NT + 4
00130 *
00131 *        SORMTR
00132 *
00133          SRNAMT = 'SORMTR'
00134          INFOT = 1
00135          CALL SORMTR( '/', 'U', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00136          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00137          INFOT = 2
00138          CALL SORMTR( 'L', '/', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00139          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00140          INFOT = 3
00141          CALL SORMTR( 'L', 'U', '/', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00142          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00143          INFOT = 4
00144          CALL SORMTR( 'L', 'U', 'N', -1, 0, A, 1, TAU, C, 1, W, 1,
00145      $                INFO )
00146          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00147          INFOT = 5
00148          CALL SORMTR( 'L', 'U', 'N', 0, -1, A, 1, TAU, C, 1, W, 1,
00149      $                INFO )
00150          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00151          INFOT = 7
00152          CALL SORMTR( 'L', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
00153          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00154          INFOT = 7
00155          CALL SORMTR( 'R', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
00156          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00157          INFOT = 10
00158          CALL SORMTR( 'L', 'U', 'N', 2, 0, A, 2, TAU, C, 1, W, 1, INFO )
00159          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00160          INFOT = 12
00161          CALL SORMTR( 'L', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
00162          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00163          INFOT = 12
00164          CALL SORMTR( 'R', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
00165          CALL CHKXER( 'SORMTR', INFOT, NOUT, LERR, OK )
00166          NT = NT + 10
00167 *
00168 *        SSPTRD
00169 *
00170          SRNAMT = 'SSPTRD'
00171          INFOT = 1
00172          CALL SSPTRD( '/', 0, A, D, E, TAU, INFO )
00173          CALL CHKXER( 'SSPTRD', INFOT, NOUT, LERR, OK )
00174          INFOT = 2
00175          CALL SSPTRD( 'U', -1, A, D, E, TAU, INFO )
00176          CALL CHKXER( 'SSPTRD', INFOT, NOUT, LERR, OK )
00177          NT = NT + 2
00178 *
00179 *        SOPGTR
00180 *
00181          SRNAMT = 'SOPGTR'
00182          INFOT = 1
00183          CALL SOPGTR( '/', 0, A, TAU, Z, 1, W, INFO )
00184          CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
00185          INFOT = 2
00186          CALL SOPGTR( 'U', -1, A, TAU, Z, 1, W, INFO )
00187          CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
00188          INFOT = 6
00189          CALL SOPGTR( 'U', 2, A, TAU, Z, 1, W, INFO )
00190          CALL CHKXER( 'SOPGTR', INFOT, NOUT, LERR, OK )
00191          NT = NT + 3
00192 *
00193 *        SOPMTR
00194 *
00195          SRNAMT = 'SOPMTR'
00196          INFOT = 1
00197          CALL SOPMTR( '/', 'U', 'N', 0, 0, A, TAU, C, 1, W, INFO )
00198          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00199          INFOT = 2
00200          CALL SOPMTR( 'L', '/', 'N', 0, 0, A, TAU, C, 1, W, INFO )
00201          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00202          INFOT = 3
00203          CALL SOPMTR( 'L', 'U', '/', 0, 0, A, TAU, C, 1, W, INFO )
00204          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00205          INFOT = 4
00206          CALL SOPMTR( 'L', 'U', 'N', -1, 0, A, TAU, C, 1, W, INFO )
00207          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00208          INFOT = 5
00209          CALL SOPMTR( 'L', 'U', 'N', 0, -1, A, TAU, C, 1, W, INFO )
00210          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00211          INFOT = 9
00212          CALL SOPMTR( 'L', 'U', 'N', 2, 0, A, TAU, C, 1, W, INFO )
00213          CALL CHKXER( 'SOPMTR', INFOT, NOUT, LERR, OK )
00214          NT = NT + 6
00215 *
00216 *        SPTEQR
00217 *
00218          SRNAMT = 'SPTEQR'
00219          INFOT = 1
00220          CALL SPTEQR( '/', 0, D, E, Z, 1, W, INFO )
00221          CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
00222          INFOT = 2
00223          CALL SPTEQR( 'N', -1, D, E, Z, 1, W, INFO )
00224          CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
00225          INFOT = 6
00226          CALL SPTEQR( 'V', 2, D, E, Z, 1, W, INFO )
00227          CALL CHKXER( 'SPTEQR', INFOT, NOUT, LERR, OK )
00228          NT = NT + 3
00229 *
00230 *        SSTEBZ
00231 *
00232          SRNAMT = 'SSTEBZ'
00233          INFOT = 1
00234          CALL SSTEBZ( '/', 'E', 0, 0.0, 1.0, 1, 0, 0.0, D, E, M, NSPLIT,
00235      $                X, I1, I2, W, IW, INFO )
00236          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00237          INFOT = 2
00238          CALL SSTEBZ( 'A', '/', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
00239      $                X, I1, I2, W, IW, INFO )
00240          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00241          INFOT = 3
00242          CALL SSTEBZ( 'A', 'E', -1, 0.0, 0.0, 0, 0, 0.0, D, E, M,
00243      $                NSPLIT, X, I1, I2, W, IW, INFO )
00244          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00245          INFOT = 5
00246          CALL SSTEBZ( 'V', 'E', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
00247      $                X, I1, I2, W, IW, INFO )
00248          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00249          INFOT = 6
00250          CALL SSTEBZ( 'I', 'E', 0, 0.0, 0.0, 0, 0, 0.0, D, E, M, NSPLIT,
00251      $                X, I1, I2, W, IW, INFO )
00252          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00253          INFOT = 6
00254          CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 2, 1, 0.0, D, E, M, NSPLIT,
00255      $                X, I1, I2, W, IW, INFO )
00256          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00257          INFOT = 7
00258          CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 1, 0, 0.0, D, E, M, NSPLIT,
00259      $                X, I1, I2, W, IW, INFO )
00260          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00261          INFOT = 7
00262          CALL SSTEBZ( 'I', 'E', 1, 0.0, 0.0, 1, 2, 0.0, D, E, M, NSPLIT,
00263      $                X, I1, I2, W, IW, INFO )
00264          CALL CHKXER( 'SSTEBZ', INFOT, NOUT, LERR, OK )
00265          NT = NT + 8
00266 *
00267 *        SSTEIN
00268 *
00269          SRNAMT = 'SSTEIN'
00270          INFOT = 1
00271          CALL SSTEIN( -1, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
00272          CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
00273          INFOT = 4
00274          CALL SSTEIN( 0, D, E, -1, X, I1, I2, Z, 1, W, IW, I3, INFO )
00275          CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
00276          INFOT = 4
00277          CALL SSTEIN( 0, D, E, 1, X, I1, I2, Z, 1, W, IW, I3, INFO )
00278          CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
00279          INFOT = 9
00280          CALL SSTEIN( 2, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
00281          CALL CHKXER( 'SSTEIN', INFOT, NOUT, LERR, OK )
00282          NT = NT + 4
00283 *
00284 *        SSTEQR
00285 *
00286          SRNAMT = 'SSTEQR'
00287          INFOT = 1
00288          CALL SSTEQR( '/', 0, D, E, Z, 1, W, INFO )
00289          CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
00290          INFOT = 2
00291          CALL SSTEQR( 'N', -1, D, E, Z, 1, W, INFO )
00292          CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
00293          INFOT = 6
00294          CALL SSTEQR( 'V', 2, D, E, Z, 1, W, INFO )
00295          CALL CHKXER( 'SSTEQR', INFOT, NOUT, LERR, OK )
00296          NT = NT + 3
00297 *
00298 *        SSTERF
00299 *
00300          SRNAMT = 'SSTERF'
00301          INFOT = 1
00302          CALL SSTERF( -1, D, E, INFO )
00303          CALL CHKXER( 'SSTERF', INFOT, NOUT, LERR, OK )
00304          NT = NT + 1
00305 *
00306 *        SSTEDC
00307 *
00308          SRNAMT = 'SSTEDC'
00309          INFOT = 1
00310          CALL SSTEDC( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
00311          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00312          INFOT = 2
00313          CALL SSTEDC( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
00314          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00315          INFOT = 6
00316          CALL SSTEDC( 'V', 2, D, E, Z, 1, W, 23, IW, 28, INFO )
00317          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00318          INFOT = 8
00319          CALL SSTEDC( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
00320          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00321          INFOT = 8
00322          CALL SSTEDC( 'I', 2, D, E, Z, 2, W, 0, IW, 12, INFO )
00323          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00324          INFOT = 8
00325          CALL SSTEDC( 'V', 2, D, E, Z, 2, W, 0, IW, 28, INFO )
00326          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00327          INFOT = 10
00328          CALL SSTEDC( 'N', 1, D, E, Z, 1, W, 1, IW, 0, INFO )
00329          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00330          INFOT = 10
00331          CALL SSTEDC( 'I', 2, D, E, Z, 2, W, 19, IW, 0, INFO )
00332          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00333          INFOT = 10
00334          CALL SSTEDC( 'V', 2, D, E, Z, 2, W, 23, IW, 0, INFO )
00335          CALL CHKXER( 'SSTEDC', INFOT, NOUT, LERR, OK )
00336          NT = NT + 9
00337 *
00338 *        SSTEVD
00339 *
00340          SRNAMT = 'SSTEVD'
00341          INFOT = 1
00342          CALL SSTEVD( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
00343          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00344          INFOT = 2
00345          CALL SSTEVD( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
00346          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00347          INFOT = 6
00348          CALL SSTEVD( 'V', 2, D, E, Z, 1, W, 19, IW, 12, INFO )
00349          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00350          INFOT = 8
00351          CALL SSTEVD( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
00352          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00353          INFOT = 8
00354          CALL SSTEVD( 'V', 2, D, E, Z, 2, W, 12, IW, 12, INFO )
00355          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00356          INFOT = 10
00357          CALL SSTEVD( 'N', 0, D, E, Z, 1, W, 1, IW, 0, INFO )
00358          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00359          INFOT = 10
00360          CALL SSTEVD( 'V', 2, D, E, Z, 2, W, 19, IW, 11, INFO )
00361          CALL CHKXER( 'SSTEVD', INFOT, NOUT, LERR, OK )
00362          NT = NT + 7
00363 *
00364 *        SSTEV
00365 *
00366          SRNAMT = 'SSTEV '
00367          INFOT = 1
00368          CALL SSTEV( '/', 0, D, E, Z, 1, W, INFO )
00369          CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
00370          INFOT = 2
00371          CALL SSTEV( 'N', -1, D, E, Z, 1, W, INFO )
00372          CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
00373          INFOT = 6
00374          CALL SSTEV( 'V', 2, D, E, Z, 1, W, INFO )
00375          CALL CHKXER( 'SSTEV ', INFOT, NOUT, LERR, OK )
00376          NT = NT + 3
00377 *
00378 *        SSTEVX
00379 *
00380          SRNAMT = 'SSTEVX'
00381          INFOT = 1
00382          CALL SSTEVX( '/', 'A', 0, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00383      $                1, W, IW, I3, INFO )
00384          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00385          INFOT = 2
00386          CALL SSTEVX( 'N', '/', 0, D, E, 0.0, 1.0, 1, 0, 0.0, M, X, Z,
00387      $                1, W, IW, I3, INFO )
00388          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00389          INFOT = 3
00390          CALL SSTEVX( 'N', 'A', -1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00391      $                1, W, IW, I3, INFO )
00392          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00393          INFOT = 7
00394          CALL SSTEVX( 'N', 'V', 1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00395      $                1, W, IW, I3, INFO )
00396          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00397          INFOT = 8
00398          CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00399      $                1, W, IW, I3, INFO )
00400          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00401          INFOT = 8
00402          CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
00403      $                1, W, IW, I3, INFO )
00404          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00405          INFOT = 9
00406          CALL SSTEVX( 'N', 'I', 2, D, E, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
00407      $                1, W, IW, I3, INFO )
00408          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00409          INFOT = 9
00410          CALL SSTEVX( 'N', 'I', 1, D, E, 0.0, 0.0, 1, 2, 0.0, M, X, Z,
00411      $                1, W, IW, I3, INFO )
00412          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00413          INFOT = 14
00414          CALL SSTEVX( 'V', 'A', 2, D, E, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00415      $                1, W, IW, I3, INFO )
00416          CALL CHKXER( 'SSTEVX', INFOT, NOUT, LERR, OK )
00417          NT = NT + 9
00418 *
00419 *        SSTEVR
00420 *
00421          N = 1
00422          SRNAMT = 'SSTEVR'
00423          INFOT = 1
00424          CALL SSTEVR( '/', 'A', 0, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
00425      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00426          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00427          INFOT = 2
00428          CALL SSTEVR( 'V', '/', 0, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
00429      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00430          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00431          INFOT = 3
00432          CALL SSTEVR( 'V', 'A', -1, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
00433      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00434          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00435          INFOT = 7
00436          CALL SSTEVR( 'V', 'V', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, R, Z,
00437      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00438          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00439          INFOT = 8
00440          CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 0, 1, 0.0, M, W, Z,
00441      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00442          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00443          INFOT = 9
00444          N = 2
00445          CALL SSTEVR( 'V', 'I', 2, D, E, 0.0, 0.0, 2, 1, 0.0, M, W, Z,
00446      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00447          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00448          INFOT = 14
00449          N = 1
00450          CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
00451      $                0, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
00452          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00453          INFOT = 17
00454          CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
00455      $                1, IW, X, 20*N-1, IW( 2*N+1 ), 10*N, INFO )
00456          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00457          INFOT = 19
00458          CALL SSTEVR( 'V', 'I', 1, D, E, 0.0, 0.0, 1, 1, 0.0, M, W, Z,
00459      $                1, IW, X, 20*N, IW( 2*N+1 ), 10*N-1, INFO )
00460          CALL CHKXER( 'SSTEVR', INFOT, NOUT, LERR, OK )
00461          NT = NT + 9
00462 *
00463 *        SSYEVD
00464 *
00465          SRNAMT = 'SSYEVD'
00466          INFOT = 1
00467          CALL SSYEVD( '/', 'U', 0, A, 1, X, W, 1, IW, 1, INFO )
00468          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00469          INFOT = 2
00470          CALL SSYEVD( 'N', '/', 0, A, 1, X, W, 1, IW, 1, INFO )
00471          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00472          INFOT = 3
00473          CALL SSYEVD( 'N', 'U', -1, A, 1, X, W, 1, IW, 1, INFO )
00474          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00475          INFOT = 5
00476          CALL SSYEVD( 'N', 'U', 2, A, 1, X, W, 3, IW, 1, INFO )
00477          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00478          INFOT = 8
00479          CALL SSYEVD( 'N', 'U', 1, A, 1, X, W, 0, IW, 1, INFO )
00480          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00481          INFOT = 8
00482          CALL SSYEVD( 'N', 'U', 2, A, 2, X, W, 4, IW, 1, INFO )
00483          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00484          INFOT = 8
00485          CALL SSYEVD( 'V', 'U', 2, A, 2, X, W, 20, IW, 12, INFO )
00486          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00487          INFOT = 10
00488          CALL SSYEVD( 'N', 'U', 1, A, 1, X, W, 1, IW, 0, INFO )
00489          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00490          INFOT = 10
00491          CALL SSYEVD( 'N', 'U', 2, A, 2, X, W, 5, IW, 0, INFO )
00492          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00493          INFOT = 10
00494          CALL SSYEVD( 'V', 'U', 2, A, 2, X, W, 27, IW, 11, INFO )
00495          CALL CHKXER( 'SSYEVD', INFOT, NOUT, LERR, OK )
00496          NT = NT + 10
00497 *
00498 *        SSYEVR
00499 *
00500          SRNAMT = 'SSYEVR'
00501          N = 1
00502          INFOT = 1
00503          CALL SSYEVR( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
00504      $                Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00505          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00506          INFOT = 2
00507          CALL SSYEVR( 'V', '/', 'U', 0, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
00508      $                Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00509          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00510          INFOT = 3
00511          CALL SSYEVR( 'V', 'A', '/', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
00512      $                R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00513          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00514          INFOT = 4
00515          CALL SSYEVR( 'V', 'A', 'U', -1, A, 1, 0.0, 0.0, 1, 1, 0.0, M,
00516      $                R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00517          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00518          INFOT = 6
00519          CALL SSYEVR( 'V', 'A', 'U', 2, A, 1, 0.0, 0.0, 1, 1, 0.0, M, R,
00520      $                Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00521          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00522          INFOT = 8
00523          CALL SSYEVR( 'V', 'V', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
00524      $                M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00525          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00526          INFOT = 9
00527          CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 0, 1, 0.0,
00528      $                M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00529          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00530          INFOT = 10
00531 *
00532          CALL SSYEVR( 'V', 'I', 'U', 2, A, 2, 0.0E0, 0.0E0, 2, 1, 0.0,
00533      $                M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00534          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00535          INFOT = 15
00536          CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
00537      $                M, R, Z, 0, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
00538          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00539          INFOT = 18
00540          CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
00541      $                M, R, Z, 1, IW, Q, 26*N-1, IW( 2*N+1 ), 10*N,
00542      $                INFO )
00543          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00544          INFOT = 20
00545          CALL SSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0E0, 0.0E0, 1, 1, 0.0,
00546      $                M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N-1,
00547      $                INFO )
00548          CALL CHKXER( 'SSYEVR', INFOT, NOUT, LERR, OK )
00549          NT = NT + 11
00550 *
00551 *        SSYEV
00552 *
00553          SRNAMT = 'SSYEV '
00554          INFOT = 1
00555          CALL SSYEV( '/', 'U', 0, A, 1, X, W, 1, INFO )
00556          CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
00557          INFOT = 2
00558          CALL SSYEV( 'N', '/', 0, A, 1, X, W, 1, INFO )
00559          CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
00560          INFOT = 3
00561          CALL SSYEV( 'N', 'U', -1, A, 1, X, W, 1, INFO )
00562          CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
00563          INFOT = 5
00564          CALL SSYEV( 'N', 'U', 2, A, 1, X, W, 3, INFO )
00565          CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
00566          INFOT = 8
00567          CALL SSYEV( 'N', 'U', 1, A, 1, X, W, 1, INFO )
00568          CALL CHKXER( 'SSYEV ', INFOT, NOUT, LERR, OK )
00569          NT = NT + 5
00570 *
00571 *        SSYEVX
00572 *
00573          SRNAMT = 'SSYEVX'
00574          INFOT = 1
00575          CALL SSYEVX( '/', 'A', 'U', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00576      $                Z, 1, W, 1, IW, I3, INFO )
00577          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00578          INFOT = 2
00579          CALL SSYEVX( 'N', '/', 'U', 0, A, 1, 0.0, 1.0, 1, 0, 0.0, M, X,
00580      $                Z, 1, W, 1, IW, I3, INFO )
00581          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00582          INFOT = 3
00583          CALL SSYEVX( 'N', 'A', '/', 0, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00584      $                Z, 1, W, 1, IW, I3, INFO )
00585          INFOT = 4
00586          CALL SSYEVX( 'N', 'A', 'U', -1, A, 1, 0.0, 0.0, 0, 0, 0.0, M,
00587      $                X, Z, 1, W, 1, IW, I3, INFO )
00588          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00589          INFOT = 6
00590          CALL SSYEVX( 'N', 'A', 'U', 2, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00591      $                Z, 1, W, 16, IW, I3, INFO )
00592          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00593          INFOT = 8
00594          CALL SSYEVX( 'N', 'V', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00595      $                Z, 1, W, 8, IW, I3, INFO )
00596          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00597          INFOT = 9
00598          CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00599      $                Z, 1, W, 8, IW, I3, INFO )
00600          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00601          INFOT = 9
00602          CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 2, 1, 0.0, M, X,
00603      $                Z, 1, W, 8, IW, I3, INFO )
00604          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00605          INFOT = 10
00606          CALL SSYEVX( 'N', 'I', 'U', 2, A, 2, 0.0, 0.0, 2, 1, 0.0, M, X,
00607      $                Z, 1, W, 16, IW, I3, INFO )
00608          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00609          INFOT = 10
00610          CALL SSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0, 0.0, 1, 2, 0.0, M, X,
00611      $                Z, 1, W, 8, IW, I3, INFO )
00612          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00613          INFOT = 15
00614          CALL SSYEVX( 'V', 'A', 'U', 2, A, 2, 0.0, 0.0, 0, 0, 0.0, M, X,
00615      $                Z, 1, W, 16, IW, I3, INFO )
00616          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00617          INFOT = 17
00618          CALL SSYEVX( 'V', 'A', 'U', 1, A, 1, 0.0, 0.0, 0, 0, 0.0, M, X,
00619      $                Z, 1, W, 0, IW, I3, INFO )
00620          CALL CHKXER( 'SSYEVX', INFOT, NOUT, LERR, OK )
00621          NT = NT + 12
00622 *
00623 *        SSPEVD
00624 *
00625          SRNAMT = 'SSPEVD'
00626          INFOT = 1
00627          CALL SSPEVD( '/', 'U', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
00628          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00629          INFOT = 2
00630          CALL SSPEVD( 'N', '/', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
00631          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00632          INFOT = 3
00633          CALL SSPEVD( 'N', 'U', -1, A, X, Z, 1, W, 1, IW, 1, INFO )
00634          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00635          INFOT = 7
00636          CALL SSPEVD( 'V', 'U', 2, A, X, Z, 1, W, 23, IW, 12, INFO )
00637          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00638          INFOT = 9
00639          CALL SSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 0, IW, 1, INFO )
00640          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00641          INFOT = 9
00642          CALL SSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 3, IW, 1, INFO )
00643          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00644          INFOT = 9
00645          CALL SSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 16, IW, 12, INFO )
00646          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00647          INFOT = 11
00648          CALL SSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, IW, 0, INFO )
00649          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00650          INFOT = 11
00651          CALL SSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 4, IW, 0, INFO )
00652          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00653          INFOT = 11
00654          CALL SSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 23, IW, 11, INFO )
00655          CALL CHKXER( 'SSPEVD', INFOT, NOUT, LERR, OK )
00656          NT = NT + 10
00657 *
00658 *        SSPEV
00659 *
00660          SRNAMT = 'SSPEV '
00661          INFOT = 1
00662          CALL SSPEV( '/', 'U', 0, A, W, Z, 1, X, INFO )
00663          CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
00664          INFOT = 2
00665          CALL SSPEV( 'N', '/', 0, A, W, Z, 1, X, INFO )
00666          CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
00667          INFOT = 3
00668          CALL SSPEV( 'N', 'U', -1, A, W, Z, 1, X, INFO )
00669          CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
00670          INFOT = 7
00671          CALL SSPEV( 'V', 'U', 2, A, W, Z, 1, X, INFO )
00672          CALL CHKXER( 'SSPEV ', INFOT, NOUT, LERR, OK )
00673          NT = NT + 4
00674 *
00675 *        SSPEVX
00676 *
00677          SRNAMT = 'SSPEVX'
00678          INFOT = 1
00679          CALL SSPEVX( '/', 'A', 'U', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00680      $                1, W, IW, I3, INFO )
00681          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00682          INFOT = 2
00683          CALL SSPEVX( 'N', '/', 'U', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00684      $                1, W, IW, I3, INFO )
00685          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00686          INFOT = 3
00687          CALL SSPEVX( 'N', 'A', '/', 0, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00688      $                1, W, IW, I3, INFO )
00689          INFOT = 4
00690          CALL SSPEVX( 'N', 'A', 'U', -1, A, 0.0, 0.0, 0, 0, 0.0, M, X,
00691      $                Z, 1, W, IW, I3, INFO )
00692          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00693          INFOT = 7
00694          CALL SSPEVX( 'N', 'V', 'U', 1, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00695      $                1, W, IW, I3, INFO )
00696          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00697          INFOT = 8
00698          CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00699      $                1, W, IW, I3, INFO )
00700          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00701          INFOT = 8
00702          CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
00703      $                1, W, IW, I3, INFO )
00704          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00705          INFOT = 9
00706          CALL SSPEVX( 'N', 'I', 'U', 2, A, 0.0, 0.0, 2, 1, 0.0, M, X, Z,
00707      $                1, W, IW, I3, INFO )
00708          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00709          INFOT = 9
00710          CALL SSPEVX( 'N', 'I', 'U', 1, A, 0.0, 0.0, 1, 2, 0.0, M, X, Z,
00711      $                1, W, IW, I3, INFO )
00712          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00713          INFOT = 14
00714          CALL SSPEVX( 'V', 'A', 'U', 2, A, 0.0, 0.0, 0, 0, 0.0, M, X, Z,
00715      $                1, W, IW, I3, INFO )
00716          CALL CHKXER( 'SSPEVX', INFOT, NOUT, LERR, OK )
00717          NT = NT + 10
00718 *
00719 *     Test error exits for the SB path.
00720 *
00721       ELSE IF( LSAMEN( 2, C2, 'SB' ) ) THEN
00722 *
00723 *        SSBTRD
00724 *
00725          SRNAMT = 'SSBTRD'
00726          INFOT = 1
00727          CALL SSBTRD( '/', 'U', 0, 0, A, 1, D, E, Z, 1, W, INFO )
00728          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00729          INFOT = 2
00730          CALL SSBTRD( 'N', '/', 0, 0, A, 1, D, E, Z, 1, W, INFO )
00731          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00732          INFOT = 3
00733          CALL SSBTRD( 'N', 'U', -1, 0, A, 1, D, E, Z, 1, W, INFO )
00734          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00735          INFOT = 4
00736          CALL SSBTRD( 'N', 'U', 0, -1, A, 1, D, E, Z, 1, W, INFO )
00737          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00738          INFOT = 6
00739          CALL SSBTRD( 'N', 'U', 1, 1, A, 1, D, E, Z, 1, W, INFO )
00740          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00741          INFOT = 10
00742          CALL SSBTRD( 'V', 'U', 2, 0, A, 1, D, E, Z, 1, W, INFO )
00743          CALL CHKXER( 'SSBTRD', INFOT, NOUT, LERR, OK )
00744          NT = NT + 6
00745 *
00746 *        SSBEVD
00747 *
00748          SRNAMT = 'SSBEVD'
00749          INFOT = 1
00750          CALL SSBEVD( '/', 'U', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
00751          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00752          INFOT = 2
00753          CALL SSBEVD( 'N', '/', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
00754          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00755          INFOT = 3
00756          CALL SSBEVD( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, 1, IW, 1,
00757      $                INFO )
00758          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00759          INFOT = 4
00760          CALL SSBEVD( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, 1, IW, 1,
00761      $                INFO )
00762          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00763          INFOT = 6
00764          CALL SSBEVD( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, 4, IW, 1, INFO )
00765          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00766          INFOT = 9
00767          CALL SSBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 1, W, 25, IW, 12,
00768      $                INFO )
00769          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00770          INFOT = 11
00771          CALL SSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 0, IW, 1, INFO )
00772          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00773          INFOT = 11
00774          CALL SSBEVD( 'N', 'U', 2, 0, A, 1, X, Z, 1, W, 3, IW, 1, INFO )
00775          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00776          INFOT = 11
00777          CALL SSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 18, IW, 12,
00778      $                INFO )
00779          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00780          INFOT = 13
00781          CALL SSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 1, IW, 0, INFO )
00782          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00783          INFOT = 13
00784          CALL SSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 25, IW, 11,
00785      $                INFO )
00786          CALL CHKXER( 'SSBEVD', INFOT, NOUT, LERR, OK )
00787          NT = NT + 11
00788 *
00789 *        SSBEV
00790 *
00791          SRNAMT = 'SSBEV '
00792          INFOT = 1
00793          CALL SSBEV( '/', 'U', 0, 0, A, 1, X, Z, 1, W, INFO )
00794          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00795          INFOT = 2
00796          CALL SSBEV( 'N', '/', 0, 0, A, 1, X, Z, 1, W, INFO )
00797          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00798          INFOT = 3
00799          CALL SSBEV( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, INFO )
00800          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00801          INFOT = 4
00802          CALL SSBEV( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, INFO )
00803          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00804          INFOT = 6
00805          CALL SSBEV( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, INFO )
00806          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00807          INFOT = 9
00808          CALL SSBEV( 'V', 'U', 2, 0, A, 1, X, Z, 1, W, INFO )
00809          CALL CHKXER( 'SSBEV ', INFOT, NOUT, LERR, OK )
00810          NT = NT + 6
00811 *
00812 *        SSBEVX
00813 *
00814          SRNAMT = 'SSBEVX'
00815          INFOT = 1
00816          CALL SSBEVX( '/', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00817      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00818          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00819          INFOT = 2
00820          CALL SSBEVX( 'N', '/', 'U', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00821      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00822          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00823          INFOT = 3
00824          CALL SSBEVX( 'N', 'A', '/', 0, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00825      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00826          INFOT = 4
00827          CALL SSBEVX( 'N', 'A', 'U', -1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00828      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00829          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00830          INFOT = 5
00831          CALL SSBEVX( 'N', 'A', 'U', 0, -1, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00832      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00833          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00834          INFOT = 7
00835          CALL SSBEVX( 'N', 'A', 'U', 2, 1, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00836      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00837          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00838          INFOT = 9
00839          CALL SSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00840      $                0.0, M, X, Z, 2, W, IW, I3, INFO )
00841          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00842          INFOT = 11
00843          CALL SSBEVX( 'N', 'V', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00844      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00845          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00846          INFOT = 12
00847          CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 0, 0,
00848      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00849          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00850          INFOT = 12
00851          CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 2, 1,
00852      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00853          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00854          INFOT = 13
00855          CALL SSBEVX( 'N', 'I', 'U', 2, 0, A, 1, Q, 1, 0.0, 0.0, 2, 1,
00856      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00857          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00858          INFOT = 13
00859          CALL SSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0, 0.0, 1, 2,
00860      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00861          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00862          INFOT = 18
00863          CALL SSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 2, 0.0, 0.0, 0, 0,
00864      $                0.0, M, X, Z, 1, W, IW, I3, INFO )
00865          CALL CHKXER( 'SSBEVX', INFOT, NOUT, LERR, OK )
00866          NT = NT + 13
00867       END IF
00868 *
00869 *     Print a summary line.
00870 *
00871       IF( OK ) THEN
00872          WRITE( NOUT, FMT = 9999 )PATH, NT
00873       ELSE
00874          WRITE( NOUT, FMT = 9998 )PATH
00875       END IF
00876 *
00877  9999 FORMAT( 1X, A3, ' routines passed the tests of the error exits',
00878      $      ' (', I3, ' tests done)' )
00879  9998 FORMAT( ' *** ', A3, ' routines failed the tests of the error ',
00880      $      'exits ***' )
00881 *
00882       RETURN
00883 *
00884 *     End of SERRST
00885 *
00886       END
 All Files Functions