LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ schke()

subroutine schke ( integer  ISNUM,
character*6  SRNAMT,
integer  NOUT 
)

Definition at line 2326 of file sblat2.f.

2326 *
2327 * Tests the error exits from the Level 2 Blas.
2328 * Requires a special version of the error-handling routine XERBLA.
2329 * ALPHA, BETA, A, X and Y should not need to be defined.
2330 *
2331 * Auxiliary routine for test program for Level 2 Blas.
2332 *
2333 * -- Written on 10-August-1987.
2334 * Richard Hanson, Sandia National Labs.
2335 * Jeremy Du Croz, NAG Central Office.
2336 *
2337 * .. Scalar Arguments ..
2338  INTEGER isnum, nout
2339  CHARACTER*6 srnamt
2340 * .. Scalars in Common ..
2341  INTEGER infot, noutc
2342  LOGICAL lerr, ok
2343 * .. Local Scalars ..
2344  REAL alpha, beta
2345 * .. Local Arrays ..
2346  REAL a( 1, 1 ), x( 1 ), y( 1 )
2347 * .. External Subroutines ..
2348  EXTERNAL chkxer, sgbmv, sgemv, sger, ssbmv, sspmv, sspr,
2349  $ sspr2, ssymv, ssyr, ssyr2, stbmv, stbsv, stpmv,
2350  $ stpsv, strmv, strsv
2351 * .. Common blocks ..
2352  COMMON /infoc/infot, noutc, ok, lerr
2353 * .. Executable Statements ..
2354 * OK is set to .FALSE. by the special version of XERBLA or by CHKXER
2355 * if anything is wrong.
2356  ok = .true.
2357 * LERR is set to .TRUE. by the special version of XERBLA each time
2358 * it is called, and is then tested and re-set by CHKXER.
2359  lerr = .false.
2360  GO TO ( 10, 20, 30, 40, 50, 60, 70, 80,
2361  $ 90, 100, 110, 120, 130, 140, 150,
2362  $ 160 )isnum
2363  10 infot = 1
2364  CALL sgemv( '/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2365  CALL chkxer( srnamt, infot, nout, lerr, ok )
2366  infot = 2
2367  CALL sgemv( 'N', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2368  CALL chkxer( srnamt, infot, nout, lerr, ok )
2369  infot = 3
2370  CALL sgemv( 'N', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2371  CALL chkxer( srnamt, infot, nout, lerr, ok )
2372  infot = 6
2373  CALL sgemv( 'N', 2, 0, alpha, a, 1, x, 1, beta, y, 1 )
2374  CALL chkxer( srnamt, infot, nout, lerr, ok )
2375  infot = 8
2376  CALL sgemv( 'N', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2377  CALL chkxer( srnamt, infot, nout, lerr, ok )
2378  infot = 11
2379  CALL sgemv( 'N', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2380  CALL chkxer( srnamt, infot, nout, lerr, ok )
2381  GO TO 170
2382  20 infot = 1
2383  CALL sgbmv( '/', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2384  CALL chkxer( srnamt, infot, nout, lerr, ok )
2385  infot = 2
2386  CALL sgbmv( 'N', -1, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2387  CALL chkxer( srnamt, infot, nout, lerr, ok )
2388  infot = 3
2389  CALL sgbmv( 'N', 0, -1, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2390  CALL chkxer( srnamt, infot, nout, lerr, ok )
2391  infot = 4
2392  CALL sgbmv( 'N', 0, 0, -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2393  CALL chkxer( srnamt, infot, nout, lerr, ok )
2394  infot = 5
2395  CALL sgbmv( 'N', 2, 0, 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2396  CALL chkxer( srnamt, infot, nout, lerr, ok )
2397  infot = 8
2398  CALL sgbmv( 'N', 0, 0, 1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2399  CALL chkxer( srnamt, infot, nout, lerr, ok )
2400  infot = 10
2401  CALL sgbmv( 'N', 0, 0, 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2402  CALL chkxer( srnamt, infot, nout, lerr, ok )
2403  infot = 13
2404  CALL sgbmv( 'N', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2405  CALL chkxer( srnamt, infot, nout, lerr, ok )
2406  GO TO 170
2407  30 infot = 1
2408  CALL ssymv( '/', 0, alpha, a, 1, x, 1, beta, y, 1 )
2409  CALL chkxer( srnamt, infot, nout, lerr, ok )
2410  infot = 2
2411  CALL ssymv( 'U', -1, alpha, a, 1, x, 1, beta, y, 1 )
2412  CALL chkxer( srnamt, infot, nout, lerr, ok )
2413  infot = 5
2414  CALL ssymv( 'U', 2, alpha, a, 1, x, 1, beta, y, 1 )
2415  CALL chkxer( srnamt, infot, nout, lerr, ok )
2416  infot = 7
2417  CALL ssymv( 'U', 0, alpha, a, 1, x, 0, beta, y, 1 )
2418  CALL chkxer( srnamt, infot, nout, lerr, ok )
2419  infot = 10
2420  CALL ssymv( 'U', 0, alpha, a, 1, x, 1, beta, y, 0 )
2421  CALL chkxer( srnamt, infot, nout, lerr, ok )
2422  GO TO 170
2423  40 infot = 1
2424  CALL ssbmv( '/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2425  CALL chkxer( srnamt, infot, nout, lerr, ok )
2426  infot = 2
2427  CALL ssbmv( 'U', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2428  CALL chkxer( srnamt, infot, nout, lerr, ok )
2429  infot = 3
2430  CALL ssbmv( 'U', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2431  CALL chkxer( srnamt, infot, nout, lerr, ok )
2432  infot = 6
2433  CALL ssbmv( 'U', 0, 1, alpha, a, 1, x, 1, beta, y, 1 )
2434  CALL chkxer( srnamt, infot, nout, lerr, ok )
2435  infot = 8
2436  CALL ssbmv( 'U', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2437  CALL chkxer( srnamt, infot, nout, lerr, ok )
2438  infot = 11
2439  CALL ssbmv( 'U', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2440  CALL chkxer( srnamt, infot, nout, lerr, ok )
2441  GO TO 170
2442  50 infot = 1
2443  CALL sspmv( '/', 0, alpha, a, x, 1, beta, y, 1 )
2444  CALL chkxer( srnamt, infot, nout, lerr, ok )
2445  infot = 2
2446  CALL sspmv( 'U', -1, alpha, a, x, 1, beta, y, 1 )
2447  CALL chkxer( srnamt, infot, nout, lerr, ok )
2448  infot = 6
2449  CALL sspmv( 'U', 0, alpha, a, x, 0, beta, y, 1 )
2450  CALL chkxer( srnamt, infot, nout, lerr, ok )
2451  infot = 9
2452  CALL sspmv( 'U', 0, alpha, a, x, 1, beta, y, 0 )
2453  CALL chkxer( srnamt, infot, nout, lerr, ok )
2454  GO TO 170
2455  60 infot = 1
2456  CALL strmv( '/', 'N', 'N', 0, a, 1, x, 1 )
2457  CALL chkxer( srnamt, infot, nout, lerr, ok )
2458  infot = 2
2459  CALL strmv( 'U', '/', 'N', 0, a, 1, x, 1 )
2460  CALL chkxer( srnamt, infot, nout, lerr, ok )
2461  infot = 3
2462  CALL strmv( 'U', 'N', '/', 0, a, 1, x, 1 )
2463  CALL chkxer( srnamt, infot, nout, lerr, ok )
2464  infot = 4
2465  CALL strmv( 'U', 'N', 'N', -1, a, 1, x, 1 )
2466  CALL chkxer( srnamt, infot, nout, lerr, ok )
2467  infot = 6
2468  CALL strmv( 'U', 'N', 'N', 2, a, 1, x, 1 )
2469  CALL chkxer( srnamt, infot, nout, lerr, ok )
2470  infot = 8
2471  CALL strmv( 'U', 'N', 'N', 0, a, 1, x, 0 )
2472  CALL chkxer( srnamt, infot, nout, lerr, ok )
2473  GO TO 170
2474  70 infot = 1
2475  CALL stbmv( '/', 'N', 'N', 0, 0, a, 1, x, 1 )
2476  CALL chkxer( srnamt, infot, nout, lerr, ok )
2477  infot = 2
2478  CALL stbmv( 'U', '/', 'N', 0, 0, a, 1, x, 1 )
2479  CALL chkxer( srnamt, infot, nout, lerr, ok )
2480  infot = 3
2481  CALL stbmv( 'U', 'N', '/', 0, 0, a, 1, x, 1 )
2482  CALL chkxer( srnamt, infot, nout, lerr, ok )
2483  infot = 4
2484  CALL stbmv( 'U', 'N', 'N', -1, 0, a, 1, x, 1 )
2485  CALL chkxer( srnamt, infot, nout, lerr, ok )
2486  infot = 5
2487  CALL stbmv( 'U', 'N', 'N', 0, -1, a, 1, x, 1 )
2488  CALL chkxer( srnamt, infot, nout, lerr, ok )
2489  infot = 7
2490  CALL stbmv( 'U', 'N', 'N', 0, 1, a, 1, x, 1 )
2491  CALL chkxer( srnamt, infot, nout, lerr, ok )
2492  infot = 9
2493  CALL stbmv( 'U', 'N', 'N', 0, 0, a, 1, x, 0 )
2494  CALL chkxer( srnamt, infot, nout, lerr, ok )
2495  GO TO 170
2496  80 infot = 1
2497  CALL stpmv( '/', 'N', 'N', 0, a, x, 1 )
2498  CALL chkxer( srnamt, infot, nout, lerr, ok )
2499  infot = 2
2500  CALL stpmv( 'U', '/', 'N', 0, a, x, 1 )
2501  CALL chkxer( srnamt, infot, nout, lerr, ok )
2502  infot = 3
2503  CALL stpmv( 'U', 'N', '/', 0, a, x, 1 )
2504  CALL chkxer( srnamt, infot, nout, lerr, ok )
2505  infot = 4
2506  CALL stpmv( 'U', 'N', 'N', -1, a, x, 1 )
2507  CALL chkxer( srnamt, infot, nout, lerr, ok )
2508  infot = 7
2509  CALL stpmv( 'U', 'N', 'N', 0, a, x, 0 )
2510  CALL chkxer( srnamt, infot, nout, lerr, ok )
2511  GO TO 170
2512  90 infot = 1
2513  CALL strsv( '/', 'N', 'N', 0, a, 1, x, 1 )
2514  CALL chkxer( srnamt, infot, nout, lerr, ok )
2515  infot = 2
2516  CALL strsv( 'U', '/', 'N', 0, a, 1, x, 1 )
2517  CALL chkxer( srnamt, infot, nout, lerr, ok )
2518  infot = 3
2519  CALL strsv( 'U', 'N', '/', 0, a, 1, x, 1 )
2520  CALL chkxer( srnamt, infot, nout, lerr, ok )
2521  infot = 4
2522  CALL strsv( 'U', 'N', 'N', -1, a, 1, x, 1 )
2523  CALL chkxer( srnamt, infot, nout, lerr, ok )
2524  infot = 6
2525  CALL strsv( 'U', 'N', 'N', 2, a, 1, x, 1 )
2526  CALL chkxer( srnamt, infot, nout, lerr, ok )
2527  infot = 8
2528  CALL strsv( 'U', 'N', 'N', 0, a, 1, x, 0 )
2529  CALL chkxer( srnamt, infot, nout, lerr, ok )
2530  GO TO 170
2531  100 infot = 1
2532  CALL stbsv( '/', 'N', 'N', 0, 0, a, 1, x, 1 )
2533  CALL chkxer( srnamt, infot, nout, lerr, ok )
2534  infot = 2
2535  CALL stbsv( 'U', '/', 'N', 0, 0, a, 1, x, 1 )
2536  CALL chkxer( srnamt, infot, nout, lerr, ok )
2537  infot = 3
2538  CALL stbsv( 'U', 'N', '/', 0, 0, a, 1, x, 1 )
2539  CALL chkxer( srnamt, infot, nout, lerr, ok )
2540  infot = 4
2541  CALL stbsv( 'U', 'N', 'N', -1, 0, a, 1, x, 1 )
2542  CALL chkxer( srnamt, infot, nout, lerr, ok )
2543  infot = 5
2544  CALL stbsv( 'U', 'N', 'N', 0, -1, a, 1, x, 1 )
2545  CALL chkxer( srnamt, infot, nout, lerr, ok )
2546  infot = 7
2547  CALL stbsv( 'U', 'N', 'N', 0, 1, a, 1, x, 1 )
2548  CALL chkxer( srnamt, infot, nout, lerr, ok )
2549  infot = 9
2550  CALL stbsv( 'U', 'N', 'N', 0, 0, a, 1, x, 0 )
2551  CALL chkxer( srnamt, infot, nout, lerr, ok )
2552  GO TO 170
2553  110 infot = 1
2554  CALL stpsv( '/', 'N', 'N', 0, a, x, 1 )
2555  CALL chkxer( srnamt, infot, nout, lerr, ok )
2556  infot = 2
2557  CALL stpsv( 'U', '/', 'N', 0, a, x, 1 )
2558  CALL chkxer( srnamt, infot, nout, lerr, ok )
2559  infot = 3
2560  CALL stpsv( 'U', 'N', '/', 0, a, x, 1 )
2561  CALL chkxer( srnamt, infot, nout, lerr, ok )
2562  infot = 4
2563  CALL stpsv( 'U', 'N', 'N', -1, a, x, 1 )
2564  CALL chkxer( srnamt, infot, nout, lerr, ok )
2565  infot = 7
2566  CALL stpsv( 'U', 'N', 'N', 0, a, x, 0 )
2567  CALL chkxer( srnamt, infot, nout, lerr, ok )
2568  GO TO 170
2569  120 infot = 1
2570  CALL sger( -1, 0, alpha, x, 1, y, 1, a, 1 )
2571  CALL chkxer( srnamt, infot, nout, lerr, ok )
2572  infot = 2
2573  CALL sger( 0, -1, alpha, x, 1, y, 1, a, 1 )
2574  CALL chkxer( srnamt, infot, nout, lerr, ok )
2575  infot = 5
2576  CALL sger( 0, 0, alpha, x, 0, y, 1, a, 1 )
2577  CALL chkxer( srnamt, infot, nout, lerr, ok )
2578  infot = 7
2579  CALL sger( 0, 0, alpha, x, 1, y, 0, a, 1 )
2580  CALL chkxer( srnamt, infot, nout, lerr, ok )
2581  infot = 9
2582  CALL sger( 2, 0, alpha, x, 1, y, 1, a, 1 )
2583  CALL chkxer( srnamt, infot, nout, lerr, ok )
2584  GO TO 170
2585  130 infot = 1
2586  CALL ssyr( '/', 0, alpha, x, 1, a, 1 )
2587  CALL chkxer( srnamt, infot, nout, lerr, ok )
2588  infot = 2
2589  CALL ssyr( 'U', -1, alpha, x, 1, a, 1 )
2590  CALL chkxer( srnamt, infot, nout, lerr, ok )
2591  infot = 5
2592  CALL ssyr( 'U', 0, alpha, x, 0, a, 1 )
2593  CALL chkxer( srnamt, infot, nout, lerr, ok )
2594  infot = 7
2595  CALL ssyr( 'U', 2, alpha, x, 1, a, 1 )
2596  CALL chkxer( srnamt, infot, nout, lerr, ok )
2597  GO TO 170
2598  140 infot = 1
2599  CALL sspr( '/', 0, alpha, x, 1, a )
2600  CALL chkxer( srnamt, infot, nout, lerr, ok )
2601  infot = 2
2602  CALL sspr( 'U', -1, alpha, x, 1, a )
2603  CALL chkxer( srnamt, infot, nout, lerr, ok )
2604  infot = 5
2605  CALL sspr( 'U', 0, alpha, x, 0, a )
2606  CALL chkxer( srnamt, infot, nout, lerr, ok )
2607  GO TO 170
2608  150 infot = 1
2609  CALL ssyr2( '/', 0, alpha, x, 1, y, 1, a, 1 )
2610  CALL chkxer( srnamt, infot, nout, lerr, ok )
2611  infot = 2
2612  CALL ssyr2( 'U', -1, alpha, x, 1, y, 1, a, 1 )
2613  CALL chkxer( srnamt, infot, nout, lerr, ok )
2614  infot = 5
2615  CALL ssyr2( 'U', 0, alpha, x, 0, y, 1, a, 1 )
2616  CALL chkxer( srnamt, infot, nout, lerr, ok )
2617  infot = 7
2618  CALL ssyr2( 'U', 0, alpha, x, 1, y, 0, a, 1 )
2619  CALL chkxer( srnamt, infot, nout, lerr, ok )
2620  infot = 9
2621  CALL ssyr2( 'U', 2, alpha, x, 1, y, 1, a, 1 )
2622  CALL chkxer( srnamt, infot, nout, lerr, ok )
2623  GO TO 170
2624  160 infot = 1
2625  CALL sspr2( '/', 0, alpha, x, 1, y, 1, a )
2626  CALL chkxer( srnamt, infot, nout, lerr, ok )
2627  infot = 2
2628  CALL sspr2( 'U', -1, alpha, x, 1, y, 1, a )
2629  CALL chkxer( srnamt, infot, nout, lerr, ok )
2630  infot = 5
2631  CALL sspr2( 'U', 0, alpha, x, 0, y, 1, a )
2632  CALL chkxer( srnamt, infot, nout, lerr, ok )
2633  infot = 7
2634  CALL sspr2( 'U', 0, alpha, x, 1, y, 0, a )
2635  CALL chkxer( srnamt, infot, nout, lerr, ok )
2636 *
2637  170 IF( ok )THEN
2638  WRITE( nout, fmt = 9999 )srnamt
2639  ELSE
2640  WRITE( nout, fmt = 9998 )srnamt
2641  END IF
2642  RETURN
2643 *
2644  9999 FORMAT( ' ', a6, ' PASSED THE TESTS OF ERROR-EXITS' )
2645  9998 FORMAT( ' ******* ', a6, ' FAILED THE TESTS OF ERROR-EXITS *****',
2646  $ '**' )
2647 *
2648 * End of SCHKE.
2649 *
subroutine sspr2(UPLO, N, ALPHA, X, INCX, Y, INCY, AP)
SSPR2
Definition: sspr2.f:144
subroutine sspmv(UPLO, N, ALPHA, AP, X, INCX, BETA, Y, INCY)
SSPMV
Definition: sspmv.f:149
subroutine ssbmv(UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SSBMV
Definition: ssbmv.f:186
subroutine ssyr2(UPLO, N, ALPHA, X, INCX, Y, INCY, A, LDA)
SSYR2
Definition: ssyr2.f:149
subroutine sger(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
SGER
Definition: sger.f:132
subroutine stpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
STPMV
Definition: stpmv.f:144
subroutine sgbmv(TRANS, M, N, KL, KU, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SGBMV
Definition: sgbmv.f:187
subroutine sgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SGEMV
Definition: sgemv.f:158
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
Definition: cblat2.f:3199
subroutine stbmv(UPLO, TRANS, DIAG, N, K, A, LDA, X, INCX)
STBMV
Definition: stbmv.f:188
subroutine strmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
STRMV
Definition: strmv.f:149
subroutine strsv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
STRSV
Definition: strsv.f:151
subroutine stpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
STPSV
Definition: stpsv.f:146
subroutine stbsv(UPLO, TRANS, DIAG, N, K, A, LDA, X, INCX)
STBSV
Definition: stbsv.f:191
subroutine ssyr(UPLO, N, ALPHA, X, INCX, A, LDA)
SSYR
Definition: ssyr.f:134
subroutine sspr(UPLO, N, ALPHA, X, INCX, AP)
SSPR
Definition: sspr.f:129
subroutine ssymv(UPLO, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SSYMV
Definition: ssymv.f:154
Here is the call graph for this function:
Here is the caller graph for this function: