You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

derrst.f 60 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423
  1. *> \brief \b DERRST
  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 DERRST( 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. *> DERRST tests the error exits for DSYTRD, DORGTR, DORMTR, DSPTRD,
  25. *> DOPGTR, DOPMTR, DSTEQR, SSTERF, SSTEBZ, SSTEIN, DPTEQR, DSBTRD,
  26. *> DSYEV, SSYEVX, SSYEVD, DSBEV, SSBEVX, SSBEVD,
  27. *> DSPEV, SSPEVX, SSPEVD, DSTEV, SSTEVX, SSTEVD, and SSTEDC.
  28. *> DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
  29. *> DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
  30. *> DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
  31. *> DSYTRD_SB2ST
  32. *> \endverbatim
  33. *
  34. * Arguments:
  35. * ==========
  36. *
  37. *> \param[in] PATH
  38. *> \verbatim
  39. *> PATH is CHARACTER*3
  40. *> The LAPACK path name for the routines to be tested.
  41. *> \endverbatim
  42. *>
  43. *> \param[in] NUNIT
  44. *> \verbatim
  45. *> NUNIT is INTEGER
  46. *> The unit number for output.
  47. *> \endverbatim
  48. *
  49. * Authors:
  50. * ========
  51. *
  52. *> \author Univ. of Tennessee
  53. *> \author Univ. of California Berkeley
  54. *> \author Univ. of Colorado Denver
  55. *> \author NAG Ltd.
  56. *
  57. *> \date December 2016
  58. *
  59. *> \ingroup double_eig
  60. *
  61. * =====================================================================
  62. SUBROUTINE DERRST( PATH, NUNIT )
  63. *
  64. * -- LAPACK test routine (version 3.7.0) --
  65. * -- LAPACK is a software package provided by Univ. of Tennessee, --
  66. * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
  67. * December 2016
  68. *
  69. * .. Scalar Arguments ..
  70. CHARACTER*3 PATH
  71. INTEGER NUNIT
  72. * ..
  73. *
  74. * =====================================================================
  75. *
  76. * NMAX has to be at least 3 or LIW may be too small
  77. * .. Parameters ..
  78. INTEGER NMAX, LIW, LW
  79. PARAMETER ( NMAX = 3, LIW = 12*NMAX, LW = 20*NMAX )
  80. * ..
  81. * .. Local Scalars ..
  82. CHARACTER*2 C2
  83. INTEGER I, INFO, J, M, N, NSPLIT, NT
  84. * ..
  85. * .. Local Arrays ..
  86. INTEGER I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
  87. DOUBLE PRECISION A( NMAX, NMAX ), C( NMAX, NMAX ), D( NMAX ),
  88. $ E( NMAX ), Q( NMAX, NMAX ), R( NMAX ),
  89. $ TAU( NMAX ), W( LW ), X( NMAX ),
  90. $ Z( NMAX, NMAX )
  91. * ..
  92. * .. External Functions ..
  93. LOGICAL LSAMEN
  94. EXTERNAL LSAMEN
  95. * ..
  96. * .. External Subroutines ..
  97. EXTERNAL CHKXER, DOPGTR, DOPMTR, DORGTR, DORMTR, DPTEQR,
  98. $ DSBEV, DSBEVD, DSBEVX, DSBTRD, DSPEV, DSPEVD,
  99. $ DSPEVX, DSPTRD, DSTEBZ, DSTEDC, DSTEIN, DSTEQR,
  100. $ DSTERF, DSTEV, DSTEVD, DSTEVR, DSTEVX, DSYEV,
  101. $ DSYEVD, DSYEVR, DSYEVX, DSYTRD,
  102. $ DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
  103. $ DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
  104. $ DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
  105. $ DSYTRD_SB2ST
  106. * ..
  107. * .. Scalars in Common ..
  108. LOGICAL LERR, OK
  109. CHARACTER*32 SRNAMT
  110. INTEGER INFOT, NOUT
  111. * ..
  112. * .. Common blocks ..
  113. COMMON / INFOC / INFOT, NOUT, OK, LERR
  114. COMMON / SRNAMC / SRNAMT
  115. * ..
  116. * .. Intrinsic Functions ..
  117. INTRINSIC DBLE
  118. * ..
  119. * .. Executable Statements ..
  120. *
  121. NOUT = NUNIT
  122. WRITE( NOUT, FMT = * )
  123. C2 = PATH( 2: 3 )
  124. *
  125. * Set the variables to innocuous values.
  126. *
  127. DO 20 J = 1, NMAX
  128. DO 10 I = 1, NMAX
  129. A( I, J ) = 1.D0 / DBLE( I+J )
  130. 10 CONTINUE
  131. 20 CONTINUE
  132. DO 30 J = 1, NMAX
  133. D( J ) = DBLE( J )
  134. E( J ) = 0.0D0
  135. I1( J ) = J
  136. I2( J ) = J
  137. TAU( J ) = 1.D0
  138. 30 CONTINUE
  139. OK = .TRUE.
  140. NT = 0
  141. *
  142. * Test error exits for the ST path.
  143. *
  144. IF( LSAMEN( 2, C2, 'ST' ) ) THEN
  145. *
  146. * DSYTRD
  147. *
  148. SRNAMT = 'DSYTRD'
  149. INFOT = 1
  150. CALL DSYTRD( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
  151. CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
  152. INFOT = 2
  153. CALL DSYTRD( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
  154. CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
  155. INFOT = 4
  156. CALL DSYTRD( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
  157. CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
  158. INFOT = 9
  159. CALL DSYTRD( 'U', 0, A, 1, D, E, TAU, W, 0, INFO )
  160. CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
  161. NT = NT + 4
  162. *
  163. * DSYTRD_2STAGE
  164. *
  165. SRNAMT = 'DSYTRD_2STAGE'
  166. INFOT = 1
  167. CALL DSYTRD_2STAGE( '/', 'U', 0, A, 1, D, E, TAU,
  168. $ C, 1, W, 1, INFO )
  169. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  170. INFOT = 1
  171. CALL DSYTRD_2STAGE( 'H', 'U', 0, A, 1, D, E, TAU,
  172. $ C, 1, W, 1, INFO )
  173. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  174. INFOT = 2
  175. CALL DSYTRD_2STAGE( 'N', '/', 0, A, 1, D, E, TAU,
  176. $ C, 1, W, 1, INFO )
  177. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  178. INFOT = 3
  179. CALL DSYTRD_2STAGE( 'N', 'U', -1, A, 1, D, E, TAU,
  180. $ C, 1, W, 1, INFO )
  181. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  182. INFOT = 5
  183. CALL DSYTRD_2STAGE( 'N', 'U', 2, A, 1, D, E, TAU,
  184. $ C, 1, W, 1, INFO )
  185. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  186. INFOT = 10
  187. CALL DSYTRD_2STAGE( 'N', 'U', 0, A, 1, D, E, TAU,
  188. $ C, 0, W, 1, INFO )
  189. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  190. INFOT = 12
  191. CALL DSYTRD_2STAGE( 'N', 'U', 0, A, 1, D, E, TAU,
  192. $ C, 1, W, 0, INFO )
  193. CALL CHKXER( 'DSYTRD_2STAGE', INFOT, NOUT, LERR, OK )
  194. NT = NT + 7
  195. *
  196. * DSYTRD_SY2SB
  197. *
  198. SRNAMT = 'DSYTRD_SY2SB'
  199. INFOT = 1
  200. CALL DSYTRD_SY2SB( '/', 0, 0, A, 1, C, 1, TAU, W, 1, INFO )
  201. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  202. INFOT = 2
  203. CALL DSYTRD_SY2SB( 'U', -1, 0, A, 1, C, 1, TAU, W, 1, INFO )
  204. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  205. INFOT = 3
  206. CALL DSYTRD_SY2SB( 'U', 0, -1, A, 1, C, 1, TAU, W, 1, INFO )
  207. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  208. INFOT = 5
  209. CALL DSYTRD_SY2SB( 'U', 2, 0, A, 1, C, 1, TAU, W, 1, INFO )
  210. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  211. INFOT = 7
  212. CALL DSYTRD_SY2SB( 'U', 0, 2, A, 1, C, 1, TAU, W, 1, INFO )
  213. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  214. INFOT = 10
  215. CALL DSYTRD_SY2SB( 'U', 0, 0, A, 1, C, 1, TAU, W, 0, INFO )
  216. CALL CHKXER( 'DSYTRD_SY2SB', INFOT, NOUT, LERR, OK )
  217. NT = NT + 6
  218. *
  219. * DSYTRD_SB2ST
  220. *
  221. SRNAMT = 'DSYTRD_SB2ST'
  222. INFOT = 1
  223. CALL DSYTRD_SB2ST( '/', 'N', 'U', 0, 0, A, 1, D, E,
  224. $ C, 1, W, 1, INFO )
  225. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  226. INFOT = 2
  227. CALL DSYTRD_SB2ST( 'Y', '/', 'U', 0, 0, A, 1, D, E,
  228. $ C, 1, W, 1, INFO )
  229. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  230. INFOT = 2
  231. CALL DSYTRD_SB2ST( 'Y', 'H', 'U', 0, 0, A, 1, D, E,
  232. $ C, 1, W, 1, INFO )
  233. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  234. INFOT = 3
  235. CALL DSYTRD_SB2ST( 'Y', 'N', '/', 0, 0, A, 1, D, E,
  236. $ C, 1, W, 1, INFO )
  237. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  238. INFOT = 4
  239. CALL DSYTRD_SB2ST( 'Y', 'N', 'U', -1, 0, A, 1, D, E,
  240. $ C, 1, W, 1, INFO )
  241. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  242. INFOT = 5
  243. CALL DSYTRD_SB2ST( 'Y', 'N', 'U', 0, -1, A, 1, D, E,
  244. $ C, 1, W, 1, INFO )
  245. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  246. INFOT = 7
  247. CALL DSYTRD_SB2ST( 'Y', 'N', 'U', 0, 1, A, 1, D, E,
  248. $ C, 1, W, 1, INFO )
  249. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  250. INFOT = 11
  251. CALL DSYTRD_SB2ST( 'Y', 'N', 'U', 0, 0, A, 1, D, E,
  252. $ C, 0, W, 1, INFO )
  253. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  254. INFOT = 13
  255. CALL DSYTRD_SB2ST( 'Y', 'N', 'U', 0, 0, A, 1, D, E,
  256. $ C, 1, W, 0, INFO )
  257. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  258. NT = NT + 9
  259. *
  260. * DORGTR
  261. *
  262. SRNAMT = 'DORGTR'
  263. INFOT = 1
  264. CALL DORGTR( '/', 0, A, 1, TAU, W, 1, INFO )
  265. CALL CHKXER( 'DORGTR', INFOT, NOUT, LERR, OK )
  266. INFOT = 2
  267. CALL DORGTR( 'U', -1, A, 1, TAU, W, 1, INFO )
  268. CALL CHKXER( 'DORGTR', INFOT, NOUT, LERR, OK )
  269. INFOT = 4
  270. CALL DORGTR( 'U', 2, A, 1, TAU, W, 1, INFO )
  271. CALL CHKXER( 'DORGTR', INFOT, NOUT, LERR, OK )
  272. INFOT = 7
  273. CALL DORGTR( 'U', 3, A, 3, TAU, W, 1, INFO )
  274. CALL CHKXER( 'DORGTR', INFOT, NOUT, LERR, OK )
  275. NT = NT + 4
  276. *
  277. * DORMTR
  278. *
  279. SRNAMT = 'DORMTR'
  280. INFOT = 1
  281. CALL DORMTR( '/', 'U', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
  282. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  283. INFOT = 2
  284. CALL DORMTR( 'L', '/', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
  285. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  286. INFOT = 3
  287. CALL DORMTR( 'L', 'U', '/', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
  288. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  289. INFOT = 4
  290. CALL DORMTR( 'L', 'U', 'N', -1, 0, A, 1, TAU, C, 1, W, 1,
  291. $ INFO )
  292. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  293. INFOT = 5
  294. CALL DORMTR( 'L', 'U', 'N', 0, -1, A, 1, TAU, C, 1, W, 1,
  295. $ INFO )
  296. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  297. INFOT = 7
  298. CALL DORMTR( 'L', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
  299. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  300. INFOT = 7
  301. CALL DORMTR( 'R', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
  302. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  303. INFOT = 10
  304. CALL DORMTR( 'L', 'U', 'N', 2, 0, A, 2, TAU, C, 1, W, 1, INFO )
  305. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  306. INFOT = 12
  307. CALL DORMTR( 'L', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
  308. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  309. INFOT = 12
  310. CALL DORMTR( 'R', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
  311. CALL CHKXER( 'DORMTR', INFOT, NOUT, LERR, OK )
  312. NT = NT + 10
  313. *
  314. * DSPTRD
  315. *
  316. SRNAMT = 'DSPTRD'
  317. INFOT = 1
  318. CALL DSPTRD( '/', 0, A, D, E, TAU, INFO )
  319. CALL CHKXER( 'DSPTRD', INFOT, NOUT, LERR, OK )
  320. INFOT = 2
  321. CALL DSPTRD( 'U', -1, A, D, E, TAU, INFO )
  322. CALL CHKXER( 'DSPTRD', INFOT, NOUT, LERR, OK )
  323. NT = NT + 2
  324. *
  325. * DOPGTR
  326. *
  327. SRNAMT = 'DOPGTR'
  328. INFOT = 1
  329. CALL DOPGTR( '/', 0, A, TAU, Z, 1, W, INFO )
  330. CALL CHKXER( 'DOPGTR', INFOT, NOUT, LERR, OK )
  331. INFOT = 2
  332. CALL DOPGTR( 'U', -1, A, TAU, Z, 1, W, INFO )
  333. CALL CHKXER( 'DOPGTR', INFOT, NOUT, LERR, OK )
  334. INFOT = 6
  335. CALL DOPGTR( 'U', 2, A, TAU, Z, 1, W, INFO )
  336. CALL CHKXER( 'DOPGTR', INFOT, NOUT, LERR, OK )
  337. NT = NT + 3
  338. *
  339. * DOPMTR
  340. *
  341. SRNAMT = 'DOPMTR'
  342. INFOT = 1
  343. CALL DOPMTR( '/', 'U', 'N', 0, 0, A, TAU, C, 1, W, INFO )
  344. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  345. INFOT = 2
  346. CALL DOPMTR( 'L', '/', 'N', 0, 0, A, TAU, C, 1, W, INFO )
  347. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  348. INFOT = 3
  349. CALL DOPMTR( 'L', 'U', '/', 0, 0, A, TAU, C, 1, W, INFO )
  350. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  351. INFOT = 4
  352. CALL DOPMTR( 'L', 'U', 'N', -1, 0, A, TAU, C, 1, W, INFO )
  353. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  354. INFOT = 5
  355. CALL DOPMTR( 'L', 'U', 'N', 0, -1, A, TAU, C, 1, W, INFO )
  356. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  357. INFOT = 9
  358. CALL DOPMTR( 'L', 'U', 'N', 2, 0, A, TAU, C, 1, W, INFO )
  359. CALL CHKXER( 'DOPMTR', INFOT, NOUT, LERR, OK )
  360. NT = NT + 6
  361. *
  362. * DPTEQR
  363. *
  364. SRNAMT = 'DPTEQR'
  365. INFOT = 1
  366. CALL DPTEQR( '/', 0, D, E, Z, 1, W, INFO )
  367. CALL CHKXER( 'DPTEQR', INFOT, NOUT, LERR, OK )
  368. INFOT = 2
  369. CALL DPTEQR( 'N', -1, D, E, Z, 1, W, INFO )
  370. CALL CHKXER( 'DPTEQR', INFOT, NOUT, LERR, OK )
  371. INFOT = 6
  372. CALL DPTEQR( 'V', 2, D, E, Z, 1, W, INFO )
  373. CALL CHKXER( 'DPTEQR', INFOT, NOUT, LERR, OK )
  374. NT = NT + 3
  375. *
  376. * DSTEBZ
  377. *
  378. SRNAMT = 'DSTEBZ'
  379. INFOT = 1
  380. CALL DSTEBZ( '/', 'E', 0, 0.0D0, 1.0D0, 1, 0, 0.0D0, D, E, M,
  381. $ NSPLIT, X, I1, I2, W, IW, INFO )
  382. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  383. INFOT = 2
  384. CALL DSTEBZ( 'A', '/', 0, 0.0D0, 0.0D0, 0, 0, 0.0D0, D, E, M,
  385. $ NSPLIT, X, I1, I2, W, IW, INFO )
  386. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  387. INFOT = 3
  388. CALL DSTEBZ( 'A', 'E', -1, 0.0D0, 0.0D0, 0, 0, 0.0D0, D, E, M,
  389. $ NSPLIT, X, I1, I2, W, IW, INFO )
  390. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  391. INFOT = 5
  392. CALL DSTEBZ( 'V', 'E', 0, 0.0D0, 0.0D0, 0, 0, 0.0D0, D, E, M,
  393. $ NSPLIT, X, I1, I2, W, IW, INFO )
  394. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  395. INFOT = 6
  396. CALL DSTEBZ( 'I', 'E', 0, 0.0D0, 0.0D0, 0, 0, 0.0D0, D, E, M,
  397. $ NSPLIT, X, I1, I2, W, IW, INFO )
  398. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  399. INFOT = 6
  400. CALL DSTEBZ( 'I', 'E', 1, 0.0D0, 0.0D0, 2, 1, 0.0D0, D, E, M,
  401. $ NSPLIT, X, I1, I2, W, IW, INFO )
  402. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  403. INFOT = 7
  404. CALL DSTEBZ( 'I', 'E', 1, 0.0D0, 0.0D0, 1, 0, 0.0D0, D, E, M,
  405. $ NSPLIT, X, I1, I2, W, IW, INFO )
  406. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  407. INFOT = 7
  408. CALL DSTEBZ( 'I', 'E', 1, 0.0D0, 0.0D0, 1, 2, 0.0D0, D, E, M,
  409. $ NSPLIT, X, I1, I2, W, IW, INFO )
  410. CALL CHKXER( 'DSTEBZ', INFOT, NOUT, LERR, OK )
  411. NT = NT + 8
  412. *
  413. * DSTEIN
  414. *
  415. SRNAMT = 'DSTEIN'
  416. INFOT = 1
  417. CALL DSTEIN( -1, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
  418. CALL CHKXER( 'DSTEIN', INFOT, NOUT, LERR, OK )
  419. INFOT = 4
  420. CALL DSTEIN( 0, D, E, -1, X, I1, I2, Z, 1, W, IW, I3, INFO )
  421. CALL CHKXER( 'DSTEIN', INFOT, NOUT, LERR, OK )
  422. INFOT = 4
  423. CALL DSTEIN( 0, D, E, 1, X, I1, I2, Z, 1, W, IW, I3, INFO )
  424. CALL CHKXER( 'DSTEIN', INFOT, NOUT, LERR, OK )
  425. INFOT = 9
  426. CALL DSTEIN( 2, D, E, 0, X, I1, I2, Z, 1, W, IW, I3, INFO )
  427. CALL CHKXER( 'DSTEIN', INFOT, NOUT, LERR, OK )
  428. NT = NT + 4
  429. *
  430. * DSTEQR
  431. *
  432. SRNAMT = 'DSTEQR'
  433. INFOT = 1
  434. CALL DSTEQR( '/', 0, D, E, Z, 1, W, INFO )
  435. CALL CHKXER( 'DSTEQR', INFOT, NOUT, LERR, OK )
  436. INFOT = 2
  437. CALL DSTEQR( 'N', -1, D, E, Z, 1, W, INFO )
  438. CALL CHKXER( 'DSTEQR', INFOT, NOUT, LERR, OK )
  439. INFOT = 6
  440. CALL DSTEQR( 'V', 2, D, E, Z, 1, W, INFO )
  441. CALL CHKXER( 'DSTEQR', INFOT, NOUT, LERR, OK )
  442. NT = NT + 3
  443. *
  444. * DSTERF
  445. *
  446. SRNAMT = 'DSTERF'
  447. INFOT = 1
  448. CALL DSTERF( -1, D, E, INFO )
  449. CALL CHKXER( 'DSTERF', INFOT, NOUT, LERR, OK )
  450. NT = NT + 1
  451. *
  452. * DSTEDC
  453. *
  454. SRNAMT = 'DSTEDC'
  455. INFOT = 1
  456. CALL DSTEDC( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
  457. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  458. INFOT = 2
  459. CALL DSTEDC( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
  460. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  461. INFOT = 6
  462. CALL DSTEDC( 'V', 2, D, E, Z, 1, W, 23, IW, 28, INFO )
  463. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  464. INFOT = 8
  465. CALL DSTEDC( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
  466. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  467. INFOT = 8
  468. CALL DSTEDC( 'I', 2, D, E, Z, 2, W, 0, IW, 12, INFO )
  469. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  470. INFOT = 8
  471. CALL DSTEDC( 'V', 2, D, E, Z, 2, W, 0, IW, 28, INFO )
  472. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  473. INFOT = 10
  474. CALL DSTEDC( 'N', 1, D, E, Z, 1, W, 1, IW, 0, INFO )
  475. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  476. INFOT = 10
  477. CALL DSTEDC( 'I', 2, D, E, Z, 2, W, 19, IW, 0, INFO )
  478. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  479. INFOT = 10
  480. CALL DSTEDC( 'V', 2, D, E, Z, 2, W, 23, IW, 0, INFO )
  481. CALL CHKXER( 'DSTEDC', INFOT, NOUT, LERR, OK )
  482. NT = NT + 9
  483. *
  484. * DSTEVD
  485. *
  486. SRNAMT = 'DSTEVD'
  487. INFOT = 1
  488. CALL DSTEVD( '/', 0, D, E, Z, 1, W, 1, IW, 1, INFO )
  489. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  490. INFOT = 2
  491. CALL DSTEVD( 'N', -1, D, E, Z, 1, W, 1, IW, 1, INFO )
  492. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  493. INFOT = 6
  494. CALL DSTEVD( 'V', 2, D, E, Z, 1, W, 19, IW, 12, INFO )
  495. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  496. INFOT = 8
  497. CALL DSTEVD( 'N', 1, D, E, Z, 1, W, 0, IW, 1, INFO )
  498. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  499. INFOT = 8
  500. CALL DSTEVD( 'V', 2, D, E, Z, 2, W, 12, IW, 12, INFO )
  501. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  502. INFOT = 10
  503. CALL DSTEVD( 'N', 0, D, E, Z, 1, W, 1, IW, 0, INFO )
  504. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  505. INFOT = 10
  506. CALL DSTEVD( 'V', 2, D, E, Z, 2, W, 19, IW, 11, INFO )
  507. CALL CHKXER( 'DSTEVD', INFOT, NOUT, LERR, OK )
  508. NT = NT + 7
  509. *
  510. * DSTEV
  511. *
  512. SRNAMT = 'DSTEV '
  513. INFOT = 1
  514. CALL DSTEV( '/', 0, D, E, Z, 1, W, INFO )
  515. CALL CHKXER( 'DSTEV ', INFOT, NOUT, LERR, OK )
  516. INFOT = 2
  517. CALL DSTEV( 'N', -1, D, E, Z, 1, W, INFO )
  518. CALL CHKXER( 'DSTEV ', INFOT, NOUT, LERR, OK )
  519. INFOT = 6
  520. CALL DSTEV( 'V', 2, D, E, Z, 1, W, INFO )
  521. CALL CHKXER( 'DSTEV ', INFOT, NOUT, LERR, OK )
  522. NT = NT + 3
  523. *
  524. * DSTEVX
  525. *
  526. SRNAMT = 'DSTEVX'
  527. INFOT = 1
  528. CALL DSTEVX( '/', 'A', 0, D, E, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  529. $ X, Z, 1, W, IW, I3, INFO )
  530. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  531. INFOT = 2
  532. CALL DSTEVX( 'N', '/', 0, D, E, 0.0D0, 1.0D0, 1, 0, 0.0D0, M,
  533. $ X, Z, 1, W, IW, I3, INFO )
  534. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  535. INFOT = 3
  536. CALL DSTEVX( 'N', 'A', -1, D, E, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  537. $ X, Z, 1, W, IW, I3, INFO )
  538. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  539. INFOT = 7
  540. CALL DSTEVX( 'N', 'V', 1, D, E, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  541. $ X, Z, 1, W, IW, I3, INFO )
  542. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  543. INFOT = 8
  544. CALL DSTEVX( 'N', 'I', 1, D, E, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  545. $ X, Z, 1, W, IW, I3, INFO )
  546. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  547. INFOT = 8
  548. CALL DSTEVX( 'N', 'I', 1, D, E, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
  549. $ X, Z, 1, W, IW, I3, INFO )
  550. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  551. INFOT = 9
  552. CALL DSTEVX( 'N', 'I', 2, D, E, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
  553. $ X, Z, 1, W, IW, I3, INFO )
  554. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  555. INFOT = 9
  556. CALL DSTEVX( 'N', 'I', 1, D, E, 0.0D0, 0.0D0, 1, 2, 0.0D0, M,
  557. $ X, Z, 1, W, IW, I3, INFO )
  558. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  559. INFOT = 14
  560. CALL DSTEVX( 'V', 'A', 2, D, E, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  561. $ X, Z, 1, W, IW, I3, INFO )
  562. CALL CHKXER( 'DSTEVX', INFOT, NOUT, LERR, OK )
  563. NT = NT + 9
  564. *
  565. * DSTEVR
  566. *
  567. N = 1
  568. SRNAMT = 'DSTEVR'
  569. INFOT = 1
  570. CALL DSTEVR( '/', 'A', 0, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  571. $ R, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  572. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  573. INFOT = 2
  574. CALL DSTEVR( 'V', '/', 0, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  575. $ R, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  576. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  577. INFOT = 3
  578. CALL DSTEVR( 'V', 'A', -1, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  579. $ R, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  580. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  581. INFOT = 7
  582. CALL DSTEVR( 'V', 'V', 1, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  583. $ R, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  584. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  585. INFOT = 8
  586. CALL DSTEVR( 'V', 'I', 1, D, E, 0.0D0, 0.0D0, 0, 1, 0.0D0, M,
  587. $ W, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  588. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  589. INFOT = 9
  590. N = 2
  591. CALL DSTEVR( 'V', 'I', 2, D, E, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
  592. $ W, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  593. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  594. INFOT = 14
  595. N = 1
  596. CALL DSTEVR( 'V', 'I', 1, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  597. $ W, Z, 0, IW, X, 20*N, IW( 2*N+1 ), 10*N, INFO )
  598. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  599. INFOT = 17
  600. CALL DSTEVR( 'V', 'I', 1, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  601. $ W, Z, 1, IW, X, 20*N-1, IW( 2*N+1 ), 10*N, INFO )
  602. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  603. INFOT = 19
  604. CALL DSTEVR( 'V', 'I', 1, D, E, 0.0D0, 0.0D0, 1, 1, 0.0D0, M,
  605. $ W, Z, 1, IW, X, 20*N, IW( 2*N+1 ), 10*N-1, INFO )
  606. CALL CHKXER( 'DSTEVR', INFOT, NOUT, LERR, OK )
  607. NT = NT + 9
  608. *
  609. * DSYEVD
  610. *
  611. SRNAMT = 'DSYEVD'
  612. INFOT = 1
  613. CALL DSYEVD( '/', 'U', 0, A, 1, X, W, 1, IW, 1, INFO )
  614. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  615. INFOT = 2
  616. CALL DSYEVD( 'N', '/', 0, A, 1, X, W, 1, IW, 1, INFO )
  617. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  618. INFOT = 3
  619. CALL DSYEVD( 'N', 'U', -1, A, 1, X, W, 1, IW, 1, INFO )
  620. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  621. INFOT = 5
  622. CALL DSYEVD( 'N', 'U', 2, A, 1, X, W, 3, IW, 1, INFO )
  623. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  624. INFOT = 8
  625. CALL DSYEVD( 'N', 'U', 1, A, 1, X, W, 0, IW, 1, INFO )
  626. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  627. INFOT = 8
  628. CALL DSYEVD( 'N', 'U', 2, A, 2, X, W, 4, IW, 1, INFO )
  629. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  630. INFOT = 8
  631. CALL DSYEVD( 'V', 'U', 2, A, 2, X, W, 20, IW, 12, INFO )
  632. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  633. INFOT = 10
  634. CALL DSYEVD( 'N', 'U', 1, A, 1, X, W, 1, IW, 0, INFO )
  635. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  636. INFOT = 10
  637. CALL DSYEVD( 'N', 'U', 2, A, 2, X, W, 5, IW, 0, INFO )
  638. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  639. INFOT = 10
  640. CALL DSYEVD( 'V', 'U', 2, A, 2, X, W, 27, IW, 11, INFO )
  641. CALL CHKXER( 'DSYEVD', INFOT, NOUT, LERR, OK )
  642. NT = NT + 10
  643. *
  644. * DSYEVD_2STAGE
  645. *
  646. SRNAMT = 'DSYEVD_2STAGE'
  647. INFOT = 1
  648. CALL DSYEVD_2STAGE( '/', 'U', 0, A, 1, X, W, 1, IW, 1, INFO )
  649. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  650. INFOT = 1
  651. CALL DSYEVD_2STAGE( 'V', 'U', 0, A, 1, X, W, 1, IW, 1, INFO )
  652. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  653. INFOT = 2
  654. CALL DSYEVD_2STAGE( 'N', '/', 0, A, 1, X, W, 1, IW, 1, INFO )
  655. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  656. INFOT = 3
  657. CALL DSYEVD_2STAGE( 'N', 'U', -1, A, 1, X, W, 1, IW, 1, INFO )
  658. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  659. INFOT = 5
  660. CALL DSYEVD_2STAGE( 'N', 'U', 2, A, 1, X, W, 3, IW, 1, INFO )
  661. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  662. INFOT = 8
  663. CALL DSYEVD_2STAGE( 'N', 'U', 1, A, 1, X, W, 0, IW, 1, INFO )
  664. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  665. INFOT = 8
  666. CALL DSYEVD_2STAGE( 'N', 'U', 2, A, 2, X, W, 4, IW, 1, INFO )
  667. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  668. * INFOT = 8
  669. * CALL DSYEVD_2STAGE( 'V', 'U', 2, A, 2, X, W, 20, IW, 12, INFO )
  670. * CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  671. INFOT = 10
  672. CALL DSYEVD_2STAGE( 'N', 'U', 1, A, 1, X, W, 1, IW, 0, INFO )
  673. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  674. INFOT = 10
  675. CALL DSYEVD_2STAGE( 'N', 'U', 2, A, 2, X, W, 25, IW, 0, INFO )
  676. CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  677. * INFOT = 10
  678. * CALL DSYEVD_2STAGE( 'V', 'U', 2, A, 2, X, W, 27, IW, 11, INFO )
  679. * CALL CHKXER( 'DSYEVD_2STAGE', INFOT, NOUT, LERR, OK )
  680. NT = NT + 9
  681. *
  682. * DSYEVR
  683. *
  684. SRNAMT = 'DSYEVR'
  685. N = 1
  686. INFOT = 1
  687. CALL DSYEVR( '/', 'A', 'U', 0, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  688. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  689. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  690. INFOT = 2
  691. CALL DSYEVR( 'V', '/', 'U', 0, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  692. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  693. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  694. INFOT = 3
  695. CALL DSYEVR( 'V', 'A', '/', -1, A, 1, 0.0D0, 0.0D0, 1, 1,
  696. $ 0.0D0, M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N,
  697. $ INFO )
  698. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  699. INFOT = 4
  700. CALL DSYEVR( 'V', 'A', 'U', -1, A, 1, 0.0D0, 0.0D0, 1, 1,
  701. $ 0.0D0, M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N,
  702. $ INFO )
  703. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  704. INFOT = 6
  705. CALL DSYEVR( 'V', 'A', 'U', 2, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  706. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  707. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  708. INFOT = 8
  709. CALL DSYEVR( 'V', 'V', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  710. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  711. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  712. INFOT = 9
  713. CALL DSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 1, 0.0D0,
  714. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  715. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  716. INFOT = 10
  717. *
  718. CALL DSYEVR( 'V', 'I', 'U', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
  719. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  720. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  721. INFOT = 15
  722. CALL DSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  723. $ M, R, Z, 0, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  724. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  725. INFOT = 18
  726. CALL DSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  727. $ M, R, Z, 1, IW, Q, 26*N-1, IW( 2*N+1 ), 10*N,
  728. $ INFO )
  729. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  730. INFOT = 20
  731. CALL DSYEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
  732. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N-1,
  733. $ INFO )
  734. CALL CHKXER( 'DSYEVR', INFOT, NOUT, LERR, OK )
  735. NT = NT + 11
  736. *
  737. * DSYEVR_2STAGE
  738. *
  739. SRNAMT = 'DSYEVR_2STAGE'
  740. N = 1
  741. INFOT = 1
  742. CALL DSYEVR_2STAGE( '/', 'A', 'U', 0, A, 1,
  743. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  744. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  745. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  746. INFOT = 1
  747. CALL DSYEVR_2STAGE( 'V', 'A', 'U', 0, A, 1,
  748. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  749. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  750. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  751. INFOT = 2
  752. CALL DSYEVR_2STAGE( 'N', '/', 'U', 0, A, 1,
  753. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  754. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  755. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  756. INFOT = 3
  757. CALL DSYEVR_2STAGE( 'N', 'A', '/', -1, A, 1,
  758. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  759. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  760. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  761. INFOT = 4
  762. CALL DSYEVR_2STAGE( 'N', 'A', 'U', -1, A, 1,
  763. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  764. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  765. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  766. INFOT = 6
  767. CALL DSYEVR_2STAGE( 'N', 'A', 'U', 2, A, 1,
  768. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  769. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  770. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  771. INFOT = 8
  772. CALL DSYEVR_2STAGE( 'N', 'V', 'U', 1, A, 1,
  773. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  774. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  775. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  776. INFOT = 9
  777. CALL DSYEVR_2STAGE( 'N', 'I', 'U', 1, A, 1,
  778. $ 0.0D0, 0.0D0, 0, 1, 0.0D0,
  779. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  780. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  781. INFOT = 10
  782. CALL DSYEVR_2STAGE( 'N', 'I', 'U', 2, A, 2,
  783. $ 0.0D0, 0.0D0, 2, 1, 0.0D0,
  784. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  785. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  786. INFOT = 15
  787. CALL DSYEVR_2STAGE( 'N', 'I', 'U', 1, A, 1,
  788. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  789. $ M, R, Z, 0, IW, Q, 26*N, IW( 2*N+1 ), 10*N, INFO )
  790. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  791. INFOT = 18
  792. CALL DSYEVR_2STAGE( 'N', 'I', 'U', 1, A, 1,
  793. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  794. $ M, R, Z, 1, IW, Q, 0, IW( 2*N+1 ), 10*N,
  795. $ INFO )
  796. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  797. INFOT = 20
  798. CALL DSYEVR_2STAGE( 'N', 'I', 'U', 1, A, 1,
  799. $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
  800. $ M, R, Z, 1, IW, Q, 26*N, IW( 2*N+1 ), 0,
  801. $ INFO )
  802. CALL CHKXER( 'DSYEVR_2STAGE', INFOT, NOUT, LERR, OK )
  803. NT = NT + 12
  804. *
  805. * DSYEV
  806. *
  807. SRNAMT = 'DSYEV '
  808. INFOT = 1
  809. CALL DSYEV( '/', 'U', 0, A, 1, X, W, 1, INFO )
  810. CALL CHKXER( 'DSYEV ', INFOT, NOUT, LERR, OK )
  811. INFOT = 2
  812. CALL DSYEV( 'N', '/', 0, A, 1, X, W, 1, INFO )
  813. CALL CHKXER( 'DSYEV ', INFOT, NOUT, LERR, OK )
  814. INFOT = 3
  815. CALL DSYEV( 'N', 'U', -1, A, 1, X, W, 1, INFO )
  816. CALL CHKXER( 'DSYEV ', INFOT, NOUT, LERR, OK )
  817. INFOT = 5
  818. CALL DSYEV( 'N', 'U', 2, A, 1, X, W, 3, INFO )
  819. CALL CHKXER( 'DSYEV ', INFOT, NOUT, LERR, OK )
  820. INFOT = 8
  821. CALL DSYEV( 'N', 'U', 1, A, 1, X, W, 1, INFO )
  822. CALL CHKXER( 'DSYEV ', INFOT, NOUT, LERR, OK )
  823. NT = NT + 5
  824. *
  825. * DSYEV_2STAGE
  826. *
  827. SRNAMT = 'DSYEV_2STAGE '
  828. INFOT = 1
  829. CALL DSYEV_2STAGE( '/', 'U', 0, A, 1, X, W, 1, INFO )
  830. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  831. INFOT = 1
  832. CALL DSYEV_2STAGE( 'V', 'U', 0, A, 1, X, W, 1, INFO )
  833. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  834. INFOT = 2
  835. CALL DSYEV_2STAGE( 'N', '/', 0, A, 1, X, W, 1, INFO )
  836. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  837. INFOT = 3
  838. CALL DSYEV_2STAGE( 'N', 'U', -1, A, 1, X, W, 1, INFO )
  839. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  840. INFOT = 5
  841. CALL DSYEV_2STAGE( 'N', 'U', 2, A, 1, X, W, 3, INFO )
  842. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  843. INFOT = 8
  844. CALL DSYEV_2STAGE( 'N', 'U', 1, A, 1, X, W, 1, INFO )
  845. CALL CHKXER( 'DSYEV_2STAGE ', INFOT, NOUT, LERR, OK )
  846. NT = NT + 6
  847. *
  848. * DSYEVX
  849. *
  850. SRNAMT = 'DSYEVX'
  851. INFOT = 1
  852. CALL DSYEVX( '/', 'A', 'U', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  853. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  854. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  855. INFOT = 2
  856. CALL DSYEVX( 'N', '/', 'U', 0, A, 1, 0.0D0, 1.0D0, 1, 0, 0.0D0,
  857. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  858. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  859. INFOT = 3
  860. CALL DSYEVX( 'N', 'A', '/', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  861. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  862. INFOT = 4
  863. CALL DSYEVX( 'N', 'A', 'U', -1, A, 1, 0.0D0, 0.0D0, 0, 0,
  864. $ 0.0D0, M, X, Z, 1, W, 1, IW, I3, INFO )
  865. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  866. INFOT = 6
  867. CALL DSYEVX( 'N', 'A', 'U', 2, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  868. $ M, X, Z, 1, W, 16, IW, I3, INFO )
  869. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  870. INFOT = 8
  871. CALL DSYEVX( 'N', 'V', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  872. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  873. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  874. INFOT = 9
  875. CALL DSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  876. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  877. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  878. INFOT = 9
  879. CALL DSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 2, 1, 0.0D0,
  880. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  881. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  882. INFOT = 10
  883. CALL DSYEVX( 'N', 'I', 'U', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
  884. $ M, X, Z, 1, W, 16, IW, I3, INFO )
  885. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  886. INFOT = 10
  887. CALL DSYEVX( 'N', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 2, 0.0D0,
  888. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  889. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  890. INFOT = 15
  891. CALL DSYEVX( 'V', 'A', 'U', 2, A, 2, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  892. $ M, X, Z, 1, W, 16, IW, I3, INFO )
  893. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  894. INFOT = 17
  895. CALL DSYEVX( 'V', 'A', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  896. $ M, X, Z, 1, W, 0, IW, I3, INFO )
  897. CALL CHKXER( 'DSYEVX', INFOT, NOUT, LERR, OK )
  898. NT = NT + 12
  899. *
  900. * DSYEVX_2STAGE
  901. *
  902. SRNAMT = 'DSYEVX_2STAGE'
  903. INFOT = 1
  904. CALL DSYEVX_2STAGE( '/', 'A', 'U', 0, A, 1,
  905. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  906. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  907. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  908. INFOT = 1
  909. CALL DSYEVX_2STAGE( 'V', 'A', 'U', 0, A, 1,
  910. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  911. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  912. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  913. INFOT = 2
  914. CALL DSYEVX_2STAGE( 'N', '/', 'U', 0, A, 1,
  915. $ 0.0D0, 1.0D0, 1, 0, 0.0D0,
  916. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  917. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  918. INFOT = 3
  919. CALL DSYEVX_2STAGE( 'N', 'A', '/', 0, A, 1,
  920. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  921. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  922. INFOT = 4
  923. CALL DSYEVX_2STAGE( 'N', 'A', 'U', -1, A, 1,
  924. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  925. $ M, X, Z, 1, W, 1, IW, I3, INFO )
  926. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  927. INFOT = 6
  928. CALL DSYEVX_2STAGE( 'N', 'A', 'U', 2, A, 1,
  929. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  930. $ M, X, Z, 1, W, 16, IW, I3, INFO )
  931. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  932. INFOT = 8
  933. CALL DSYEVX_2STAGE( 'N', 'V', 'U', 1, A, 1,
  934. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  935. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  936. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  937. INFOT = 9
  938. CALL DSYEVX_2STAGE( 'N', 'I', 'U', 1, A, 1,
  939. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  940. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  941. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  942. INFOT = 9
  943. CALL DSYEVX_2STAGE( 'N', 'I', 'U', 1, A, 1,
  944. $ 0.0D0, 0.0D0, 2, 1, 0.0D0,
  945. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  946. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  947. INFOT = 10
  948. CALL DSYEVX_2STAGE( 'N', 'I', 'U', 2, A, 2,
  949. $ 0.0D0, 0.0D0, 2, 1, 0.0D0,
  950. $ M, X, Z, 1, W, 16, IW, I3, INFO )
  951. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  952. INFOT = 10
  953. CALL DSYEVX_2STAGE( 'N', 'I', 'U', 1, A, 1,
  954. $ 0.0D0, 0.0D0, 1, 2, 0.0D0,
  955. $ M, X, Z, 1, W, 8, IW, I3, INFO )
  956. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  957. INFOT = 15
  958. CALL DSYEVX_2STAGE( 'N', 'A', 'U', 2, A, 2,
  959. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  960. $ M, X, Z, 0, W, 16, IW, I3, INFO )
  961. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  962. INFOT = 17
  963. CALL DSYEVX_2STAGE( 'N', 'A', 'U', 1, A, 1,
  964. $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
  965. $ M, X, Z, 1, W, 0, IW, I3, INFO )
  966. CALL CHKXER( 'DSYEVX_2STAGE', INFOT, NOUT, LERR, OK )
  967. NT = NT + 13
  968. *
  969. * DSPEVD
  970. *
  971. SRNAMT = 'DSPEVD'
  972. INFOT = 1
  973. CALL DSPEVD( '/', 'U', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
  974. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  975. INFOT = 2
  976. CALL DSPEVD( 'N', '/', 0, A, X, Z, 1, W, 1, IW, 1, INFO )
  977. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  978. INFOT = 3
  979. CALL DSPEVD( 'N', 'U', -1, A, X, Z, 1, W, 1, IW, 1, INFO )
  980. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  981. INFOT = 7
  982. CALL DSPEVD( 'V', 'U', 2, A, X, Z, 1, W, 23, IW, 12, INFO )
  983. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  984. INFOT = 9
  985. CALL DSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 0, IW, 1, INFO )
  986. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  987. INFOT = 9
  988. CALL DSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 3, IW, 1, INFO )
  989. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  990. INFOT = 9
  991. CALL DSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 16, IW, 12, INFO )
  992. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  993. INFOT = 11
  994. CALL DSPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, IW, 0, INFO )
  995. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  996. INFOT = 11
  997. CALL DSPEVD( 'N', 'U', 2, A, X, Z, 1, W, 4, IW, 0, INFO )
  998. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  999. INFOT = 11
  1000. CALL DSPEVD( 'V', 'U', 2, A, X, Z, 2, W, 23, IW, 11, INFO )
  1001. CALL CHKXER( 'DSPEVD', INFOT, NOUT, LERR, OK )
  1002. NT = NT + 10
  1003. *
  1004. * DSPEV
  1005. *
  1006. SRNAMT = 'DSPEV '
  1007. INFOT = 1
  1008. CALL DSPEV( '/', 'U', 0, A, W, Z, 1, X, INFO )
  1009. CALL CHKXER( 'DSPEV ', INFOT, NOUT, LERR, OK )
  1010. INFOT = 2
  1011. CALL DSPEV( 'N', '/', 0, A, W, Z, 1, X, INFO )
  1012. CALL CHKXER( 'DSPEV ', INFOT, NOUT, LERR, OK )
  1013. INFOT = 3
  1014. CALL DSPEV( 'N', 'U', -1, A, W, Z, 1, X, INFO )
  1015. CALL CHKXER( 'DSPEV ', INFOT, NOUT, LERR, OK )
  1016. INFOT = 7
  1017. CALL DSPEV( 'V', 'U', 2, A, W, Z, 1, X, INFO )
  1018. CALL CHKXER( 'DSPEV ', INFOT, NOUT, LERR, OK )
  1019. NT = NT + 4
  1020. *
  1021. * DSPEVX
  1022. *
  1023. SRNAMT = 'DSPEVX'
  1024. INFOT = 1
  1025. CALL DSPEVX( '/', 'A', 'U', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1026. $ X, Z, 1, W, IW, I3, INFO )
  1027. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1028. INFOT = 2
  1029. CALL DSPEVX( 'N', '/', 'U', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1030. $ X, Z, 1, W, IW, I3, INFO )
  1031. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1032. INFOT = 3
  1033. CALL DSPEVX( 'N', 'A', '/', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1034. $ X, Z, 1, W, IW, I3, INFO )
  1035. INFOT = 4
  1036. CALL DSPEVX( 'N', 'A', 'U', -1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0,
  1037. $ M, X, Z, 1, W, IW, I3, INFO )
  1038. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1039. INFOT = 7
  1040. CALL DSPEVX( 'N', 'V', 'U', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1041. $ X, Z, 1, W, IW, I3, INFO )
  1042. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1043. INFOT = 8
  1044. CALL DSPEVX( 'N', 'I', 'U', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1045. $ X, Z, 1, W, IW, I3, INFO )
  1046. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1047. INFOT = 8
  1048. CALL DSPEVX( 'N', 'I', 'U', 1, A, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
  1049. $ X, Z, 1, W, IW, I3, INFO )
  1050. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1051. INFOT = 9
  1052. CALL DSPEVX( 'N', 'I', 'U', 2, A, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
  1053. $ X, Z, 1, W, IW, I3, INFO )
  1054. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1055. INFOT = 9
  1056. CALL DSPEVX( 'N', 'I', 'U', 1, A, 0.0D0, 0.0D0, 1, 2, 0.0D0, M,
  1057. $ X, Z, 1, W, IW, I3, INFO )
  1058. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1059. INFOT = 14
  1060. CALL DSPEVX( 'V', 'A', 'U', 2, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
  1061. $ X, Z, 1, W, IW, I3, INFO )
  1062. CALL CHKXER( 'DSPEVX', INFOT, NOUT, LERR, OK )
  1063. NT = NT + 10
  1064. *
  1065. * Test error exits for the SB path.
  1066. *
  1067. ELSE IF( LSAMEN( 2, C2, 'SB' ) ) THEN
  1068. *
  1069. * DSBTRD
  1070. *
  1071. SRNAMT = 'DSBTRD'
  1072. INFOT = 1
  1073. CALL DSBTRD( '/', 'U', 0, 0, A, 1, D, E, Z, 1, W, INFO )
  1074. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1075. INFOT = 2
  1076. CALL DSBTRD( 'N', '/', 0, 0, A, 1, D, E, Z, 1, W, INFO )
  1077. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1078. INFOT = 3
  1079. CALL DSBTRD( 'N', 'U', -1, 0, A, 1, D, E, Z, 1, W, INFO )
  1080. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1081. INFOT = 4
  1082. CALL DSBTRD( 'N', 'U', 0, -1, A, 1, D, E, Z, 1, W, INFO )
  1083. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1084. INFOT = 6
  1085. CALL DSBTRD( 'N', 'U', 1, 1, A, 1, D, E, Z, 1, W, INFO )
  1086. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1087. INFOT = 10
  1088. CALL DSBTRD( 'V', 'U', 2, 0, A, 1, D, E, Z, 1, W, INFO )
  1089. CALL CHKXER( 'DSBTRD', INFOT, NOUT, LERR, OK )
  1090. NT = NT + 6
  1091. *
  1092. * DSYTRD_SB2ST
  1093. *
  1094. SRNAMT = 'DSYTRD_SB2ST'
  1095. INFOT = 1
  1096. CALL DSYTRD_SB2ST( '/', 'N', 'U', 0, 0, A, 1, D, E,
  1097. $ C, 1, W, 1, INFO )
  1098. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1099. INFOT = 2
  1100. CALL DSYTRD_SB2ST( 'N', '/', 'U', 0, 0, A, 1, D, E,
  1101. $ C, 1, W, 1, INFO )
  1102. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1103. INFOT = 2
  1104. CALL DSYTRD_SB2ST( 'N', 'H', 'U', 0, 0, A, 1, D, E,
  1105. $ C, 1, W, 1, INFO )
  1106. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1107. INFOT = 3
  1108. CALL DSYTRD_SB2ST( 'N', 'N', '/', 0, 0, A, 1, D, E,
  1109. $ C, 1, W, 1, INFO )
  1110. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1111. INFOT = 4
  1112. CALL DSYTRD_SB2ST( 'N', 'N', 'U', -1, 0, A, 1, D, E,
  1113. $ C, 1, W, 1, INFO )
  1114. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1115. INFOT = 5
  1116. CALL DSYTRD_SB2ST( 'N', 'N', 'U', 0, -1, A, 1, D, E,
  1117. $ C, 1, W, 1, INFO )
  1118. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1119. INFOT = 7
  1120. CALL DSYTRD_SB2ST( 'N', 'N', 'U', 0, 1, A, 1, D, E,
  1121. $ C, 1, W, 1, INFO )
  1122. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1123. INFOT = 11
  1124. CALL DSYTRD_SB2ST( 'N', 'N', 'U', 0, 0, A, 1, D, E,
  1125. $ C, 0, W, 1, INFO )
  1126. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1127. INFOT = 13
  1128. CALL DSYTRD_SB2ST( 'N', 'N', 'U', 0, 0, A, 1, D, E,
  1129. $ C, 1, W, 0, INFO )
  1130. CALL CHKXER( 'DSYTRD_SB2ST', INFOT, NOUT, LERR, OK )
  1131. NT = NT + 9
  1132. *
  1133. * DSBEVD
  1134. *
  1135. SRNAMT = 'DSBEVD'
  1136. INFOT = 1
  1137. CALL DSBEVD( '/', 'U', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
  1138. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1139. INFOT = 2
  1140. CALL DSBEVD( 'N', '/', 0, 0, A, 1, X, Z, 1, W, 1, IW, 1, INFO )
  1141. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1142. INFOT = 3
  1143. CALL DSBEVD( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, 1, IW, 1,
  1144. $ INFO )
  1145. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1146. INFOT = 4
  1147. CALL DSBEVD( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, 1, IW, 1,
  1148. $ INFO )
  1149. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1150. INFOT = 6
  1151. CALL DSBEVD( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, 4, IW, 1, INFO )
  1152. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1153. INFOT = 9
  1154. CALL DSBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 1, W, 25, IW, 12,
  1155. $ INFO )
  1156. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1157. INFOT = 11
  1158. CALL DSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 0, IW, 1, INFO )
  1159. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1160. INFOT = 11
  1161. CALL DSBEVD( 'N', 'U', 2, 0, A, 1, X, Z, 1, W, 3, IW, 1, INFO )
  1162. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1163. INFOT = 11
  1164. CALL DSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 18, IW, 12,
  1165. $ INFO )
  1166. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1167. INFOT = 13
  1168. CALL DSBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 1, IW, 0, INFO )
  1169. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1170. INFOT = 13
  1171. CALL DSBEVD( 'V', 'U', 2, 0, A, 1, X, Z, 2, W, 25, IW, 11,
  1172. $ INFO )
  1173. CALL CHKXER( 'DSBEVD', INFOT, NOUT, LERR, OK )
  1174. NT = NT + 11
  1175. *
  1176. * DSBEVD_2STAGE
  1177. *
  1178. SRNAMT = 'DSBEVD_2STAGE'
  1179. INFOT = 1
  1180. CALL DSBEVD_2STAGE( '/', 'U', 0, 0, A, 1, X, Z, 1, W,
  1181. $ 1, IW, 1, INFO )
  1182. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1183. INFOT = 1
  1184. CALL DSBEVD_2STAGE( 'V', 'U', 0, 0, A, 1, X, Z, 1, W,
  1185. $ 1, IW, 1, INFO )
  1186. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1187. INFOT = 2
  1188. CALL DSBEVD_2STAGE( 'N', '/', 0, 0, A, 1, X, Z, 1, W,
  1189. $ 1, IW, 1, INFO )
  1190. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1191. INFOT = 3
  1192. CALL DSBEVD_2STAGE( 'N', 'U', -1, 0, A, 1, X, Z, 1, W,
  1193. $ 1, IW, 1, INFO )
  1194. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1195. INFOT = 4
  1196. CALL DSBEVD_2STAGE( 'N', 'U', 0, -1, A, 1, X, Z, 1, W,
  1197. $ 1, IW, 1, INFO )
  1198. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1199. INFOT = 6
  1200. CALL DSBEVD_2STAGE( 'N', 'U', 2, 1, A, 1, X, Z, 1, W,
  1201. $ 4, IW, 1, INFO )
  1202. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1203. * INFOT = 9
  1204. * CALL DSBEVD_2STAGE( 'V', 'U', 2, 1, A, 2, X, Z, 1, W,
  1205. * $ 25, IW, 12, INFO )
  1206. * CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1207. INFOT = 11
  1208. CALL DSBEVD_2STAGE( 'N', 'U', 1, 0, A, 1, X, Z, 1, W,
  1209. $ 0, IW, 1, INFO )
  1210. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1211. INFOT = 11
  1212. CALL DSBEVD_2STAGE( 'N', 'U', 2, 0, A, 1, X, Z, 1, W,
  1213. $ 3, IW, 1, INFO )
  1214. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1215. * INFOT = 11
  1216. * CALL DSBEVD_2STAGE( 'V', 'U', 2, 0, A, 1, X, Z, 2, W,
  1217. * $ 18, IW, 12, INFO )
  1218. * CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1219. INFOT = 13
  1220. CALL DSBEVD_2STAGE( 'N', 'U', 1, 0, A, 1, X, Z, 1, W,
  1221. $ 1, IW, 0, INFO )
  1222. CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1223. * INFOT = 13
  1224. * CALL DSBEVD_2STAGE( 'V', 'U', 2, 0, A, 1, X, Z, 2, W,
  1225. * $ 25, IW, 11, INFO )
  1226. * CALL CHKXER( 'DSBEVD_2STAGE', INFOT, NOUT, LERR, OK )
  1227. * NT = NT + 12
  1228. NT = NT + 9
  1229. *
  1230. * DSBEV
  1231. *
  1232. SRNAMT = 'DSBEV '
  1233. INFOT = 1
  1234. CALL DSBEV( '/', 'U', 0, 0, A, 1, X, Z, 1, W, INFO )
  1235. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1236. INFOT = 2
  1237. CALL DSBEV( 'N', '/', 0, 0, A, 1, X, Z, 1, W, INFO )
  1238. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1239. INFOT = 3
  1240. CALL DSBEV( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, INFO )
  1241. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1242. INFOT = 4
  1243. CALL DSBEV( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, INFO )
  1244. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1245. INFOT = 6
  1246. CALL DSBEV( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, INFO )
  1247. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1248. INFOT = 9
  1249. CALL DSBEV( 'V', 'U', 2, 0, A, 1, X, Z, 1, W, INFO )
  1250. CALL CHKXER( 'DSBEV ', INFOT, NOUT, LERR, OK )
  1251. NT = NT + 6
  1252. *
  1253. * DSBEV_2STAGE
  1254. *
  1255. SRNAMT = 'DSBEV_2STAGE '
  1256. INFOT = 1
  1257. CALL DSBEV_2STAGE( '/', 'U', 0, 0, A, 1, X, Z, 1, W, 0, INFO )
  1258. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1259. INFOT = 1
  1260. CALL DSBEV_2STAGE( 'V', 'U', 0, 0, A, 1, X, Z, 1, W, 0, INFO )
  1261. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1262. INFOT = 2
  1263. CALL DSBEV_2STAGE( 'N', '/', 0, 0, A, 1, X, Z, 1, W, 0, INFO )
  1264. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1265. INFOT = 3
  1266. CALL DSBEV_2STAGE( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, 0, INFO )
  1267. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1268. INFOT = 4
  1269. CALL DSBEV_2STAGE( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, 0, INFO )
  1270. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1271. INFOT = 6
  1272. CALL DSBEV_2STAGE( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, 0, INFO )
  1273. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1274. INFOT = 9
  1275. CALL DSBEV_2STAGE( 'N', 'U', 2, 0, A, 1, X, Z, 0, W, 0, INFO )
  1276. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1277. INFOT = 11
  1278. CALL DSBEV_2STAGE( 'N', 'U', 0, 0, A, 1, X, Z, 1, W, 0, INFO )
  1279. CALL CHKXER( 'DSBEV_2STAGE ', INFOT, NOUT, LERR, OK )
  1280. NT = NT + 8
  1281. *
  1282. * DSBEVX
  1283. *
  1284. SRNAMT = 'DSBEVX'
  1285. INFOT = 1
  1286. CALL DSBEVX( '/', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1287. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1288. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1289. INFOT = 2
  1290. CALL DSBEVX( 'N', '/', 'U', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1291. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1292. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1293. INFOT = 3
  1294. CALL DSBEVX( 'N', 'A', '/', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1295. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1296. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1297. INFOT = 4
  1298. CALL DSBEVX( 'N', 'A', 'U', -1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1299. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1300. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1301. INFOT = 5
  1302. CALL DSBEVX( 'N', 'A', 'U', 0, -1, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1303. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1304. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1305. INFOT = 7
  1306. CALL DSBEVX( 'N', 'A', 'U', 2, 1, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1307. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1308. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1309. INFOT = 9
  1310. CALL DSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1311. $ 0, 0.0D0, M, X, Z, 2, W, IW, I3, INFO )
  1312. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1313. INFOT = 11
  1314. CALL DSBEVX( 'N', 'V', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1315. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1316. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1317. INFOT = 12
  1318. CALL DSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
  1319. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1320. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1321. INFOT = 12
  1322. CALL DSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 2,
  1323. $ 1, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1324. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1325. INFOT = 13
  1326. CALL DSBEVX( 'N', 'I', 'U', 2, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 2,
  1327. $ 1, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1328. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1329. INFOT = 13
  1330. CALL DSBEVX( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 1,
  1331. $ 2, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1332. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1333. INFOT = 18
  1334. CALL DSBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 2, 0.0D0, 0.0D0, 0,
  1335. $ 0, 0.0D0, M, X, Z, 1, W, IW, I3, INFO )
  1336. CALL CHKXER( 'DSBEVX', INFOT, NOUT, LERR, OK )
  1337. NT = NT + 13
  1338. *
  1339. * DSBEVX_2STAGE
  1340. *
  1341. SRNAMT = 'DSBEVX_2STAGE'
  1342. INFOT = 1
  1343. CALL DSBEVX_2STAGE( '/', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0D0,
  1344. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1345. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1346. INFOT = 1
  1347. CALL DSBEVX_2STAGE( 'V', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0D0,
  1348. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1349. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1350. INFOT = 2
  1351. CALL DSBEVX_2STAGE( 'N', '/', 'U', 0, 0, A, 1, Q, 1, 0.0D0,
  1352. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1353. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1354. INFOT = 3
  1355. CALL DSBEVX_2STAGE( 'N', 'A', '/', 0, 0, A, 1, Q, 1, 0.0D0,
  1356. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1357. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1358. INFOT = 4
  1359. CALL DSBEVX_2STAGE( 'N', 'A', 'U', -1, 0, A, 1, Q, 1, 0.0D0,
  1360. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1361. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1362. INFOT = 5
  1363. CALL DSBEVX_2STAGE( 'N', 'A', 'U', 0, -1, A, 1, Q, 1, 0.0D0,
  1364. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1365. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1366. INFOT = 7
  1367. CALL DSBEVX_2STAGE( 'N', 'A', 'U', 2, 1, A, 1, Q, 1, 0.0D0,
  1368. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1369. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1370. * INFOT = 9
  1371. * CALL DSBEVX_2STAGE( 'V', 'A', 'U', 2, 0, A, 1, Q, 1, 0.0D0,
  1372. * $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 2, W, 0, IW, I3, INFO )
  1373. * CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1374. INFOT = 11
  1375. CALL DSBEVX_2STAGE( 'N', 'V', 'U', 1, 0, A, 1, Q, 1, 0.0D0,
  1376. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1377. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1378. INFOT = 12
  1379. CALL DSBEVX_2STAGE( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0,
  1380. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1381. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1382. INFOT = 12
  1383. CALL DSBEVX_2STAGE( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0,
  1384. $ 0.0D0, 2, 1, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1385. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1386. INFOT = 13
  1387. CALL DSBEVX_2STAGE( 'N', 'I', 'U', 2, 0, A, 1, Q, 1, 0.0D0,
  1388. $ 0.0D0, 2, 1, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1389. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1390. INFOT = 13
  1391. CALL DSBEVX_2STAGE( 'N', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0,
  1392. $ 0.0D0, 1, 2, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1393. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1394. * INFOT = 18
  1395. * CALL DSBEVX_2STAGE( 'V', 'A', 'U', 2, 0, A, 1, Q, 2, 0.0D0,
  1396. * $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1397. * CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1398. INFOT = 20
  1399. CALL DSBEVX_2STAGE( 'N', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0D0,
  1400. $ 0.0D0, 0, 0, 0.0D0, M, X, Z, 1, W, 0, IW, I3, INFO )
  1401. CALL CHKXER( 'DSBEVX_2STAGE', INFOT, NOUT, LERR, OK )
  1402. * NT = NT + 15
  1403. NT = NT + 13
  1404. END IF
  1405. *
  1406. * Print a summary line.
  1407. *
  1408. IF( OK ) THEN
  1409. WRITE( NOUT, FMT = 9999 )PATH, NT
  1410. ELSE
  1411. WRITE( NOUT, FMT = 9998 )PATH
  1412. END IF
  1413. *
  1414. 9999 FORMAT( 1X, A3, ' routines passed the tests of the error exits',
  1415. $ ' (', I3, ' tests done)' )
  1416. 9998 FORMAT( ' *** ', A3, ' routines failed the tests of the error ',
  1417. $ 'exits ***' )
  1418. *
  1419. RETURN
  1420. *
  1421. * End of DERRST
  1422. *
  1423. END