1*> \brief \b SERRVXX 2* 3* =========== DOCUMENTATION =========== 4* 5* Online html documentation available at 6* http://www.netlib.org/lapack/explore-html/ 7* 8* Definition: 9* =========== 10* 11* SUBROUTINE SERRVX( PATH, NUNIT ) 12* 13* .. Scalar Arguments .. 14* CHARACTER*3 PATH 15* INTEGER NUNIT 16* .. 17* 18* 19*> \par Purpose: 20* ============= 21*> 22*> \verbatim 23*> 24*> SERRVX tests the error exits for the REAL driver routines 25*> for solving linear systems of equations. 26*> \endverbatim 27* 28* Arguments: 29* ========== 30* 31*> \param[in] PATH 32*> \verbatim 33*> PATH is CHARACTER*3 34*> The LAPACK path name for the routines to be tested. 35*> \endverbatim 36*> 37*> \param[in] NUNIT 38*> \verbatim 39*> NUNIT is INTEGER 40*> The unit number for output. 41*> \endverbatim 42* 43* Authors: 44* ======== 45* 46*> \author Univ. of Tennessee 47*> \author Univ. of California Berkeley 48*> \author Univ. of Colorado Denver 49*> \author NAG Ltd. 50* 51*> \date November 2011 52* 53*> \ingroup single_lin 54* 55* ===================================================================== 56 SUBROUTINE SERRVX( PATH, NUNIT ) 57* 58* -- LAPACK test routine (version 3.4.0) -- 59* -- LAPACK is a software package provided by Univ. of Tennessee, -- 60* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 61* November 2011 62* 63* .. Scalar Arguments .. 64 CHARACTER*3 PATH 65 INTEGER NUNIT 66* .. 67* 68* ===================================================================== 69* 70* .. Parameters .. 71 INTEGER NMAX 72 PARAMETER ( NMAX = 4 ) 73* .. 74* .. Local Scalars .. 75 CHARACTER EQ 76 CHARACTER*2 C2 77 INTEGER I, INFO, J, N_ERR_BNDS, NPARAMS 78 REAL RCOND, RPVGRW, BERR 79* .. 80* .. Local Arrays .. 81 INTEGER IP( NMAX ), IW( NMAX ) 82 REAL A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ), 83 $ C( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ), 84 $ W( 2*NMAX ), X( NMAX ), ERR_BNDS_N( NMAX, 3 ), 85 $ ERR_BNDS_C( NMAX, 3 ), PARAMS( 1 ) 86* .. 87* .. External Functions .. 88 LOGICAL LSAMEN 89 EXTERNAL LSAMEN 90* .. 91* .. External Subroutines .. 92 EXTERNAL CHKXER, SGBSV, SGBSVX, SGESV, SGESVX, SGTSV, 93 $ SGTSVX, SPBSV, SPBSVX, SPOSV, SPOSVX, SPPSV, 94 $ SPPSVX, SPTSV, SPTSVX, SSPSV, SSPSVX, SSYSV, 95 $ SSYSVX, SGESVXX, SSYSVXX, SPOSVXX, SGBSVXX 96* .. 97* .. Scalars in Common .. 98 LOGICAL LERR, OK 99 CHARACTER*32 SRNAMT 100 INTEGER INFOT, NOUT 101* .. 102* .. Common blocks .. 103 COMMON / INFOC / INFOT, NOUT, OK, LERR 104 COMMON / SRNAMC / SRNAMT 105* .. 106* .. Intrinsic Functions .. 107 INTRINSIC REAL 108* .. 109* .. Executable Statements .. 110* 111 NOUT = NUNIT 112 WRITE( NOUT, FMT = * ) 113 C2 = PATH( 2: 3 ) 114* 115* Set the variables to innocuous values. 116* 117 DO 20 J = 1, NMAX 118 DO 10 I = 1, NMAX 119 A( I, J ) = 1. / REAL( I+J ) 120 AF( I, J ) = 1. / REAL( I+J ) 121 10 CONTINUE 122 B( J ) = 0. 123 R1( J ) = 0. 124 R2( J ) = 0. 125 W( J ) = 0. 126 X( J ) = 0. 127 C( J ) = 0. 128 R( J ) = 0. 129 IP( J ) = J 130 20 CONTINUE 131 EQ = ' ' 132 OK = .TRUE. 133* 134 IF( LSAMEN( 2, C2, 'GE' ) ) THEN 135* 136* SGESV 137* 138 SRNAMT = 'SGESV ' 139 INFOT = 1 140 CALL SGESV( -1, 0, A, 1, IP, B, 1, INFO ) 141 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK ) 142 INFOT = 2 143 CALL SGESV( 0, -1, A, 1, IP, B, 1, INFO ) 144 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK ) 145 INFOT = 4 146 CALL SGESV( 2, 1, A, 1, IP, B, 2, INFO ) 147 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK ) 148 INFOT = 7 149 CALL SGESV( 2, 1, A, 2, IP, B, 1, INFO ) 150 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK ) 151* 152* SGESVX 153* 154 SRNAMT = 'SGESVX' 155 INFOT = 1 156 CALL SGESVX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 157 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 158 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 159 INFOT = 2 160 CALL SGESVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 161 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 162 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 163 INFOT = 3 164 CALL SGESVX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 165 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 166 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 167 INFOT = 4 168 CALL SGESVX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B, 1, 169 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 170 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 171 INFOT = 6 172 CALL SGESVX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B, 2, 173 $ X, 2, RCOND, R1, R2, W, IW, INFO ) 174 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 175 INFOT = 8 176 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B, 2, 177 $ X, 2, RCOND, R1, R2, W, IW, INFO ) 178 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 179 INFOT = 10 180 EQ = '/' 181 CALL SGESVX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 182 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 183 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 184 INFOT = 11 185 EQ = 'R' 186 CALL SGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 187 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 188 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 189 INFOT = 12 190 EQ = 'C' 191 CALL SGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 192 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 193 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 194 INFOT = 14 195 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 1, 196 $ X, 2, RCOND, R1, R2, W, IW, INFO ) 197 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 198 INFOT = 16 199 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 2, 200 $ X, 1, RCOND, R1, R2, W, IW, INFO ) 201 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK ) 202* 203* SGESVXX 204* 205 N_ERR_BNDS = 3 206 NPARAMS = 1 207 SRNAMT = 'SGESVXX' 208 INFOT = 1 209 CALL SGESVXX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 210 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 211 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 212 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 213 INFOT = 2 214 CALL SGESVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 215 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 216 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 217 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 218 INFOT = 3 219 CALL SGESVXX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 220 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 221 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 222 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 223 INFOT = 4 224 CALL SGESVXX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B, 1, 225 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 226 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 227 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 228 INFOT = 6 229 CALL SGESVXX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B, 2, 230 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 231 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 232 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 233 INFOT = 8 234 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B, 2, 235 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 236 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 237 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 238 INFOT = 10 239 EQ = '/' 240 CALL SGESVXX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 241 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 242 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 243 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 244 INFOT = 11 245 EQ = 'R' 246 CALL SGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 247 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 248 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 249 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 250 INFOT = 12 251 EQ = 'C' 252 CALL SGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1, 253 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 254 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 255 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 256 INFOT = 14 257 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 1, 258 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 259 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 260 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 261 INFOT = 16 262 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 2, 263 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 264 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 265 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK ) 266* 267 ELSE IF( LSAMEN( 2, C2, 'GB' ) ) THEN 268* 269* SGBSV 270* 271 SRNAMT = 'SGBSV ' 272 INFOT = 1 273 CALL SGBSV( -1, 0, 0, 0, A, 1, IP, B, 1, INFO ) 274 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 275 INFOT = 2 276 CALL SGBSV( 1, -1, 0, 0, A, 1, IP, B, 1, INFO ) 277 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 278 INFOT = 3 279 CALL SGBSV( 1, 0, -1, 0, A, 1, IP, B, 1, INFO ) 280 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 281 INFOT = 4 282 CALL SGBSV( 0, 0, 0, -1, A, 1, IP, B, 1, INFO ) 283 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 284 INFOT = 6 285 CALL SGBSV( 1, 1, 1, 0, A, 3, IP, B, 1, INFO ) 286 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 287 INFOT = 9 288 CALL SGBSV( 2, 0, 0, 0, A, 1, IP, B, 1, INFO ) 289 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK ) 290* 291* SGBSVX 292* 293 SRNAMT = 'SGBSVX' 294 INFOT = 1 295 CALL SGBSVX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 296 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 297 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 298 INFOT = 2 299 CALL SGBSVX( 'N', '/', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 300 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 301 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 302 INFOT = 3 303 CALL SGBSVX( 'N', 'N', -1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 304 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 305 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 306 INFOT = 4 307 CALL SGBSVX( 'N', 'N', 1, -1, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 308 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 309 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 310 INFOT = 5 311 CALL SGBSVX( 'N', 'N', 1, 0, -1, 0, A, 1, AF, 1, IP, EQ, R, C, 312 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 313 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 314 INFOT = 6 315 CALL SGBSVX( 'N', 'N', 0, 0, 0, -1, A, 1, AF, 1, IP, EQ, R, C, 316 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 317 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 318 INFOT = 8 319 CALL SGBSVX( 'N', 'N', 1, 1, 1, 0, A, 2, AF, 4, IP, EQ, R, C, 320 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 321 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 322 INFOT = 10 323 CALL SGBSVX( 'N', 'N', 1, 1, 1, 0, A, 3, AF, 3, IP, EQ, R, C, 324 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 325 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 326 INFOT = 12 327 EQ = '/' 328 CALL SGBSVX( 'F', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 329 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 330 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 331 INFOT = 13 332 EQ = 'R' 333 CALL SGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 334 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 335 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 336 INFOT = 14 337 EQ = 'C' 338 CALL SGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 339 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 340 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 341 INFOT = 16 342 CALL SGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 343 $ B, 1, X, 2, RCOND, R1, R2, W, IW, INFO ) 344 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 345 INFOT = 18 346 CALL SGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 347 $ B, 2, X, 1, RCOND, R1, R2, W, IW, INFO ) 348 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK ) 349* 350* SGBSVXX 351* 352 N_ERR_BNDS = 3 353 NPARAMS = 1 354 SRNAMT = 'SGBSVXX' 355 INFOT = 1 356 CALL SGBSVXX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C, 357 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 358 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 359 $ INFO ) 360 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 361 INFOT = 2 362 CALL SGBSVXX( 'N', '/', 0, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C, 363 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 364 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 365 $ INFO ) 366 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 367 INFOT = 3 368 CALL SGBSVXX( 'N', 'N', -1, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C, 369 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 370 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 371 $ INFO ) 372 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 373 INFOT = 4 374 CALL SGBSVXX( 'N', 'N', 2, -1, 1, 0, A, 1, AF, 1, IP, EQ, 375 $ R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 376 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 377 $ INFO ) 378 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 379 INFOT = 5 380 CALL SGBSVXX( 'N', 'N', 2, 1, -1, 0, A, 1, AF, 1, IP, EQ, 381 $ R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 382 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 383 $ INFO ) 384 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 385 INFOT = 6 386 CALL SGBSVXX( 'N', 'N', 0, 1, 1, -1, A, 1, AF, 1, IP, EQ, R, C, 387 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 388 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 389 $ INFO ) 390 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 391 INFOT = 8 392 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 2, AF, 2, IP, EQ, R, C, 393 $ B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, 394 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 395 $ INFO ) 396 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 397 INFOT = 10 398 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 3, IP, EQ, R, C, 399 $ B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, 400 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 401 $ INFO ) 402 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 403 INFOT = 12 404 EQ = '/' 405 CALL SGBSVXX( 'F', 'N', 0, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C, 406 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 407 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 408 $ INFO ) 409 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 410 INFOT = 13 411 EQ = 'R' 412 CALL SGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C, 413 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 414 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 415 $ INFO ) 416 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 417 INFOT = 14 418 EQ = 'C' 419 CALL SGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C, 420 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 421 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 422 $ INFO ) 423 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 424 INFOT = 15 425 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C, 426 $ B, 1, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, 427 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 428 $ INFO ) 429 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 430 INFOT = 16 431 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C, 432 $ B, 2, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, 433 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW, 434 $ INFO ) 435 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK ) 436* 437 ELSE IF( LSAMEN( 2, C2, 'GT' ) ) THEN 438* 439* SGTSV 440* 441 SRNAMT = 'SGTSV ' 442 INFOT = 1 443 CALL SGTSV( -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1, 444 $ INFO ) 445 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK ) 446 INFOT = 2 447 CALL SGTSV( 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1, 448 $ INFO ) 449 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK ) 450 INFOT = 7 451 CALL SGTSV( 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1, INFO ) 452 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK ) 453* 454* SGTSVX 455* 456 SRNAMT = 'SGTSVX' 457 INFOT = 1 458 CALL SGTSVX( '/', 'N', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 459 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 460 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 461 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 462 INFOT = 2 463 CALL SGTSVX( 'N', '/', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 464 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 465 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 466 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 467 INFOT = 3 468 CALL SGTSVX( 'N', 'N', -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 469 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 470 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 471 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 472 INFOT = 4 473 CALL SGTSVX( 'N', 'N', 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 474 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 475 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO ) 476 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 477 INFOT = 14 478 CALL SGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 479 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 480 $ IP, B, 1, X, 2, RCOND, R1, R2, W, IW, INFO ) 481 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 482 INFOT = 16 483 CALL SGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), 484 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ), 485 $ IP, B, 2, X, 1, RCOND, R1, R2, W, IW, INFO ) 486 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK ) 487* 488 ELSE IF( LSAMEN( 2, C2, 'PO' ) ) THEN 489* 490* SPOSV 491* 492 SRNAMT = 'SPOSV ' 493 INFOT = 1 494 CALL SPOSV( '/', 0, 0, A, 1, B, 1, INFO ) 495 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK ) 496 INFOT = 2 497 CALL SPOSV( 'U', -1, 0, A, 1, B, 1, INFO ) 498 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK ) 499 INFOT = 3 500 CALL SPOSV( 'U', 0, -1, A, 1, B, 1, INFO ) 501 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK ) 502 INFOT = 5 503 CALL SPOSV( 'U', 2, 0, A, 1, B, 2, INFO ) 504 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK ) 505 INFOT = 7 506 CALL SPOSV( 'U', 2, 0, A, 2, B, 1, INFO ) 507 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK ) 508* 509* SPOSVX 510* 511 SRNAMT = 'SPOSVX' 512 INFOT = 1 513 CALL SPOSVX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 514 $ RCOND, R1, R2, W, IW, INFO ) 515 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 516 INFOT = 2 517 CALL SPOSVX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 518 $ RCOND, R1, R2, W, IW, INFO ) 519 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 520 INFOT = 3 521 CALL SPOSVX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 522 $ RCOND, R1, R2, W, IW, INFO ) 523 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 524 INFOT = 4 525 CALL SPOSVX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1, 526 $ RCOND, R1, R2, W, IW, INFO ) 527 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 528 INFOT = 6 529 CALL SPOSVX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2, 530 $ RCOND, R1, R2, W, IW, INFO ) 531 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 532 INFOT = 8 533 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2, 534 $ RCOND, R1, R2, W, IW, INFO ) 535 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 536 INFOT = 9 537 EQ = '/' 538 CALL SPOSVX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 539 $ RCOND, R1, R2, W, IW, INFO ) 540 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 541 INFOT = 10 542 EQ = 'Y' 543 CALL SPOSVX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 544 $ RCOND, R1, R2, W, IW, INFO ) 545 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 546 INFOT = 12 547 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2, 548 $ RCOND, R1, R2, W, IW, INFO ) 549 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 550 INFOT = 14 551 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1, 552 $ RCOND, R1, R2, W, IW, INFO ) 553 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK ) 554* 555* SPOSVXX 556* 557 N_ERR_BNDS = 3 558 NPARAMS = 1 559 SRNAMT = 'SPOSVXX' 560 INFOT = 1 561 CALL SPOSVXX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 562 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 563 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 564 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 565 INFOT = 2 566 CALL SPOSVXX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 567 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 568 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 569 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 570 INFOT = 3 571 CALL SPOSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 572 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 573 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 574 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 575 INFOT = 4 576 CALL SPOSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1, 577 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 578 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 579 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 580 INFOT = 6 581 CALL SPOSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2, 582 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 583 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 584 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 585 INFOT = 8 586 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2, 587 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 588 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 589 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 590 INFOT = 9 591 EQ = '/' 592 CALL SPOSVXX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 593 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 594 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 595 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 596 INFOT = 10 597 EQ = 'Y' 598 CALL SPOSVXX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 599 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 600 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 601 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 602 INFOT = 12 603 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2, 604 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 605 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 606 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 607 INFOT = 14 608 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1, 609 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 610 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 611 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK ) 612* 613 ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN 614* 615* SPPSV 616* 617 SRNAMT = 'SPPSV ' 618 INFOT = 1 619 CALL SPPSV( '/', 0, 0, A, B, 1, INFO ) 620 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK ) 621 INFOT = 2 622 CALL SPPSV( 'U', -1, 0, A, B, 1, INFO ) 623 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK ) 624 INFOT = 3 625 CALL SPPSV( 'U', 0, -1, A, B, 1, INFO ) 626 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK ) 627 INFOT = 6 628 CALL SPPSV( 'U', 2, 0, A, B, 1, INFO ) 629 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK ) 630* 631* SPPSVX 632* 633 SRNAMT = 'SPPSVX' 634 INFOT = 1 635 CALL SPPSVX( '/', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND, 636 $ R1, R2, W, IW, INFO ) 637 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 638 INFOT = 2 639 CALL SPPSVX( 'N', '/', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND, 640 $ R1, R2, W, IW, INFO ) 641 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 642 INFOT = 3 643 CALL SPPSVX( 'N', 'U', -1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND, 644 $ R1, R2, W, IW, INFO ) 645 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 646 INFOT = 4 647 CALL SPPSVX( 'N', 'U', 0, -1, A, AF, EQ, C, B, 1, X, 1, RCOND, 648 $ R1, R2, W, IW, INFO ) 649 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 650 INFOT = 7 651 EQ = '/' 652 CALL SPPSVX( 'F', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND, 653 $ R1, R2, W, IW, INFO ) 654 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 655 INFOT = 8 656 EQ = 'Y' 657 CALL SPPSVX( 'F', 'U', 1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND, 658 $ R1, R2, W, IW, INFO ) 659 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 660 INFOT = 10 661 CALL SPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 1, X, 2, RCOND, 662 $ R1, R2, W, IW, INFO ) 663 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 664 INFOT = 12 665 CALL SPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 2, X, 1, RCOND, 666 $ R1, R2, W, IW, INFO ) 667 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK ) 668* 669 ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN 670* 671* SPBSV 672* 673 SRNAMT = 'SPBSV ' 674 INFOT = 1 675 CALL SPBSV( '/', 0, 0, 0, A, 1, B, 1, INFO ) 676 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 677 INFOT = 2 678 CALL SPBSV( 'U', -1, 0, 0, A, 1, B, 1, INFO ) 679 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 680 INFOT = 3 681 CALL SPBSV( 'U', 1, -1, 0, A, 1, B, 1, INFO ) 682 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 683 INFOT = 4 684 CALL SPBSV( 'U', 0, 0, -1, A, 1, B, 1, INFO ) 685 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 686 INFOT = 6 687 CALL SPBSV( 'U', 1, 1, 0, A, 1, B, 2, INFO ) 688 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 689 INFOT = 8 690 CALL SPBSV( 'U', 2, 0, 0, A, 1, B, 1, INFO ) 691 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK ) 692* 693* SPBSVX 694* 695 SRNAMT = 'SPBSVX' 696 INFOT = 1 697 CALL SPBSVX( '/', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 698 $ RCOND, R1, R2, W, IW, INFO ) 699 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 700 INFOT = 2 701 CALL SPBSVX( 'N', '/', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 702 $ RCOND, R1, R2, W, IW, INFO ) 703 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 704 INFOT = 3 705 CALL SPBSVX( 'N', 'U', -1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 706 $ 1, RCOND, R1, R2, W, IW, INFO ) 707 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 708 INFOT = 4 709 CALL SPBSVX( 'N', 'U', 1, -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 710 $ 1, RCOND, R1, R2, W, IW, INFO ) 711 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 712 INFOT = 5 713 CALL SPBSVX( 'N', 'U', 0, 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 714 $ 1, RCOND, R1, R2, W, IW, INFO ) 715 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 716 INFOT = 7 717 CALL SPBSVX( 'N', 'U', 1, 1, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2, 718 $ RCOND, R1, R2, W, IW, INFO ) 719 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 720 INFOT = 9 721 CALL SPBSVX( 'N', 'U', 1, 1, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2, 722 $ RCOND, R1, R2, W, IW, INFO ) 723 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 724 INFOT = 10 725 EQ = '/' 726 CALL SPBSVX( 'F', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 727 $ RCOND, R1, R2, W, IW, INFO ) 728 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 729 INFOT = 11 730 EQ = 'Y' 731 CALL SPBSVX( 'F', 'U', 1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1, 732 $ RCOND, R1, R2, W, IW, INFO ) 733 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 734 INFOT = 13 735 CALL SPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 2, 736 $ RCOND, R1, R2, W, IW, INFO ) 737 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 738 INFOT = 15 739 CALL SPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 2, X, 1, 740 $ RCOND, R1, R2, W, IW, INFO ) 741 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK ) 742* 743 ELSE IF( LSAMEN( 2, C2, 'PT' ) ) THEN 744* 745* SPTSV 746* 747 SRNAMT = 'SPTSV ' 748 INFOT = 1 749 CALL SPTSV( -1, 0, A( 1, 1 ), A( 1, 2 ), B, 1, INFO ) 750 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK ) 751 INFOT = 2 752 CALL SPTSV( 0, -1, A( 1, 1 ), A( 1, 2 ), B, 1, INFO ) 753 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK ) 754 INFOT = 6 755 CALL SPTSV( 2, 0, A( 1, 1 ), A( 1, 2 ), B, 1, INFO ) 756 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK ) 757* 758* SPTSVX 759* 760 SRNAMT = 'SPTSVX' 761 INFOT = 1 762 CALL SPTSVX( '/', 0, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ), 763 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO ) 764 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK ) 765 INFOT = 2 766 CALL SPTSVX( 'N', -1, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ), 767 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO ) 768 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK ) 769 INFOT = 3 770 CALL SPTSVX( 'N', 0, -1, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ), 771 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO ) 772 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK ) 773 INFOT = 9 774 CALL SPTSVX( 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ), 775 $ AF( 1, 2 ), B, 1, X, 2, RCOND, R1, R2, W, INFO ) 776 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK ) 777 INFOT = 11 778 CALL SPTSVX( 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ), 779 $ AF( 1, 2 ), B, 2, X, 1, RCOND, R1, R2, W, INFO ) 780 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK ) 781* 782 ELSE IF( LSAMEN( 2, C2, 'SY' ) ) THEN 783* 784* SSYSV 785* 786 SRNAMT = 'SSYSV ' 787 INFOT = 1 788 CALL SSYSV( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO ) 789 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK ) 790 INFOT = 2 791 CALL SSYSV( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO ) 792 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK ) 793 INFOT = 3 794 CALL SSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO ) 795 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK ) 796 INFOT = 8 797 CALL SSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO ) 798 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK ) 799* 800* SSYSVX 801* 802 SRNAMT = 'SSYSVX' 803 INFOT = 1 804 CALL SSYSVX( '/', 'U', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1, 805 $ RCOND, R1, R2, W, 1, IW, INFO ) 806 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 807 INFOT = 2 808 CALL SSYSVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1, 809 $ RCOND, R1, R2, W, 1, IW, INFO ) 810 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 811 INFOT = 3 812 CALL SSYSVX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, B, 1, X, 1, 813 $ RCOND, R1, R2, W, 1, IW, INFO ) 814 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 815 INFOT = 4 816 CALL SSYSVX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, B, 1, X, 1, 817 $ RCOND, R1, R2, W, 1, IW, INFO ) 818 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 819 INFOT = 6 820 CALL SSYSVX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, B, 2, X, 2, 821 $ RCOND, R1, R2, W, 4, IW, INFO ) 822 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 823 INFOT = 8 824 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, B, 2, X, 2, 825 $ RCOND, R1, R2, W, 4, IW, INFO ) 826 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 827 INFOT = 11 828 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 1, X, 2, 829 $ RCOND, R1, R2, W, 4, IW, INFO ) 830 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 831 INFOT = 13 832 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 1, 833 $ RCOND, R1, R2, W, 4, IW, INFO ) 834 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 835 INFOT = 18 836 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 2, 837 $ RCOND, R1, R2, W, 3, IW, INFO ) 838 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK ) 839* 840* SSYSVXX 841* 842 N_ERR_BNDS = 3 843 NPARAMS = 1 844 SRNAMT = 'SSYSVXX' 845 INFOT = 1 846 EQ = 'N' 847 CALL SSYSVXX( '/', 'U', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X, 848 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 849 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 850 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 851 INFOT = 2 852 CALL SSYSVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X, 853 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 854 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 855 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 856 INFOT = 3 857 CALL SSYSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X, 858 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 859 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 860 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 861 INFOT = 4 862 EQ = '/' 863 CALL SSYSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, EQ, R, B, 1, X, 864 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 865 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 866 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 867 EQ = 'Y' 868 INFOT = 6 869 CALL SSYSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, EQ, R, B, 2, X, 870 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 871 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 872 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 873 INFOT = 8 874 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, EQ, R, B, 2, X, 875 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 876 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 877 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 878 INFOT = 12 879 EQ = 'N' 880 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 1, X, 881 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 882 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 883 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 884 INFOT = 14 885 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 2, X, 886 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N, 887 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO ) 888 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK ) 889* 890 ELSE IF( LSAMEN( 2, C2, 'SP' ) ) THEN 891* 892* SSPSV 893* 894 SRNAMT = 'SSPSV ' 895 INFOT = 1 896 CALL SSPSV( '/', 0, 0, A, IP, B, 1, INFO ) 897 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK ) 898 INFOT = 2 899 CALL SSPSV( 'U', -1, 0, A, IP, B, 1, INFO ) 900 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK ) 901 INFOT = 3 902 CALL SSPSV( 'U', 0, -1, A, IP, B, 1, INFO ) 903 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK ) 904 INFOT = 7 905 CALL SSPSV( 'U', 2, 0, A, IP, B, 1, INFO ) 906 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK ) 907* 908* SSPSVX 909* 910 SRNAMT = 'SSPSVX' 911 INFOT = 1 912 CALL SSPSVX( '/', 'U', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1, 913 $ R2, W, IW, INFO ) 914 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 915 INFOT = 2 916 CALL SSPSVX( 'N', '/', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1, 917 $ R2, W, IW, INFO ) 918 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 919 INFOT = 3 920 CALL SSPSVX( 'N', 'U', -1, 0, A, AF, IP, B, 1, X, 1, RCOND, R1, 921 $ R2, W, IW, INFO ) 922 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 923 INFOT = 4 924 CALL SSPSVX( 'N', 'U', 0, -1, A, AF, IP, B, 1, X, 1, RCOND, R1, 925 $ R2, W, IW, INFO ) 926 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 927 INFOT = 9 928 CALL SSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 1, X, 2, RCOND, R1, 929 $ R2, W, IW, INFO ) 930 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 931 INFOT = 11 932 CALL SSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 2, X, 1, RCOND, R1, 933 $ R2, W, IW, INFO ) 934 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK ) 935 END IF 936* 937* Print a summary line. 938* 939 IF( OK ) THEN 940 WRITE( NOUT, FMT = 9999 )PATH 941 ELSE 942 WRITE( NOUT, FMT = 9998 )PATH 943 END IF 944* 945 9999 FORMAT( 1X, A3, ' drivers passed the tests of the error exits' ) 946 9998 FORMAT( ' *** ', A3, ' drivers failed the tests of the error ', 947 $ 'exits ***' ) 948* 949 RETURN 950* 951* End of SERRVX 952* 953 END 954