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

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