1 //
2 // Copyright (c) 2003--2009
3 // Toon Knapen, Karl Meerbergen, Kresimir Fresl,
4 // Thomas Klimpel and Rutger ter Borg
5 //
6 // Distributed under the Boost Software License, Version 1.0.
7 // (See accompanying file LICENSE_1_0.txt or copy at
8 // http://www.boost.org/LICENSE_1_0.txt)
9 //
10 // THIS FILE IS AUTOMATICALLY GENERATED
11 // PLEASE DO NOT EDIT!
12 //
13 
14 #ifndef BOOST_NUMERIC_BINDINGS_LAPACK_DETAIL_LAPACK_H
15 #define BOOST_NUMERIC_BINDINGS_LAPACK_DETAIL_LAPACK_H
16 
17 #include <boost/numeric/bindings/lapack/detail/lapack_names.h>
18 
19 extern "C" {
20 
21 //
22 // LAPACK computational routines
23 //
24 
25 // Value-type variants of hbgst
26 void LAPACK_CHBGST( const char* vect, const char* uplo,
27         const fortran_int_t* n, const fortran_int_t* ka,
28         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
29         const void* bb, const fortran_int_t* ldbb, void* x,
30         const fortran_int_t* ldx, void* work, float* rwork,
31         fortran_int_t* info );
32 void LAPACK_ZHBGST( const char* vect, const char* uplo,
33         const fortran_int_t* n, const fortran_int_t* ka,
34         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
35         const void* bb, const fortran_int_t* ldbb, void* x,
36         const fortran_int_t* ldx, void* work, double* rwork,
37         fortran_int_t* info );
38 
39 // Value-type variants of hegst
40 void LAPACK_CHEGST( const fortran_int_t* itype, const char* uplo,
41         const fortran_int_t* n, void* a, const fortran_int_t* lda,
42         const void* b, const fortran_int_t* ldb, fortran_int_t* info );
43 void LAPACK_ZHEGST( const fortran_int_t* itype, const char* uplo,
44         const fortran_int_t* n, void* a, const fortran_int_t* lda,
45         const void* b, const fortran_int_t* ldb, fortran_int_t* info );
46 
47 // Value-type variants of pbstf
48 void LAPACK_SPBSTF( const char* uplo, const fortran_int_t* n,
49         const fortran_int_t* kd, float* ab, const fortran_int_t* ldab,
50         fortran_int_t* info );
51 void LAPACK_DPBSTF( const char* uplo, const fortran_int_t* n,
52         const fortran_int_t* kd, double* ab, const fortran_int_t* ldab,
53         fortran_int_t* info );
54 void LAPACK_CPBSTF( const char* uplo, const fortran_int_t* n,
55         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
56         fortran_int_t* info );
57 void LAPACK_ZPBSTF( const char* uplo, const fortran_int_t* n,
58         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
59         fortran_int_t* info );
60 
61 // Value-type variants of sbgst
62 void LAPACK_SSBGST( const char* vect, const char* uplo,
63         const fortran_int_t* n, const fortran_int_t* ka,
64         const fortran_int_t* kb, float* ab, const fortran_int_t* ldab,
65         const float* bb, const fortran_int_t* ldbb, float* x,
66         const fortran_int_t* ldx, float* work, fortran_int_t* info );
67 void LAPACK_DSBGST( const char* vect, const char* uplo,
68         const fortran_int_t* n, const fortran_int_t* ka,
69         const fortran_int_t* kb, double* ab, const fortran_int_t* ldab,
70         const double* bb, const fortran_int_t* ldbb, double* x,
71         const fortran_int_t* ldx, double* work, fortran_int_t* info );
72 
73 // Value-type variants of sygst
74 void LAPACK_SSYGST( const fortran_int_t* itype, const char* uplo,
75         const fortran_int_t* n, float* a, const fortran_int_t* lda,
76         const float* b, const fortran_int_t* ldb, fortran_int_t* info );
77 void LAPACK_DSYGST( const fortran_int_t* itype, const char* uplo,
78         const fortran_int_t* n, double* a, const fortran_int_t* lda,
79         const double* b, const fortran_int_t* ldb, fortran_int_t* info );
80 
81 // Value-type variants of ggqrf
82 void LAPACK_SGGQRF( const fortran_int_t* n, const fortran_int_t* m,
83         const fortran_int_t* p, float* a, const fortran_int_t* lda,
84         float* taua, float* b, const fortran_int_t* ldb, float* taub,
85         float* work, const fortran_int_t* lwork, fortran_int_t* info );
86 void LAPACK_DGGQRF( const fortran_int_t* n, const fortran_int_t* m,
87         const fortran_int_t* p, double* a, const fortran_int_t* lda,
88         double* taua, double* b, const fortran_int_t* ldb, double* taub,
89         double* work, const fortran_int_t* lwork, fortran_int_t* info );
90 void LAPACK_CGGQRF( const fortran_int_t* n, const fortran_int_t* m,
91         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* taua,
92         void* b, const fortran_int_t* ldb, void* taub, void* work,
93         const fortran_int_t* lwork, fortran_int_t* info );
94 void LAPACK_ZGGQRF( const fortran_int_t* n, const fortran_int_t* m,
95         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* taua,
96         void* b, const fortran_int_t* ldb, void* taub, void* work,
97         const fortran_int_t* lwork, fortran_int_t* info );
98 
99 // Value-type variants of ggrqf
100 void LAPACK_SGGRQF( const fortran_int_t* m, const fortran_int_t* p,
101         const fortran_int_t* n, float* a, const fortran_int_t* lda,
102         float* taua, float* b, const fortran_int_t* ldb, float* taub,
103         float* work, const fortran_int_t* lwork, fortran_int_t* info );
104 void LAPACK_DGGRQF( const fortran_int_t* m, const fortran_int_t* p,
105         const fortran_int_t* n, double* a, const fortran_int_t* lda,
106         double* taua, double* b, const fortran_int_t* ldb, double* taub,
107         double* work, const fortran_int_t* lwork, fortran_int_t* info );
108 void LAPACK_CGGRQF( const fortran_int_t* m, const fortran_int_t* p,
109         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* taua,
110         void* b, const fortran_int_t* ldb, void* taub, void* work,
111         const fortran_int_t* lwork, fortran_int_t* info );
112 void LAPACK_ZGGRQF( const fortran_int_t* m, const fortran_int_t* p,
113         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* taua,
114         void* b, const fortran_int_t* ldb, void* taub, void* work,
115         const fortran_int_t* lwork, fortran_int_t* info );
116 
117 // Value-type variants of gelqf
118 void LAPACK_SGELQF( const fortran_int_t* m, const fortran_int_t* n, float* a,
119         const fortran_int_t* lda, float* tau, float* work,
120         const fortran_int_t* lwork, fortran_int_t* info );
121 void LAPACK_DGELQF( const fortran_int_t* m, const fortran_int_t* n, double* a,
122         const fortran_int_t* lda, double* tau, double* work,
123         const fortran_int_t* lwork, fortran_int_t* info );
124 void LAPACK_CGELQF( const fortran_int_t* m, const fortran_int_t* n, void* a,
125         const fortran_int_t* lda, void* tau, void* work,
126         const fortran_int_t* lwork, fortran_int_t* info );
127 void LAPACK_ZGELQF( const fortran_int_t* m, const fortran_int_t* n, void* a,
128         const fortran_int_t* lda, void* tau, void* work,
129         const fortran_int_t* lwork, fortran_int_t* info );
130 
131 // Value-type variants of geqlf
132 void LAPACK_SGEQLF( const fortran_int_t* m, const fortran_int_t* n, float* a,
133         const fortran_int_t* lda, float* tau, float* work,
134         const fortran_int_t* lwork, fortran_int_t* info );
135 void LAPACK_DGEQLF( const fortran_int_t* m, const fortran_int_t* n, double* a,
136         const fortran_int_t* lda, double* tau, double* work,
137         const fortran_int_t* lwork, fortran_int_t* info );
138 void LAPACK_CGEQLF( const fortran_int_t* m, const fortran_int_t* n, void* a,
139         const fortran_int_t* lda, void* tau, void* work,
140         const fortran_int_t* lwork, fortran_int_t* info );
141 void LAPACK_ZGEQLF( const fortran_int_t* m, const fortran_int_t* n, void* a,
142         const fortran_int_t* lda, void* tau, void* work,
143         const fortran_int_t* lwork, fortran_int_t* info );
144 
145 // Value-type variants of geqp3
146 void LAPACK_SGEQP3( const fortran_int_t* m, const fortran_int_t* n, float* a,
147         const fortran_int_t* lda, fortran_int_t* jpvt, float* tau,
148         float* work, const fortran_int_t* lwork, fortran_int_t* info );
149 void LAPACK_DGEQP3( const fortran_int_t* m, const fortran_int_t* n, double* a,
150         const fortran_int_t* lda, fortran_int_t* jpvt, double* tau,
151         double* work, const fortran_int_t* lwork, fortran_int_t* info );
152 void LAPACK_CGEQP3( const fortran_int_t* m, const fortran_int_t* n, void* a,
153         const fortran_int_t* lda, fortran_int_t* jpvt, void* tau, void* work,
154         const fortran_int_t* lwork, float* rwork, fortran_int_t* info );
155 void LAPACK_ZGEQP3( const fortran_int_t* m, const fortran_int_t* n, void* a,
156         const fortran_int_t* lda, fortran_int_t* jpvt, void* tau, void* work,
157         const fortran_int_t* lwork, double* rwork, fortran_int_t* info );
158 
159 // Value-type variants of geqrf
160 void LAPACK_SGEQRF( const fortran_int_t* m, const fortran_int_t* n, float* a,
161         const fortran_int_t* lda, float* tau, float* work,
162         const fortran_int_t* lwork, fortran_int_t* info );
163 void LAPACK_DGEQRF( const fortran_int_t* m, const fortran_int_t* n, double* a,
164         const fortran_int_t* lda, double* tau, double* work,
165         const fortran_int_t* lwork, fortran_int_t* info );
166 void LAPACK_CGEQRF( const fortran_int_t* m, const fortran_int_t* n, void* a,
167         const fortran_int_t* lda, void* tau, void* work,
168         const fortran_int_t* lwork, fortran_int_t* info );
169 void LAPACK_ZGEQRF( const fortran_int_t* m, const fortran_int_t* n, void* a,
170         const fortran_int_t* lda, void* tau, void* work,
171         const fortran_int_t* lwork, fortran_int_t* info );
172 
173 // Value-type variants of gerqf
174 void LAPACK_SGERQF( const fortran_int_t* m, const fortran_int_t* n, float* a,
175         const fortran_int_t* lda, float* tau, float* work,
176         const fortran_int_t* lwork, fortran_int_t* info );
177 void LAPACK_DGERQF( const fortran_int_t* m, const fortran_int_t* n, double* a,
178         const fortran_int_t* lda, double* tau, double* work,
179         const fortran_int_t* lwork, fortran_int_t* info );
180 void LAPACK_CGERQF( const fortran_int_t* m, const fortran_int_t* n, void* a,
181         const fortran_int_t* lda, void* tau, void* work,
182         const fortran_int_t* lwork, fortran_int_t* info );
183 void LAPACK_ZGERQF( const fortran_int_t* m, const fortran_int_t* n, void* a,
184         const fortran_int_t* lda, void* tau, void* work,
185         const fortran_int_t* lwork, fortran_int_t* info );
186 
187 // Value-type variants of orglq
188 void LAPACK_SORGLQ( const fortran_int_t* m, const fortran_int_t* n,
189         const fortran_int_t* k, float* a, const fortran_int_t* lda,
190         const float* tau, float* work, const fortran_int_t* lwork,
191         fortran_int_t* info );
192 void LAPACK_DORGLQ( const fortran_int_t* m, const fortran_int_t* n,
193         const fortran_int_t* k, double* a, const fortran_int_t* lda,
194         const double* tau, double* work, const fortran_int_t* lwork,
195         fortran_int_t* info );
196 
197 // Value-type variants of orgql
198 void LAPACK_SORGQL( const fortran_int_t* m, const fortran_int_t* n,
199         const fortran_int_t* k, float* a, const fortran_int_t* lda,
200         const float* tau, float* work, const fortran_int_t* lwork,
201         fortran_int_t* info );
202 void LAPACK_DORGQL( const fortran_int_t* m, const fortran_int_t* n,
203         const fortran_int_t* k, double* a, const fortran_int_t* lda,
204         const double* tau, double* work, const fortran_int_t* lwork,
205         fortran_int_t* info );
206 
207 // Value-type variants of orgqr
208 void LAPACK_SORGQR( const fortran_int_t* m, const fortran_int_t* n,
209         const fortran_int_t* k, float* a, const fortran_int_t* lda,
210         const float* tau, float* work, const fortran_int_t* lwork,
211         fortran_int_t* info );
212 void LAPACK_DORGQR( const fortran_int_t* m, const fortran_int_t* n,
213         const fortran_int_t* k, double* a, const fortran_int_t* lda,
214         const double* tau, double* work, const fortran_int_t* lwork,
215         fortran_int_t* info );
216 
217 // Value-type variants of orgrq
218 void LAPACK_SORGRQ( const fortran_int_t* m, const fortran_int_t* n,
219         const fortran_int_t* k, float* a, const fortran_int_t* lda,
220         const float* tau, float* work, const fortran_int_t* lwork,
221         fortran_int_t* info );
222 void LAPACK_DORGRQ( const fortran_int_t* m, const fortran_int_t* n,
223         const fortran_int_t* k, double* a, const fortran_int_t* lda,
224         const double* tau, double* work, const fortran_int_t* lwork,
225         fortran_int_t* info );
226 
227 // Value-type variants of ormlq
228 void LAPACK_SORMLQ( const char* side, const char* trans,
229         const fortran_int_t* m, const fortran_int_t* n,
230         const fortran_int_t* k, const float* a, const fortran_int_t* lda,
231         const float* tau, float* c, const fortran_int_t* ldc, float* work,
232         const fortran_int_t* lwork, fortran_int_t* info );
233 void LAPACK_DORMLQ( const char* side, const char* trans,
234         const fortran_int_t* m, const fortran_int_t* n,
235         const fortran_int_t* k, const double* a, const fortran_int_t* lda,
236         const double* tau, double* c, const fortran_int_t* ldc, double* work,
237         const fortran_int_t* lwork, fortran_int_t* info );
238 
239 // Value-type variants of ormql
240 void LAPACK_SORMQL( const char* side, const char* trans,
241         const fortran_int_t* m, const fortran_int_t* n,
242         const fortran_int_t* k, float* a, const fortran_int_t* lda,
243         const float* tau, float* c, const fortran_int_t* ldc, float* work,
244         const fortran_int_t* lwork, fortran_int_t* info );
245 void LAPACK_DORMQL( const char* side, const char* trans,
246         const fortran_int_t* m, const fortran_int_t* n,
247         const fortran_int_t* k, double* a, const fortran_int_t* lda,
248         const double* tau, double* c, const fortran_int_t* ldc, double* work,
249         const fortran_int_t* lwork, fortran_int_t* info );
250 
251 // Value-type variants of ormqr
252 void LAPACK_SORMQR( const char* side, const char* trans,
253         const fortran_int_t* m, const fortran_int_t* n,
254         const fortran_int_t* k, const float* a, const fortran_int_t* lda,
255         const float* tau, float* c, const fortran_int_t* ldc, float* work,
256         const fortran_int_t* lwork, fortran_int_t* info );
257 void LAPACK_DORMQR( const char* side, const char* trans,
258         const fortran_int_t* m, const fortran_int_t* n,
259         const fortran_int_t* k, const double* a, const fortran_int_t* lda,
260         const double* tau, double* c, const fortran_int_t* ldc, double* work,
261         const fortran_int_t* lwork, fortran_int_t* info );
262 
263 // Value-type variants of ormrq
264 void LAPACK_SORMRQ( const char* side, const char* trans,
265         const fortran_int_t* m, const fortran_int_t* n,
266         const fortran_int_t* k, const float* a, const fortran_int_t* lda,
267         const float* tau, float* c, const fortran_int_t* ldc, float* work,
268         const fortran_int_t* lwork, fortran_int_t* info );
269 void LAPACK_DORMRQ( const char* side, const char* trans,
270         const fortran_int_t* m, const fortran_int_t* n,
271         const fortran_int_t* k, const double* a, const fortran_int_t* lda,
272         const double* tau, double* c, const fortran_int_t* ldc, double* work,
273         const fortran_int_t* lwork, fortran_int_t* info );
274 
275 // Value-type variants of ormrz
276 void LAPACK_SORMRZ( const char* side, const char* trans,
277         const fortran_int_t* m, const fortran_int_t* n,
278         const fortran_int_t* k, const fortran_int_t* l, const float* a,
279         const fortran_int_t* lda, const float* tau, float* c,
280         const fortran_int_t* ldc, float* work, const fortran_int_t* lwork,
281         fortran_int_t* info );
282 void LAPACK_DORMRZ( const char* side, const char* trans,
283         const fortran_int_t* m, const fortran_int_t* n,
284         const fortran_int_t* k, const fortran_int_t* l, const double* a,
285         const fortran_int_t* lda, const double* tau, double* c,
286         const fortran_int_t* ldc, double* work, const fortran_int_t* lwork,
287         fortran_int_t* info );
288 
289 // Value-type variants of tzrzf
290 void LAPACK_STZRZF( const fortran_int_t* m, const fortran_int_t* n, float* a,
291         const fortran_int_t* lda, float* tau, float* work,
292         const fortran_int_t* lwork, fortran_int_t* info );
293 void LAPACK_DTZRZF( const fortran_int_t* m, const fortran_int_t* n, double* a,
294         const fortran_int_t* lda, double* tau, double* work,
295         const fortran_int_t* lwork, fortran_int_t* info );
296 void LAPACK_CTZRZF( const fortran_int_t* m, const fortran_int_t* n, void* a,
297         const fortran_int_t* lda, void* tau, void* work,
298         const fortran_int_t* lwork, fortran_int_t* info );
299 void LAPACK_ZTZRZF( const fortran_int_t* m, const fortran_int_t* n, void* a,
300         const fortran_int_t* lda, void* tau, void* work,
301         const fortran_int_t* lwork, fortran_int_t* info );
302 
303 // Value-type variants of unglq
304 void LAPACK_CUNGLQ( const fortran_int_t* m, const fortran_int_t* n,
305         const fortran_int_t* k, void* a, const fortran_int_t* lda,
306         const void* tau, void* work, const fortran_int_t* lwork,
307         fortran_int_t* info );
308 void LAPACK_ZUNGLQ( const fortran_int_t* m, const fortran_int_t* n,
309         const fortran_int_t* k, void* a, const fortran_int_t* lda,
310         const void* tau, void* work, const fortran_int_t* lwork,
311         fortran_int_t* info );
312 
313 // Value-type variants of ungql
314 void LAPACK_CUNGQL( const fortran_int_t* m, const fortran_int_t* n,
315         const fortran_int_t* k, void* a, const fortran_int_t* lda,
316         const void* tau, void* work, const fortran_int_t* lwork,
317         fortran_int_t* info );
318 void LAPACK_ZUNGQL( const fortran_int_t* m, const fortran_int_t* n,
319         const fortran_int_t* k, void* a, const fortran_int_t* lda,
320         const void* tau, void* work, const fortran_int_t* lwork,
321         fortran_int_t* info );
322 
323 // Value-type variants of ungqr
324 void LAPACK_CUNGQR( const fortran_int_t* m, const fortran_int_t* n,
325         const fortran_int_t* k, void* a, const fortran_int_t* lda,
326         const void* tau, void* work, const fortran_int_t* lwork,
327         fortran_int_t* info );
328 void LAPACK_ZUNGQR( const fortran_int_t* m, const fortran_int_t* n,
329         const fortran_int_t* k, void* a, const fortran_int_t* lda,
330         const void* tau, void* work, const fortran_int_t* lwork,
331         fortran_int_t* info );
332 
333 // Value-type variants of ungrq
334 void LAPACK_CUNGRQ( const fortran_int_t* m, const fortran_int_t* n,
335         const fortran_int_t* k, void* a, const fortran_int_t* lda,
336         const void* tau, void* work, const fortran_int_t* lwork,
337         fortran_int_t* info );
338 void LAPACK_ZUNGRQ( const fortran_int_t* m, const fortran_int_t* n,
339         const fortran_int_t* k, void* a, const fortran_int_t* lda,
340         const void* tau, void* work, const fortran_int_t* lwork,
341         fortran_int_t* info );
342 
343 // Value-type variants of unmlq
344 void LAPACK_CUNMLQ( const char* side, const char* trans,
345         const fortran_int_t* m, const fortran_int_t* n,
346         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
347         const void* tau, void* c, const fortran_int_t* ldc, void* work,
348         const fortran_int_t* lwork, fortran_int_t* info );
349 void LAPACK_ZUNMLQ( const char* side, const char* trans,
350         const fortran_int_t* m, const fortran_int_t* n,
351         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
352         const void* tau, void* c, const fortran_int_t* ldc, void* work,
353         const fortran_int_t* lwork, fortran_int_t* info );
354 
355 // Value-type variants of unmql
356 void LAPACK_CUNMQL( const char* side, const char* trans,
357         const fortran_int_t* m, const fortran_int_t* n,
358         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
359         const void* tau, void* c, const fortran_int_t* ldc, void* work,
360         const fortran_int_t* lwork, fortran_int_t* info );
361 void LAPACK_ZUNMQL( const char* side, const char* trans,
362         const fortran_int_t* m, const fortran_int_t* n,
363         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
364         const void* tau, void* c, const fortran_int_t* ldc, void* work,
365         const fortran_int_t* lwork, fortran_int_t* info );
366 
367 // Value-type variants of unmqr
368 void LAPACK_CUNMQR( const char* side, const char* trans,
369         const fortran_int_t* m, const fortran_int_t* n,
370         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
371         const void* tau, void* c, const fortran_int_t* ldc, void* work,
372         const fortran_int_t* lwork, fortran_int_t* info );
373 void LAPACK_ZUNMQR( const char* side, const char* trans,
374         const fortran_int_t* m, const fortran_int_t* n,
375         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
376         const void* tau, void* c, const fortran_int_t* ldc, void* work,
377         const fortran_int_t* lwork, fortran_int_t* info );
378 
379 // Value-type variants of unmrq
380 void LAPACK_CUNMRQ( const char* side, const char* trans,
381         const fortran_int_t* m, const fortran_int_t* n,
382         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
383         const void* tau, void* c, const fortran_int_t* ldc, void* work,
384         const fortran_int_t* lwork, fortran_int_t* info );
385 void LAPACK_ZUNMRQ( const char* side, const char* trans,
386         const fortran_int_t* m, const fortran_int_t* n,
387         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
388         const void* tau, void* c, const fortran_int_t* ldc, void* work,
389         const fortran_int_t* lwork, fortran_int_t* info );
390 
391 // Value-type variants of unmrz
392 void LAPACK_CUNMRZ( const char* side, const char* trans,
393         const fortran_int_t* m, const fortran_int_t* n,
394         const fortran_int_t* k, const fortran_int_t* l, const void* a,
395         const fortran_int_t* lda, const void* tau, void* c,
396         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
397         fortran_int_t* info );
398 void LAPACK_ZUNMRZ( const char* side, const char* trans,
399         const fortran_int_t* m, const fortran_int_t* n,
400         const fortran_int_t* k, const fortran_int_t* l, const void* a,
401         const fortran_int_t* lda, const void* tau, void* c,
402         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
403         fortran_int_t* info );
404 
405 // Value-type variants of bdsdc
406 void LAPACK_SBDSDC( const char* uplo, const char* compq,
407         const fortran_int_t* n, float* d, float* e, float* u,
408         const fortran_int_t* ldu, float* vt, const fortran_int_t* ldvt,
409         float* q, fortran_int_t* iq, float* work, fortran_int_t* iwork,
410         fortran_int_t* info );
411 void LAPACK_DBDSDC( const char* uplo, const char* compq,
412         const fortran_int_t* n, double* d, double* e, double* u,
413         const fortran_int_t* ldu, double* vt, const fortran_int_t* ldvt,
414         double* q, fortran_int_t* iq, double* work, fortran_int_t* iwork,
415         fortran_int_t* info );
416 
417 // Value-type variants of bdsqr
418 void LAPACK_SBDSQR( const char* uplo, const fortran_int_t* n,
419         const fortran_int_t* ncvt, const fortran_int_t* nru,
420         const fortran_int_t* ncc, float* d, float* e, float* vt,
421         const fortran_int_t* ldvt, float* u, const fortran_int_t* ldu,
422         float* c, const fortran_int_t* ldc, float* work, fortran_int_t* info );
423 void LAPACK_DBDSQR( const char* uplo, const fortran_int_t* n,
424         const fortran_int_t* ncvt, const fortran_int_t* nru,
425         const fortran_int_t* ncc, double* d, double* e, double* vt,
426         const fortran_int_t* ldvt, double* u, const fortran_int_t* ldu,
427         double* c, const fortran_int_t* ldc, double* work,
428         fortran_int_t* info );
429 void LAPACK_CBDSQR( const char* uplo, const fortran_int_t* n,
430         const fortran_int_t* ncvt, const fortran_int_t* nru,
431         const fortran_int_t* ncc, float* d, float* e, void* vt,
432         const fortran_int_t* ldvt, void* u, const fortran_int_t* ldu, void* c,
433         const fortran_int_t* ldc, float* rwork, fortran_int_t* info );
434 void LAPACK_ZBDSQR( const char* uplo, const fortran_int_t* n,
435         const fortran_int_t* ncvt, const fortran_int_t* nru,
436         const fortran_int_t* ncc, double* d, double* e, void* vt,
437         const fortran_int_t* ldvt, void* u, const fortran_int_t* ldu, void* c,
438         const fortran_int_t* ldc, double* rwork, fortran_int_t* info );
439 
440 // Value-type variants of gbbrd
441 void LAPACK_SGBBRD( const char* vect, const fortran_int_t* m,
442         const fortran_int_t* n, const fortran_int_t* ncc,
443         const fortran_int_t* kl, const fortran_int_t* ku, float* ab,
444         const fortran_int_t* ldab, float* d, float* e, float* q,
445         const fortran_int_t* ldq, float* pt, const fortran_int_t* ldpt,
446         float* c, const fortran_int_t* ldc, float* work, fortran_int_t* info );
447 void LAPACK_DGBBRD( const char* vect, const fortran_int_t* m,
448         const fortran_int_t* n, const fortran_int_t* ncc,
449         const fortran_int_t* kl, const fortran_int_t* ku, double* ab,
450         const fortran_int_t* ldab, double* d, double* e, double* q,
451         const fortran_int_t* ldq, double* pt, const fortran_int_t* ldpt,
452         double* c, const fortran_int_t* ldc, double* work,
453         fortran_int_t* info );
454 void LAPACK_CGBBRD( const char* vect, const fortran_int_t* m,
455         const fortran_int_t* n, const fortran_int_t* ncc,
456         const fortran_int_t* kl, const fortran_int_t* ku, void* ab,
457         const fortran_int_t* ldab, float* d, float* e, void* q,
458         const fortran_int_t* ldq, void* pt, const fortran_int_t* ldpt,
459         void* c, const fortran_int_t* ldc, void* work, float* rwork,
460         fortran_int_t* info );
461 void LAPACK_ZGBBRD( const char* vect, const fortran_int_t* m,
462         const fortran_int_t* n, const fortran_int_t* ncc,
463         const fortran_int_t* kl, const fortran_int_t* ku, void* ab,
464         const fortran_int_t* ldab, double* d, double* e, void* q,
465         const fortran_int_t* ldq, void* pt, const fortran_int_t* ldpt,
466         void* c, const fortran_int_t* ldc, void* work, double* rwork,
467         fortran_int_t* info );
468 
469 // Value-type variants of gebrd
470 void LAPACK_SGEBRD( const fortran_int_t* m, const fortran_int_t* n, float* a,
471         const fortran_int_t* lda, float* d, float* e, float* tauq,
472         float* taup, float* work, const fortran_int_t* lwork,
473         fortran_int_t* info );
474 void LAPACK_DGEBRD( const fortran_int_t* m, const fortran_int_t* n, double* a,
475         const fortran_int_t* lda, double* d, double* e, double* tauq,
476         double* taup, double* work, const fortran_int_t* lwork,
477         fortran_int_t* info );
478 void LAPACK_CGEBRD( const fortran_int_t* m, const fortran_int_t* n, void* a,
479         const fortran_int_t* lda, float* d, float* e, void* tauq, void* taup,
480         void* work, const fortran_int_t* lwork, fortran_int_t* info );
481 void LAPACK_ZGEBRD( const fortran_int_t* m, const fortran_int_t* n, void* a,
482         const fortran_int_t* lda, double* d, double* e, void* tauq,
483         void* taup, void* work, const fortran_int_t* lwork,
484         fortran_int_t* info );
485 
486 // Value-type variants of orgbr
487 void LAPACK_SORGBR( const char* vect, const fortran_int_t* m,
488         const fortran_int_t* n, const fortran_int_t* k, float* a,
489         const fortran_int_t* lda, const float* tau, float* work,
490         const fortran_int_t* lwork, fortran_int_t* info );
491 void LAPACK_DORGBR( const char* vect, const fortran_int_t* m,
492         const fortran_int_t* n, const fortran_int_t* k, double* a,
493         const fortran_int_t* lda, const double* tau, double* work,
494         const fortran_int_t* lwork, fortran_int_t* info );
495 
496 // Value-type variants of ormbr
497 void LAPACK_SORMBR( const char* vect, const char* side, const char* trans,
498         const fortran_int_t* m, const fortran_int_t* n,
499         const fortran_int_t* k, const float* a, const fortran_int_t* lda,
500         const float* tau, float* c, const fortran_int_t* ldc, float* work,
501         const fortran_int_t* lwork, fortran_int_t* info );
502 void LAPACK_DORMBR( const char* vect, const char* side, const char* trans,
503         const fortran_int_t* m, const fortran_int_t* n,
504         const fortran_int_t* k, const double* a, const fortran_int_t* lda,
505         const double* tau, double* c, const fortran_int_t* ldc, double* work,
506         const fortran_int_t* lwork, fortran_int_t* info );
507 
508 // Value-type variants of ungbr
509 void LAPACK_CUNGBR( const char* vect, const fortran_int_t* m,
510         const fortran_int_t* n, const fortran_int_t* k, void* a,
511         const fortran_int_t* lda, const void* tau, void* work,
512         const fortran_int_t* lwork, fortran_int_t* info );
513 void LAPACK_ZUNGBR( const char* vect, const fortran_int_t* m,
514         const fortran_int_t* n, const fortran_int_t* k, void* a,
515         const fortran_int_t* lda, const void* tau, void* work,
516         const fortran_int_t* lwork, fortran_int_t* info );
517 
518 // Value-type variants of unmbr
519 void LAPACK_CUNMBR( const char* vect, const char* side, const char* trans,
520         const fortran_int_t* m, const fortran_int_t* n,
521         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
522         const void* tau, void* c, const fortran_int_t* ldc, void* work,
523         const fortran_int_t* lwork, fortran_int_t* info );
524 void LAPACK_ZUNMBR( const char* vect, const char* side, const char* trans,
525         const fortran_int_t* m, const fortran_int_t* n,
526         const fortran_int_t* k, const void* a, const fortran_int_t* lda,
527         const void* tau, void* c, const fortran_int_t* ldc, void* work,
528         const fortran_int_t* lwork, fortran_int_t* info );
529 
530 // Value-type variants of gebak
531 void LAPACK_SGEBAK( const char* job, const char* side, const fortran_int_t* n,
532         const fortran_int_t* ilo, const fortran_int_t* ihi,
533         const float* scale, const fortran_int_t* m, float* v,
534         const fortran_int_t* ldv, fortran_int_t* info );
535 void LAPACK_DGEBAK( const char* job, const char* side, const fortran_int_t* n,
536         const fortran_int_t* ilo, const fortran_int_t* ihi,
537         const double* scale, const fortran_int_t* m, double* v,
538         const fortran_int_t* ldv, fortran_int_t* info );
539 void LAPACK_CGEBAK( const char* job, const char* side, const fortran_int_t* n,
540         const fortran_int_t* ilo, const fortran_int_t* ihi,
541         const float* scale, const fortran_int_t* m, void* v,
542         const fortran_int_t* ldv, fortran_int_t* info );
543 void LAPACK_ZGEBAK( const char* job, const char* side, const fortran_int_t* n,
544         const fortran_int_t* ilo, const fortran_int_t* ihi,
545         const double* scale, const fortran_int_t* m, void* v,
546         const fortran_int_t* ldv, fortran_int_t* info );
547 
548 // Value-type variants of gebal
549 void LAPACK_SGEBAL( const char* job, const fortran_int_t* n, float* a,
550         const fortran_int_t* lda, fortran_int_t* ilo, fortran_int_t* ihi,
551         float* scale, fortran_int_t* info );
552 void LAPACK_DGEBAL( const char* job, const fortran_int_t* n, double* a,
553         const fortran_int_t* lda, fortran_int_t* ilo, fortran_int_t* ihi,
554         double* scale, fortran_int_t* info );
555 void LAPACK_CGEBAL( const char* job, const fortran_int_t* n, void* a,
556         const fortran_int_t* lda, fortran_int_t* ilo, fortran_int_t* ihi,
557         float* scale, fortran_int_t* info );
558 void LAPACK_ZGEBAL( const char* job, const fortran_int_t* n, void* a,
559         const fortran_int_t* lda, fortran_int_t* ilo, fortran_int_t* ihi,
560         double* scale, fortran_int_t* info );
561 
562 // Value-type variants of gehrd
563 void LAPACK_SGEHRD( const fortran_int_t* n, const fortran_int_t* ilo,
564         const fortran_int_t* ihi, float* a, const fortran_int_t* lda,
565         float* tau, float* work, const fortran_int_t* lwork,
566         fortran_int_t* info );
567 void LAPACK_DGEHRD( const fortran_int_t* n, const fortran_int_t* ilo,
568         const fortran_int_t* ihi, double* a, const fortran_int_t* lda,
569         double* tau, double* work, const fortran_int_t* lwork,
570         fortran_int_t* info );
571 void LAPACK_CGEHRD( const fortran_int_t* n, const fortran_int_t* ilo,
572         const fortran_int_t* ihi, void* a, const fortran_int_t* lda,
573         void* tau, void* work, const fortran_int_t* lwork,
574         fortran_int_t* info );
575 void LAPACK_ZGEHRD( const fortran_int_t* n, const fortran_int_t* ilo,
576         const fortran_int_t* ihi, void* a, const fortran_int_t* lda,
577         void* tau, void* work, const fortran_int_t* lwork,
578         fortran_int_t* info );
579 
580 // Value-type variants of hsein
581 void LAPACK_SHSEIN( const char* side, const char* eigsrc, const char* initv,
582         fortran_bool_t* select, const fortran_int_t* n, const float* h,
583         const fortran_int_t* ldh, float* wr, const float* wi, float* vl,
584         const fortran_int_t* ldvl, float* vr, const fortran_int_t* ldvr,
585         const fortran_int_t* mm, fortran_int_t* m, float* work,
586         fortran_int_t* ifaill, fortran_int_t* ifailr, fortran_int_t* info );
587 void LAPACK_DHSEIN( const char* side, const char* eigsrc, const char* initv,
588         fortran_bool_t* select, const fortran_int_t* n, const double* h,
589         const fortran_int_t* ldh, double* wr, const double* wi, double* vl,
590         const fortran_int_t* ldvl, double* vr, const fortran_int_t* ldvr,
591         const fortran_int_t* mm, fortran_int_t* m, double* work,
592         fortran_int_t* ifaill, fortran_int_t* ifailr, fortran_int_t* info );
593 void LAPACK_CHSEIN( const char* side, const char* eigsrc, const char* initv,
594         const fortran_bool_t* select, const fortran_int_t* n, const void* h,
595         const fortran_int_t* ldh, void* w, void* vl,
596         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
597         const fortran_int_t* mm, fortran_int_t* m, void* work, float* rwork,
598         fortran_int_t* ifaill, fortran_int_t* ifailr, fortran_int_t* info );
599 void LAPACK_ZHSEIN( const char* side, const char* eigsrc, const char* initv,
600         const fortran_bool_t* select, const fortran_int_t* n, const void* h,
601         const fortran_int_t* ldh, void* w, void* vl,
602         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
603         const fortran_int_t* mm, fortran_int_t* m, void* work, double* rwork,
604         fortran_int_t* ifaill, fortran_int_t* ifailr, fortran_int_t* info );
605 
606 // Value-type variants of hseqr
607 void LAPACK_SHSEQR( const char* job, const char* compz,
608         const fortran_int_t* n, const fortran_int_t* ilo,
609         const fortran_int_t* ihi, float* h, const fortran_int_t* ldh,
610         float* wr, float* wi, float* z, const fortran_int_t* ldz, float* work,
611         const fortran_int_t* lwork, fortran_int_t* info );
612 void LAPACK_DHSEQR( const char* job, const char* compz,
613         const fortran_int_t* n, const fortran_int_t* ilo,
614         const fortran_int_t* ihi, double* h, const fortran_int_t* ldh,
615         double* wr, double* wi, double* z, const fortran_int_t* ldz,
616         double* work, const fortran_int_t* lwork, fortran_int_t* info );
617 void LAPACK_CHSEQR( const char* job, const char* compz,
618         const fortran_int_t* n, const fortran_int_t* ilo,
619         const fortran_int_t* ihi, void* h, const fortran_int_t* ldh, void* w,
620         void* z, const fortran_int_t* ldz, void* work,
621         const fortran_int_t* lwork, fortran_int_t* info );
622 void LAPACK_ZHSEQR( const char* job, const char* compz,
623         const fortran_int_t* n, const fortran_int_t* ilo,
624         const fortran_int_t* ihi, void* h, const fortran_int_t* ldh, void* w,
625         void* z, const fortran_int_t* ldz, void* work,
626         const fortran_int_t* lwork, fortran_int_t* info );
627 
628 // Value-type variants of orghr
629 void LAPACK_SORGHR( const fortran_int_t* n, const fortran_int_t* ilo,
630         const fortran_int_t* ihi, float* a, const fortran_int_t* lda,
631         const float* tau, float* work, const fortran_int_t* lwork,
632         fortran_int_t* info );
633 void LAPACK_DORGHR( const fortran_int_t* n, const fortran_int_t* ilo,
634         const fortran_int_t* ihi, double* a, const fortran_int_t* lda,
635         const double* tau, double* work, const fortran_int_t* lwork,
636         fortran_int_t* info );
637 
638 // Value-type variants of ormhr
639 void LAPACK_SORMHR( const char* side, const char* trans,
640         const fortran_int_t* m, const fortran_int_t* n,
641         const fortran_int_t* ilo, const fortran_int_t* ihi, const float* a,
642         const fortran_int_t* lda, const float* tau, float* c,
643         const fortran_int_t* ldc, float* work, const fortran_int_t* lwork,
644         fortran_int_t* info );
645 void LAPACK_DORMHR( const char* side, const char* trans,
646         const fortran_int_t* m, const fortran_int_t* n,
647         const fortran_int_t* ilo, const fortran_int_t* ihi, const double* a,
648         const fortran_int_t* lda, const double* tau, double* c,
649         const fortran_int_t* ldc, double* work, const fortran_int_t* lwork,
650         fortran_int_t* info );
651 
652 // Value-type variants of trevc
653 void LAPACK_STREVC( const char* side, const char* howmny,
654         fortran_bool_t* select, const fortran_int_t* n, const float* t,
655         const fortran_int_t* ldt, float* vl, const fortran_int_t* ldvl,
656         float* vr, const fortran_int_t* ldvr, const fortran_int_t* mm,
657         fortran_int_t* m, float* work, fortran_int_t* info );
658 void LAPACK_DTREVC( const char* side, const char* howmny,
659         fortran_bool_t* select, const fortran_int_t* n, const double* t,
660         const fortran_int_t* ldt, double* vl, const fortran_int_t* ldvl,
661         double* vr, const fortran_int_t* ldvr, const fortran_int_t* mm,
662         fortran_int_t* m, double* work, fortran_int_t* info );
663 void LAPACK_CTREVC( const char* side, const char* howmny,
664         const fortran_bool_t* select, const fortran_int_t* n, void* t,
665         const fortran_int_t* ldt, void* vl, const fortran_int_t* ldvl,
666         void* vr, const fortran_int_t* ldvr, const fortran_int_t* mm,
667         fortran_int_t* m, void* work, float* rwork, fortran_int_t* info );
668 void LAPACK_ZTREVC( const char* side, const char* howmny,
669         const fortran_bool_t* select, const fortran_int_t* n, void* t,
670         const fortran_int_t* ldt, void* vl, const fortran_int_t* ldvl,
671         void* vr, const fortran_int_t* ldvr, const fortran_int_t* mm,
672         fortran_int_t* m, void* work, double* rwork, fortran_int_t* info );
673 
674 // Value-type variants of trexc
675 void LAPACK_STREXC( const char* compq, const fortran_int_t* n, float* t,
676         const fortran_int_t* ldt, float* q, const fortran_int_t* ldq,
677         fortran_int_t* ifst, fortran_int_t* ilst, float* work,
678         fortran_int_t* info );
679 void LAPACK_DTREXC( const char* compq, const fortran_int_t* n, double* t,
680         const fortran_int_t* ldt, double* q, const fortran_int_t* ldq,
681         fortran_int_t* ifst, fortran_int_t* ilst, double* work,
682         fortran_int_t* info );
683 void LAPACK_CTREXC( const char* compq, const fortran_int_t* n, void* t,
684         const fortran_int_t* ldt, void* q, const fortran_int_t* ldq,
685         const fortran_int_t* ifst, const fortran_int_t* ilst,
686         fortran_int_t* info );
687 void LAPACK_ZTREXC( const char* compq, const fortran_int_t* n, void* t,
688         const fortran_int_t* ldt, void* q, const fortran_int_t* ldq,
689         const fortran_int_t* ifst, const fortran_int_t* ilst,
690         fortran_int_t* info );
691 
692 // Value-type variants of trsen
693 void LAPACK_CTRSEN( const char* job, const char* compq,
694         const fortran_bool_t* select, const fortran_int_t* n, void* t,
695         const fortran_int_t* ldt, void* q, const fortran_int_t* ldq, void* w,
696         fortran_int_t* m, float* s, float* sep, void* work,
697         const fortran_int_t* lwork, fortran_int_t* info );
698 void LAPACK_ZTRSEN( const char* job, const char* compq,
699         const fortran_bool_t* select, const fortran_int_t* n, void* t,
700         const fortran_int_t* ldt, void* q, const fortran_int_t* ldq, void* w,
701         fortran_int_t* m, double* s, double* sep, void* work,
702         const fortran_int_t* lwork, fortran_int_t* info );
703 
704 // Value-type variants of trsna
705 void LAPACK_STRSNA( const char* job, const char* howmny,
706         const fortran_bool_t* select, const fortran_int_t* n, const float* t,
707         const fortran_int_t* ldt, const float* vl, const fortran_int_t* ldvl,
708         const float* vr, const fortran_int_t* ldvr, float* s, float* sep,
709         const fortran_int_t* mm, fortran_int_t* m, float* work,
710         const fortran_int_t* ldwork, fortran_int_t* iwork,
711         fortran_int_t* info );
712 void LAPACK_DTRSNA( const char* job, const char* howmny,
713         const fortran_bool_t* select, const fortran_int_t* n, const double* t,
714         const fortran_int_t* ldt, const double* vl, const fortran_int_t* ldvl,
715         const double* vr, const fortran_int_t* ldvr, double* s, double* sep,
716         const fortran_int_t* mm, fortran_int_t* m, double* work,
717         const fortran_int_t* ldwork, fortran_int_t* iwork,
718         fortran_int_t* info );
719 void LAPACK_CTRSNA( const char* job, const char* howmny,
720         const fortran_bool_t* select, const fortran_int_t* n, const void* t,
721         const fortran_int_t* ldt, const void* vl, const fortran_int_t* ldvl,
722         const void* vr, const fortran_int_t* ldvr, float* s, float* sep,
723         const fortran_int_t* mm, fortran_int_t* m, void* work,
724         const fortran_int_t* ldwork, float* rwork, fortran_int_t* info );
725 void LAPACK_ZTRSNA( const char* job, const char* howmny,
726         const fortran_bool_t* select, const fortran_int_t* n, const void* t,
727         const fortran_int_t* ldt, const void* vl, const fortran_int_t* ldvl,
728         const void* vr, const fortran_int_t* ldvr, double* s, double* sep,
729         const fortran_int_t* mm, fortran_int_t* m, void* work,
730         const fortran_int_t* ldwork, double* rwork, fortran_int_t* info );
731 
732 // Value-type variants of trsyl
733 void LAPACK_STRSYL( const char* trana, const char* tranb,
734         const fortran_int_t* isgn, const fortran_int_t* m,
735         const fortran_int_t* n, const float* a, const fortran_int_t* lda,
736         const float* b, const fortran_int_t* ldb, float* c,
737         const fortran_int_t* ldc, float* scale, fortran_int_t* info );
738 void LAPACK_DTRSYL( const char* trana, const char* tranb,
739         const fortran_int_t* isgn, const fortran_int_t* m,
740         const fortran_int_t* n, const double* a, const fortran_int_t* lda,
741         const double* b, const fortran_int_t* ldb, double* c,
742         const fortran_int_t* ldc, double* scale, fortran_int_t* info );
743 void LAPACK_CTRSYL( const char* trana, const char* tranb,
744         const fortran_int_t* isgn, const fortran_int_t* m,
745         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
746         const void* b, const fortran_int_t* ldb, void* c,
747         const fortran_int_t* ldc, float* scale, fortran_int_t* info );
748 void LAPACK_ZTRSYL( const char* trana, const char* tranb,
749         const fortran_int_t* isgn, const fortran_int_t* m,
750         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
751         const void* b, const fortran_int_t* ldb, void* c,
752         const fortran_int_t* ldc, double* scale, fortran_int_t* info );
753 
754 // Value-type variants of unghr
755 void LAPACK_CUNGHR( const fortran_int_t* n, const fortran_int_t* ilo,
756         const fortran_int_t* ihi, void* a, const fortran_int_t* lda,
757         const void* tau, void* work, const fortran_int_t* lwork,
758         fortran_int_t* info );
759 void LAPACK_ZUNGHR( const fortran_int_t* n, const fortran_int_t* ilo,
760         const fortran_int_t* ihi, void* a, const fortran_int_t* lda,
761         const void* tau, void* work, const fortran_int_t* lwork,
762         fortran_int_t* info );
763 
764 // Value-type variants of unmhr
765 void LAPACK_CUNMHR( const char* side, const char* trans,
766         const fortran_int_t* m, const fortran_int_t* n,
767         const fortran_int_t* ilo, const fortran_int_t* ihi, const void* a,
768         const fortran_int_t* lda, const void* tau, void* c,
769         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
770         fortran_int_t* info );
771 void LAPACK_ZUNMHR( const char* side, const char* trans,
772         const fortran_int_t* m, const fortran_int_t* n,
773         const fortran_int_t* ilo, const fortran_int_t* ihi, const void* a,
774         const fortran_int_t* lda, const void* tau, void* c,
775         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
776         fortran_int_t* info );
777 
778 // Value-type variants of gbcon
779 void LAPACK_SGBCON( const char* norm, const fortran_int_t* n,
780         const fortran_int_t* kl, const fortran_int_t* ku, const float* ab,
781         const fortran_int_t* ldab, const fortran_int_t* ipiv,
782         const float* anorm, float* rcond, float* work, fortran_int_t* iwork,
783         fortran_int_t* info );
784 void LAPACK_DGBCON( const char* norm, const fortran_int_t* n,
785         const fortran_int_t* kl, const fortran_int_t* ku, const double* ab,
786         const fortran_int_t* ldab, const fortran_int_t* ipiv,
787         const double* anorm, double* rcond, double* work,
788         fortran_int_t* iwork, fortran_int_t* info );
789 void LAPACK_CGBCON( const char* norm, const fortran_int_t* n,
790         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
791         const fortran_int_t* ldab, const fortran_int_t* ipiv,
792         const float* anorm, float* rcond, void* work, float* rwork,
793         fortran_int_t* info );
794 void LAPACK_ZGBCON( const char* norm, const fortran_int_t* n,
795         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
796         const fortran_int_t* ldab, const fortran_int_t* ipiv,
797         const double* anorm, double* rcond, void* work, double* rwork,
798         fortran_int_t* info );
799 
800 // Value-type variants of gbequ
801 void LAPACK_SGBEQU( const fortran_int_t* m, const fortran_int_t* n,
802         const fortran_int_t* kl, const fortran_int_t* ku, const float* ab,
803         const fortran_int_t* ldab, float* r, float* c, float* rowcnd,
804         float* colcnd, float* amax, fortran_int_t* info );
805 void LAPACK_DGBEQU( const fortran_int_t* m, const fortran_int_t* n,
806         const fortran_int_t* kl, const fortran_int_t* ku, const double* ab,
807         const fortran_int_t* ldab, double* r, double* c, double* rowcnd,
808         double* colcnd, double* amax, fortran_int_t* info );
809 void LAPACK_CGBEQU( const fortran_int_t* m, const fortran_int_t* n,
810         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
811         const fortran_int_t* ldab, float* r, float* c, float* rowcnd,
812         float* colcnd, float* amax, fortran_int_t* info );
813 void LAPACK_ZGBEQU( const fortran_int_t* m, const fortran_int_t* n,
814         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
815         const fortran_int_t* ldab, double* r, double* c, double* rowcnd,
816         double* colcnd, double* amax, fortran_int_t* info );
817 
818 // Value-type variants of gbrfs
819 void LAPACK_SGBRFS( const char* trans, const fortran_int_t* n,
820         const fortran_int_t* kl, const fortran_int_t* ku,
821         const fortran_int_t* nrhs, const float* ab, const fortran_int_t* ldab,
822         const float* afb, const fortran_int_t* ldafb,
823         const fortran_int_t* ipiv, const float* b, const fortran_int_t* ldb,
824         float* x, const fortran_int_t* ldx, float* ferr, float* berr,
825         float* work, fortran_int_t* iwork, fortran_int_t* info );
826 void LAPACK_DGBRFS( const char* trans, const fortran_int_t* n,
827         const fortran_int_t* kl, const fortran_int_t* ku,
828         const fortran_int_t* nrhs, const double* ab,
829         const fortran_int_t* ldab, const double* afb,
830         const fortran_int_t* ldafb, const fortran_int_t* ipiv,
831         const double* b, const fortran_int_t* ldb, double* x,
832         const fortran_int_t* ldx, double* ferr, double* berr, double* work,
833         fortran_int_t* iwork, fortran_int_t* info );
834 void LAPACK_CGBRFS( const char* trans, const fortran_int_t* n,
835         const fortran_int_t* kl, const fortran_int_t* ku,
836         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
837         const void* afb, const fortran_int_t* ldafb,
838         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
839         void* x, const fortran_int_t* ldx, float* ferr, float* berr,
840         void* work, float* rwork, fortran_int_t* info );
841 void LAPACK_ZGBRFS( const char* trans, const fortran_int_t* n,
842         const fortran_int_t* kl, const fortran_int_t* ku,
843         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
844         const void* afb, const fortran_int_t* ldafb,
845         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
846         void* x, const fortran_int_t* ldx, double* ferr, double* berr,
847         void* work, double* rwork, fortran_int_t* info );
848 
849 // Value-type variants of gbtrf
850 void LAPACK_SGBTRF( const fortran_int_t* m, const fortran_int_t* n,
851         const fortran_int_t* kl, const fortran_int_t* ku, float* ab,
852         const fortran_int_t* ldab, fortran_int_t* ipiv, fortran_int_t* info );
853 void LAPACK_DGBTRF( const fortran_int_t* m, const fortran_int_t* n,
854         const fortran_int_t* kl, const fortran_int_t* ku, double* ab,
855         const fortran_int_t* ldab, fortran_int_t* ipiv, fortran_int_t* info );
856 void LAPACK_CGBTRF( const fortran_int_t* m, const fortran_int_t* n,
857         const fortran_int_t* kl, const fortran_int_t* ku, void* ab,
858         const fortran_int_t* ldab, fortran_int_t* ipiv, fortran_int_t* info );
859 void LAPACK_ZGBTRF( const fortran_int_t* m, const fortran_int_t* n,
860         const fortran_int_t* kl, const fortran_int_t* ku, void* ab,
861         const fortran_int_t* ldab, fortran_int_t* ipiv, fortran_int_t* info );
862 
863 // Value-type variants of gbtrs
864 void LAPACK_SGBTRS( const char* trans, const fortran_int_t* n,
865         const fortran_int_t* kl, const fortran_int_t* ku,
866         const fortran_int_t* nrhs, const float* ab, const fortran_int_t* ldab,
867         const fortran_int_t* ipiv, float* b, const fortran_int_t* ldb,
868         fortran_int_t* info );
869 void LAPACK_DGBTRS( const char* trans, const fortran_int_t* n,
870         const fortran_int_t* kl, const fortran_int_t* ku,
871         const fortran_int_t* nrhs, const double* ab,
872         const fortran_int_t* ldab, const fortran_int_t* ipiv, double* b,
873         const fortran_int_t* ldb, fortran_int_t* info );
874 void LAPACK_CGBTRS( const char* trans, const fortran_int_t* n,
875         const fortran_int_t* kl, const fortran_int_t* ku,
876         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
877         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
878         fortran_int_t* info );
879 void LAPACK_ZGBTRS( const char* trans, const fortran_int_t* n,
880         const fortran_int_t* kl, const fortran_int_t* ku,
881         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
882         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
883         fortran_int_t* info );
884 
885 // Value-type variants of gecon
886 void LAPACK_SGECON( const char* norm, const fortran_int_t* n, const float* a,
887         const fortran_int_t* lda, const float* anorm, float* rcond,
888         float* work, fortran_int_t* iwork, fortran_int_t* info );
889 void LAPACK_DGECON( const char* norm, const fortran_int_t* n, const double* a,
890         const fortran_int_t* lda, const double* anorm, double* rcond,
891         double* work, fortran_int_t* iwork, fortran_int_t* info );
892 void LAPACK_CGECON( const char* norm, const fortran_int_t* n, const void* a,
893         const fortran_int_t* lda, const float* anorm, float* rcond,
894         void* work, float* rwork, fortran_int_t* info );
895 void LAPACK_ZGECON( const char* norm, const fortran_int_t* n, const void* a,
896         const fortran_int_t* lda, const double* anorm, double* rcond,
897         void* work, double* rwork, fortran_int_t* info );
898 
899 // Value-type variants of geequ
900 void LAPACK_SGEEQU( const fortran_int_t* m, const fortran_int_t* n,
901         const float* a, const fortran_int_t* lda, float* r, float* c,
902         float* rowcnd, float* colcnd, float* amax, fortran_int_t* info );
903 void LAPACK_DGEEQU( const fortran_int_t* m, const fortran_int_t* n,
904         const double* a, const fortran_int_t* lda, double* r, double* c,
905         double* rowcnd, double* colcnd, double* amax, fortran_int_t* info );
906 void LAPACK_CGEEQU( const fortran_int_t* m, const fortran_int_t* n,
907         const void* a, const fortran_int_t* lda, float* r, float* c,
908         float* rowcnd, float* colcnd, float* amax, fortran_int_t* info );
909 void LAPACK_ZGEEQU( const fortran_int_t* m, const fortran_int_t* n,
910         const void* a, const fortran_int_t* lda, double* r, double* c,
911         double* rowcnd, double* colcnd, double* amax, fortran_int_t* info );
912 
913 // Value-type variants of gerfs
914 void LAPACK_SGERFS( const char* trans, const fortran_int_t* n,
915         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
916         const float* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
917         const float* b, const fortran_int_t* ldb, float* x,
918         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
919         fortran_int_t* iwork, fortran_int_t* info );
920 void LAPACK_DGERFS( const char* trans, const fortran_int_t* n,
921         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
922         const double* af, const fortran_int_t* ldaf,
923         const fortran_int_t* ipiv, const double* b, const fortran_int_t* ldb,
924         double* x, const fortran_int_t* ldx, double* ferr, double* berr,
925         double* work, fortran_int_t* iwork, fortran_int_t* info );
926 void LAPACK_CGERFS( const char* trans, const fortran_int_t* n,
927         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
928         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
929         const void* b, const fortran_int_t* ldb, void* x,
930         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
931         float* rwork, fortran_int_t* info );
932 void LAPACK_ZGERFS( const char* trans, const fortran_int_t* n,
933         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
934         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
935         const void* b, const fortran_int_t* ldb, void* x,
936         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
937         double* rwork, fortran_int_t* info );
938 
939 // Value-type variants of getrf
940 void LAPACK_SGETRF( const fortran_int_t* m, const fortran_int_t* n, float* a,
941         const fortran_int_t* lda, fortran_int_t* ipiv, fortran_int_t* info );
942 void LAPACK_DGETRF( const fortran_int_t* m, const fortran_int_t* n, double* a,
943         const fortran_int_t* lda, fortran_int_t* ipiv, fortran_int_t* info );
944 void LAPACK_CGETRF( const fortran_int_t* m, const fortran_int_t* n, void* a,
945         const fortran_int_t* lda, fortran_int_t* ipiv, fortran_int_t* info );
946 void LAPACK_ZGETRF( const fortran_int_t* m, const fortran_int_t* n, void* a,
947         const fortran_int_t* lda, fortran_int_t* ipiv, fortran_int_t* info );
948 
949 // Value-type variants of getri
950 void LAPACK_SGETRI( const fortran_int_t* n, float* a,
951         const fortran_int_t* lda, const fortran_int_t* ipiv, float* work,
952         const fortran_int_t* lwork, fortran_int_t* info );
953 void LAPACK_DGETRI( const fortran_int_t* n, double* a,
954         const fortran_int_t* lda, const fortran_int_t* ipiv, double* work,
955         const fortran_int_t* lwork, fortran_int_t* info );
956 void LAPACK_CGETRI( const fortran_int_t* n, void* a, const fortran_int_t* lda,
957         const fortran_int_t* ipiv, void* work, const fortran_int_t* lwork,
958         fortran_int_t* info );
959 void LAPACK_ZGETRI( const fortran_int_t* n, void* a, const fortran_int_t* lda,
960         const fortran_int_t* ipiv, void* work, const fortran_int_t* lwork,
961         fortran_int_t* info );
962 
963 // Value-type variants of getrs
964 void LAPACK_SGETRS( const char* trans, const fortran_int_t* n,
965         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
966         const fortran_int_t* ipiv, float* b, const fortran_int_t* ldb,
967         fortran_int_t* info );
968 void LAPACK_DGETRS( const char* trans, const fortran_int_t* n,
969         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
970         const fortran_int_t* ipiv, double* b, const fortran_int_t* ldb,
971         fortran_int_t* info );
972 void LAPACK_CGETRS( const char* trans, const fortran_int_t* n,
973         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
974         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
975         fortran_int_t* info );
976 void LAPACK_ZGETRS( const char* trans, const fortran_int_t* n,
977         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
978         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
979         fortran_int_t* info );
980 
981 // Value-type variants of gtrfs
982 void LAPACK_SGTRFS( const char* trans, const fortran_int_t* n,
983         const fortran_int_t* nrhs, const float* dl, const float* d,
984         const float* du, const float* dlf, const float* df, const float* duf,
985         const float* du2, const fortran_int_t* ipiv, const float* b,
986         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
987         float* ferr, float* berr, float* work, fortran_int_t* iwork,
988         fortran_int_t* info );
989 void LAPACK_DGTRFS( const char* trans, const fortran_int_t* n,
990         const fortran_int_t* nrhs, const double* dl, const double* d,
991         const double* du, const double* dlf, const double* df,
992         const double* duf, const double* du2, const fortran_int_t* ipiv,
993         const double* b, const fortran_int_t* ldb, double* x,
994         const fortran_int_t* ldx, double* ferr, double* berr, double* work,
995         fortran_int_t* iwork, fortran_int_t* info );
996 void LAPACK_CGTRFS( const char* trans, const fortran_int_t* n,
997         const fortran_int_t* nrhs, const void* dl, const void* d,
998         const void* du, const void* dlf, const void* df, const void* duf,
999         const void* du2, const fortran_int_t* ipiv, const void* b,
1000         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1001         float* ferr, float* berr, void* work, float* rwork,
1002         fortran_int_t* info );
1003 void LAPACK_ZGTRFS( const char* trans, const fortran_int_t* n,
1004         const fortran_int_t* nrhs, const void* dl, const void* d,
1005         const void* du, const void* dlf, const void* df, const void* duf,
1006         const void* du2, const fortran_int_t* ipiv, const void* b,
1007         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1008         double* ferr, double* berr, void* work, double* rwork,
1009         fortran_int_t* info );
1010 
1011 // Value-type variants of gttrs
1012 void LAPACK_SGTTRS( const char* trans, const fortran_int_t* n,
1013         const fortran_int_t* nrhs, const float* dl, const float* d,
1014         const float* du, const float* du2, const fortran_int_t* ipiv,
1015         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1016 void LAPACK_DGTTRS( const char* trans, const fortran_int_t* n,
1017         const fortran_int_t* nrhs, const double* dl, const double* d,
1018         const double* du, const double* du2, const fortran_int_t* ipiv,
1019         double* b, const fortran_int_t* ldb, fortran_int_t* info );
1020 void LAPACK_CGTTRS( const char* trans, const fortran_int_t* n,
1021         const fortran_int_t* nrhs, const void* dl, const void* d,
1022         const void* du, const void* du2, const fortran_int_t* ipiv, void* b,
1023         const fortran_int_t* ldb, fortran_int_t* info );
1024 void LAPACK_ZGTTRS( const char* trans, const fortran_int_t* n,
1025         const fortran_int_t* nrhs, const void* dl, const void* d,
1026         const void* du, const void* du2, const fortran_int_t* ipiv, void* b,
1027         const fortran_int_t* ldb, fortran_int_t* info );
1028 
1029 // Value-type variants of hecon
1030 void LAPACK_CHECON( const char* uplo, const fortran_int_t* n, const void* a,
1031         const fortran_int_t* lda, const fortran_int_t* ipiv,
1032         const float* anorm, float* rcond, void* work, fortran_int_t* info );
1033 void LAPACK_ZHECON( const char* uplo, const fortran_int_t* n, const void* a,
1034         const fortran_int_t* lda, const fortran_int_t* ipiv,
1035         const double* anorm, double* rcond, void* work, fortran_int_t* info );
1036 
1037 // Value-type variants of herfs
1038 void LAPACK_CHERFS( const char* uplo, const fortran_int_t* n,
1039         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1040         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
1041         const void* b, const fortran_int_t* ldb, void* x,
1042         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
1043         float* rwork, fortran_int_t* info );
1044 void LAPACK_ZHERFS( const char* uplo, const fortran_int_t* n,
1045         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1046         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
1047         const void* b, const fortran_int_t* ldb, void* x,
1048         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
1049         double* rwork, fortran_int_t* info );
1050 
1051 // Value-type variants of hetrf
1052 void LAPACK_CHETRF( const char* uplo, const fortran_int_t* n, void* a,
1053         const fortran_int_t* lda, fortran_int_t* ipiv, void* work,
1054         const fortran_int_t* lwork, fortran_int_t* info );
1055 void LAPACK_ZHETRF( const char* uplo, const fortran_int_t* n, void* a,
1056         const fortran_int_t* lda, fortran_int_t* ipiv, void* work,
1057         const fortran_int_t* lwork, fortran_int_t* info );
1058 
1059 // Value-type variants of hetri
1060 void LAPACK_CHETRI( const char* uplo, const fortran_int_t* n, void* a,
1061         const fortran_int_t* lda, const fortran_int_t* ipiv, void* work,
1062         fortran_int_t* info );
1063 void LAPACK_ZHETRI( const char* uplo, const fortran_int_t* n, void* a,
1064         const fortran_int_t* lda, const fortran_int_t* ipiv, void* work,
1065         fortran_int_t* info );
1066 
1067 // Value-type variants of hetrs
1068 void LAPACK_CHETRS( const char* uplo, const fortran_int_t* n,
1069         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1070         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
1071         fortran_int_t* info );
1072 void LAPACK_ZHETRS( const char* uplo, const fortran_int_t* n,
1073         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1074         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
1075         fortran_int_t* info );
1076 
1077 // Value-type variants of hpcon
1078 void LAPACK_CHPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1079         const fortran_int_t* ipiv, const float* anorm, float* rcond,
1080         void* work, fortran_int_t* info );
1081 void LAPACK_ZHPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1082         const fortran_int_t* ipiv, const double* anorm, double* rcond,
1083         void* work, fortran_int_t* info );
1084 
1085 // Value-type variants of hprfs
1086 void LAPACK_CHPRFS( const char* uplo, const fortran_int_t* n,
1087         const fortran_int_t* nrhs, const void* ap, const void* afp,
1088         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
1089         void* x, const fortran_int_t* ldx, float* ferr, float* berr,
1090         void* work, float* rwork, fortran_int_t* info );
1091 void LAPACK_ZHPRFS( const char* uplo, const fortran_int_t* n,
1092         const fortran_int_t* nrhs, const void* ap, const void* afp,
1093         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
1094         void* x, const fortran_int_t* ldx, double* ferr, double* berr,
1095         void* work, double* rwork, fortran_int_t* info );
1096 
1097 // Value-type variants of hptrf
1098 void LAPACK_CHPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1099         fortran_int_t* ipiv, fortran_int_t* info );
1100 void LAPACK_ZHPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1101         fortran_int_t* ipiv, fortran_int_t* info );
1102 
1103 // Value-type variants of hptri
1104 void LAPACK_CHPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1105         const fortran_int_t* ipiv, void* work, fortran_int_t* info );
1106 void LAPACK_ZHPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1107         const fortran_int_t* ipiv, void* work, fortran_int_t* info );
1108 
1109 // Value-type variants of hptrs
1110 void LAPACK_CHPTRS( const char* uplo, const fortran_int_t* n,
1111         const fortran_int_t* nrhs, const void* ap, const fortran_int_t* ipiv,
1112         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1113 void LAPACK_ZHPTRS( const char* uplo, const fortran_int_t* n,
1114         const fortran_int_t* nrhs, const void* ap, const fortran_int_t* ipiv,
1115         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1116 
1117 // Value-type variants of pbcon
1118 void LAPACK_SPBCON( const char* uplo, const fortran_int_t* n,
1119         const fortran_int_t* kd, const float* ab, const fortran_int_t* ldab,
1120         const float* anorm, float* rcond, float* work, fortran_int_t* iwork,
1121         fortran_int_t* info );
1122 void LAPACK_DPBCON( const char* uplo, const fortran_int_t* n,
1123         const fortran_int_t* kd, const double* ab, const fortran_int_t* ldab,
1124         const double* anorm, double* rcond, double* work,
1125         fortran_int_t* iwork, fortran_int_t* info );
1126 void LAPACK_CPBCON( const char* uplo, const fortran_int_t* n,
1127         const fortran_int_t* kd, const void* ab, const fortran_int_t* ldab,
1128         const float* anorm, float* rcond, void* work, float* rwork,
1129         fortran_int_t* info );
1130 void LAPACK_ZPBCON( const char* uplo, const fortran_int_t* n,
1131         const fortran_int_t* kd, const void* ab, const fortran_int_t* ldab,
1132         const double* anorm, double* rcond, void* work, double* rwork,
1133         fortran_int_t* info );
1134 
1135 // Value-type variants of pbequ
1136 void LAPACK_SPBEQU( const char* uplo, const fortran_int_t* n,
1137         const fortran_int_t* kd, const float* ab, const fortran_int_t* ldab,
1138         float* s, float* scond, float* amax, fortran_int_t* info );
1139 void LAPACK_DPBEQU( const char* uplo, const fortran_int_t* n,
1140         const fortran_int_t* kd, const double* ab, const fortran_int_t* ldab,
1141         double* s, double* scond, double* amax, fortran_int_t* info );
1142 void LAPACK_CPBEQU( const char* uplo, const fortran_int_t* n,
1143         const fortran_int_t* kd, const void* ab, const fortran_int_t* ldab,
1144         float* s, float* scond, float* amax, fortran_int_t* info );
1145 void LAPACK_ZPBEQU( const char* uplo, const fortran_int_t* n,
1146         const fortran_int_t* kd, const void* ab, const fortran_int_t* ldab,
1147         double* s, double* scond, double* amax, fortran_int_t* info );
1148 
1149 // Value-type variants of pbrfs
1150 void LAPACK_SPBRFS( const char* uplo, const fortran_int_t* n,
1151         const fortran_int_t* kd, const fortran_int_t* nrhs, const float* ab,
1152         const fortran_int_t* ldab, const float* afb,
1153         const fortran_int_t* ldafb, const float* b, const fortran_int_t* ldb,
1154         float* x, const fortran_int_t* ldx, float* ferr, float* berr,
1155         float* work, fortran_int_t* iwork, fortran_int_t* info );
1156 void LAPACK_DPBRFS( const char* uplo, const fortran_int_t* n,
1157         const fortran_int_t* kd, const fortran_int_t* nrhs, const double* ab,
1158         const fortran_int_t* ldab, const double* afb,
1159         const fortran_int_t* ldafb, const double* b, const fortran_int_t* ldb,
1160         double* x, const fortran_int_t* ldx, double* ferr, double* berr,
1161         double* work, fortran_int_t* iwork, fortran_int_t* info );
1162 void LAPACK_CPBRFS( const char* uplo, const fortran_int_t* n,
1163         const fortran_int_t* kd, const fortran_int_t* nrhs, const void* ab,
1164         const fortran_int_t* ldab, const void* afb,
1165         const fortran_int_t* ldafb, const void* b, const fortran_int_t* ldb,
1166         void* x, const fortran_int_t* ldx, float* ferr, float* berr,
1167         void* work, float* rwork, fortran_int_t* info );
1168 void LAPACK_ZPBRFS( const char* uplo, const fortran_int_t* n,
1169         const fortran_int_t* kd, const fortran_int_t* nrhs, const void* ab,
1170         const fortran_int_t* ldab, const void* afb,
1171         const fortran_int_t* ldafb, const void* b, const fortran_int_t* ldb,
1172         void* x, const fortran_int_t* ldx, double* ferr, double* berr,
1173         void* work, double* rwork, fortran_int_t* info );
1174 
1175 // Value-type variants of pbtrf
1176 void LAPACK_SPBTRF( const char* uplo, const fortran_int_t* n,
1177         const fortran_int_t* kd, float* ab, const fortran_int_t* ldab,
1178         fortran_int_t* info );
1179 void LAPACK_DPBTRF( const char* uplo, const fortran_int_t* n,
1180         const fortran_int_t* kd, double* ab, const fortran_int_t* ldab,
1181         fortran_int_t* info );
1182 void LAPACK_CPBTRF( const char* uplo, const fortran_int_t* n,
1183         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
1184         fortran_int_t* info );
1185 void LAPACK_ZPBTRF( const char* uplo, const fortran_int_t* n,
1186         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
1187         fortran_int_t* info );
1188 
1189 // Value-type variants of pbtrs
1190 void LAPACK_SPBTRS( const char* uplo, const fortran_int_t* n,
1191         const fortran_int_t* kd, const fortran_int_t* nrhs, const float* ab,
1192         const fortran_int_t* ldab, float* b, const fortran_int_t* ldb,
1193         fortran_int_t* info );
1194 void LAPACK_DPBTRS( const char* uplo, const fortran_int_t* n,
1195         const fortran_int_t* kd, const fortran_int_t* nrhs, const double* ab,
1196         const fortran_int_t* ldab, double* b, const fortran_int_t* ldb,
1197         fortran_int_t* info );
1198 void LAPACK_CPBTRS( const char* uplo, const fortran_int_t* n,
1199         const fortran_int_t* kd, const fortran_int_t* nrhs, const void* ab,
1200         const fortran_int_t* ldab, void* b, const fortran_int_t* ldb,
1201         fortran_int_t* info );
1202 void LAPACK_ZPBTRS( const char* uplo, const fortran_int_t* n,
1203         const fortran_int_t* kd, const fortran_int_t* nrhs, const void* ab,
1204         const fortran_int_t* ldab, void* b, const fortran_int_t* ldb,
1205         fortran_int_t* info );
1206 
1207 // Value-type variants of pftrf
1208 void LAPACK_SPFTRF( const char* transr, const char* uplo,
1209         const fortran_int_t* n, float* a, fortran_int_t* info );
1210 void LAPACK_DPFTRF( const char* transr, const char* uplo,
1211         const fortran_int_t* n, double* a, fortran_int_t* info );
1212 void LAPACK_CPFTRF( const char* transr, const char* uplo,
1213         const fortran_int_t* n, void* a, fortran_int_t* info );
1214 void LAPACK_ZPFTRF( const char* transr, const char* uplo,
1215         const fortran_int_t* n, void* a, fortran_int_t* info );
1216 
1217 // Value-type variants of pftri
1218 void LAPACK_SPFTRI( const char* transr, const char* uplo,
1219         const fortran_int_t* n, float* a, fortran_int_t* info );
1220 void LAPACK_DPFTRI( const char* transr, const char* uplo,
1221         const fortran_int_t* n, double* a, fortran_int_t* info );
1222 void LAPACK_CPFTRI( const char* transr, const char* uplo,
1223         const fortran_int_t* n, void* a, fortran_int_t* info );
1224 void LAPACK_ZPFTRI( const char* transr, const char* uplo,
1225         const fortran_int_t* n, void* a, fortran_int_t* info );
1226 
1227 // Value-type variants of pftrs
1228 void LAPACK_SPFTRS( const char* transr, const char* uplo,
1229         const fortran_int_t* n, const fortran_int_t* nrhs, const float* a,
1230         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1231 void LAPACK_DPFTRS( const char* transr, const char* uplo,
1232         const fortran_int_t* n, const fortran_int_t* nrhs, const double* a,
1233         double* b, const fortran_int_t* ldb, fortran_int_t* info );
1234 void LAPACK_CPFTRS( const char* transr, const char* uplo,
1235         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1236         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1237 void LAPACK_ZPFTRS( const char* transr, const char* uplo,
1238         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1239         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1240 
1241 // Value-type variants of pocon
1242 void LAPACK_SPOCON( const char* uplo, const fortran_int_t* n, const float* a,
1243         const fortran_int_t* lda, const float* anorm, float* rcond,
1244         float* work, fortran_int_t* iwork, fortran_int_t* info );
1245 void LAPACK_DPOCON( const char* uplo, const fortran_int_t* n, const double* a,
1246         const fortran_int_t* lda, const double* anorm, double* rcond,
1247         double* work, fortran_int_t* iwork, fortran_int_t* info );
1248 void LAPACK_CPOCON( const char* uplo, const fortran_int_t* n, const void* a,
1249         const fortran_int_t* lda, const float* anorm, float* rcond,
1250         void* work, float* rwork, fortran_int_t* info );
1251 void LAPACK_ZPOCON( const char* uplo, const fortran_int_t* n, const void* a,
1252         const fortran_int_t* lda, const double* anorm, double* rcond,
1253         void* work, double* rwork, fortran_int_t* info );
1254 
1255 // Value-type variants of poequ
1256 void LAPACK_SPOEQU( const fortran_int_t* n, const float* a,
1257         const fortran_int_t* lda, float* s, float* scond, float* amax,
1258         fortran_int_t* info );
1259 void LAPACK_DPOEQU( const fortran_int_t* n, const double* a,
1260         const fortran_int_t* lda, double* s, double* scond, double* amax,
1261         fortran_int_t* info );
1262 void LAPACK_CPOEQU( const fortran_int_t* n, const void* a,
1263         const fortran_int_t* lda, float* s, float* scond, float* amax,
1264         fortran_int_t* info );
1265 void LAPACK_ZPOEQU( const fortran_int_t* n, const void* a,
1266         const fortran_int_t* lda, double* s, double* scond, double* amax,
1267         fortran_int_t* info );
1268 
1269 // Value-type variants of porfs
1270 void LAPACK_SPORFS( const char* uplo, const fortran_int_t* n,
1271         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
1272         const float* af, const fortran_int_t* ldaf, const float* b,
1273         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
1274         float* ferr, float* berr, float* work, fortran_int_t* iwork,
1275         fortran_int_t* info );
1276 void LAPACK_DPORFS( const char* uplo, const fortran_int_t* n,
1277         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
1278         const double* af, const fortran_int_t* ldaf, const double* b,
1279         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
1280         double* ferr, double* berr, double* work, fortran_int_t* iwork,
1281         fortran_int_t* info );
1282 void LAPACK_CPORFS( const char* uplo, const fortran_int_t* n,
1283         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1284         const void* af, const fortran_int_t* ldaf, const void* b,
1285         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1286         float* ferr, float* berr, void* work, float* rwork,
1287         fortran_int_t* info );
1288 void LAPACK_ZPORFS( const char* uplo, const fortran_int_t* n,
1289         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1290         const void* af, const fortran_int_t* ldaf, const void* b,
1291         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1292         double* ferr, double* berr, void* work, double* rwork,
1293         fortran_int_t* info );
1294 
1295 // Value-type variants of potrf
1296 void LAPACK_SPOTRF( const char* uplo, const fortran_int_t* n, float* a,
1297         const fortran_int_t* lda, fortran_int_t* info );
1298 void LAPACK_DPOTRF( const char* uplo, const fortran_int_t* n, double* a,
1299         const fortran_int_t* lda, fortran_int_t* info );
1300 void LAPACK_CPOTRF( const char* uplo, const fortran_int_t* n, void* a,
1301         const fortran_int_t* lda, fortran_int_t* info );
1302 void LAPACK_ZPOTRF( const char* uplo, const fortran_int_t* n, void* a,
1303         const fortran_int_t* lda, fortran_int_t* info );
1304 
1305 // Value-type variants of potri
1306 void LAPACK_SPOTRI( const char* uplo, const fortran_int_t* n, float* a,
1307         const fortran_int_t* lda, fortran_int_t* info );
1308 void LAPACK_DPOTRI( const char* uplo, const fortran_int_t* n, double* a,
1309         const fortran_int_t* lda, fortran_int_t* info );
1310 void LAPACK_CPOTRI( const char* uplo, const fortran_int_t* n, void* a,
1311         const fortran_int_t* lda, fortran_int_t* info );
1312 void LAPACK_ZPOTRI( const char* uplo, const fortran_int_t* n, void* a,
1313         const fortran_int_t* lda, fortran_int_t* info );
1314 
1315 // Value-type variants of potrs
1316 void LAPACK_SPOTRS( const char* uplo, const fortran_int_t* n,
1317         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
1318         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1319 void LAPACK_DPOTRS( const char* uplo, const fortran_int_t* n,
1320         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
1321         double* b, const fortran_int_t* ldb, fortran_int_t* info );
1322 void LAPACK_CPOTRS( const char* uplo, const fortran_int_t* n,
1323         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1324         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1325 void LAPACK_ZPOTRS( const char* uplo, const fortran_int_t* n,
1326         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1327         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1328 
1329 // Value-type variants of ppcon
1330 void LAPACK_SPPCON( const char* uplo, const fortran_int_t* n, const float* ap,
1331         const float* anorm, float* rcond, float* work, fortran_int_t* iwork,
1332         fortran_int_t* info );
1333 void LAPACK_DPPCON( const char* uplo, const fortran_int_t* n,
1334         const double* ap, const double* anorm, double* rcond, double* work,
1335         fortran_int_t* iwork, fortran_int_t* info );
1336 void LAPACK_CPPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1337         const float* anorm, float* rcond, void* work, float* rwork,
1338         fortran_int_t* info );
1339 void LAPACK_ZPPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1340         const double* anorm, double* rcond, void* work, double* rwork,
1341         fortran_int_t* info );
1342 
1343 // Value-type variants of ppequ
1344 void LAPACK_SPPEQU( const char* uplo, const fortran_int_t* n, const float* ap,
1345         float* s, float* scond, float* amax, fortran_int_t* info );
1346 void LAPACK_DPPEQU( const char* uplo, const fortran_int_t* n,
1347         const double* ap, double* s, double* scond, double* amax,
1348         fortran_int_t* info );
1349 void LAPACK_CPPEQU( const char* uplo, const fortran_int_t* n, const void* ap,
1350         float* s, float* scond, float* amax, fortran_int_t* info );
1351 void LAPACK_ZPPEQU( const char* uplo, const fortran_int_t* n, const void* ap,
1352         double* s, double* scond, double* amax, fortran_int_t* info );
1353 
1354 // Value-type variants of pprfs
1355 void LAPACK_SPPRFS( const char* uplo, const fortran_int_t* n,
1356         const fortran_int_t* nrhs, const float* ap, const float* afp,
1357         const float* b, const fortran_int_t* ldb, float* x,
1358         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
1359         fortran_int_t* iwork, fortran_int_t* info );
1360 void LAPACK_DPPRFS( const char* uplo, const fortran_int_t* n,
1361         const fortran_int_t* nrhs, const double* ap, const double* afp,
1362         const double* b, const fortran_int_t* ldb, double* x,
1363         const fortran_int_t* ldx, double* ferr, double* berr, double* work,
1364         fortran_int_t* iwork, fortran_int_t* info );
1365 void LAPACK_CPPRFS( const char* uplo, const fortran_int_t* n,
1366         const fortran_int_t* nrhs, const void* ap, const void* afp,
1367         const void* b, const fortran_int_t* ldb, void* x,
1368         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
1369         float* rwork, fortran_int_t* info );
1370 void LAPACK_ZPPRFS( const char* uplo, const fortran_int_t* n,
1371         const fortran_int_t* nrhs, const void* ap, const void* afp,
1372         const void* b, const fortran_int_t* ldb, void* x,
1373         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
1374         double* rwork, fortran_int_t* info );
1375 
1376 // Value-type variants of pptrf
1377 void LAPACK_SPPTRF( const char* uplo, const fortran_int_t* n, float* ap,
1378         fortran_int_t* info );
1379 void LAPACK_DPPTRF( const char* uplo, const fortran_int_t* n, double* ap,
1380         fortran_int_t* info );
1381 void LAPACK_CPPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1382         fortran_int_t* info );
1383 void LAPACK_ZPPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1384         fortran_int_t* info );
1385 
1386 // Value-type variants of pptri
1387 void LAPACK_SPPTRI( const char* uplo, const fortran_int_t* n, float* ap,
1388         fortran_int_t* info );
1389 void LAPACK_DPPTRI( const char* uplo, const fortran_int_t* n, double* ap,
1390         fortran_int_t* info );
1391 void LAPACK_CPPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1392         fortran_int_t* info );
1393 void LAPACK_ZPPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1394         fortran_int_t* info );
1395 
1396 // Value-type variants of pptrs
1397 void LAPACK_SPPTRS( const char* uplo, const fortran_int_t* n,
1398         const fortran_int_t* nrhs, const float* ap, float* b,
1399         const fortran_int_t* ldb, fortran_int_t* info );
1400 void LAPACK_DPPTRS( const char* uplo, const fortran_int_t* n,
1401         const fortran_int_t* nrhs, const double* ap, double* b,
1402         const fortran_int_t* ldb, fortran_int_t* info );
1403 void LAPACK_CPPTRS( const char* uplo, const fortran_int_t* n,
1404         const fortran_int_t* nrhs, const void* ap, void* b,
1405         const fortran_int_t* ldb, fortran_int_t* info );
1406 void LAPACK_ZPPTRS( const char* uplo, const fortran_int_t* n,
1407         const fortran_int_t* nrhs, const void* ap, void* b,
1408         const fortran_int_t* ldb, fortran_int_t* info );
1409 
1410 // Value-type variants of pstrf
1411 void LAPACK_SPSTRF( const char* uplo, const fortran_int_t* n, float* a,
1412         const fortran_int_t* lda, fortran_int_t* piv, fortran_int_t* rank,
1413         const float* tol, float* work, fortran_int_t* info );
1414 void LAPACK_DPSTRF( const char* uplo, const fortran_int_t* n, double* a,
1415         const fortran_int_t* lda, fortran_int_t* piv, fortran_int_t* rank,
1416         const double* tol, double* work, fortran_int_t* info );
1417 void LAPACK_CPSTRF( const char* uplo, const fortran_int_t* n, void* a,
1418         const fortran_int_t* lda, fortran_int_t* piv, fortran_int_t* rank,
1419         const float* tol, float* work, fortran_int_t* info );
1420 void LAPACK_ZPSTRF( const char* uplo, const fortran_int_t* n, void* a,
1421         const fortran_int_t* lda, fortran_int_t* piv, fortran_int_t* rank,
1422         const double* tol, double* work, fortran_int_t* info );
1423 
1424 // Value-type variants of ptcon
1425 void LAPACK_SPTCON( const fortran_int_t* n, const float* d, const float* e,
1426         const float* anorm, float* rcond, float* work, fortran_int_t* info );
1427 void LAPACK_DPTCON( const fortran_int_t* n, const double* d, const double* e,
1428         const double* anorm, double* rcond, double* work,
1429         fortran_int_t* info );
1430 void LAPACK_CPTCON( const fortran_int_t* n, const float* d, const void* e,
1431         const float* anorm, float* rcond, float* rwork, fortran_int_t* info );
1432 void LAPACK_ZPTCON( const fortran_int_t* n, const double* d, const void* e,
1433         const double* anorm, double* rcond, double* rwork,
1434         fortran_int_t* info );
1435 
1436 // Value-type variants of ptrfs
1437 void LAPACK_SPTRFS( const fortran_int_t* n, const fortran_int_t* nrhs,
1438         const float* d, const float* e, const float* df, const float* ef,
1439         const float* b, const fortran_int_t* ldb, float* x,
1440         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
1441         fortran_int_t* info );
1442 void LAPACK_DPTRFS( const fortran_int_t* n, const fortran_int_t* nrhs,
1443         const double* d, const double* e, const double* df, const double* ef,
1444         const double* b, const fortran_int_t* ldb, double* x,
1445         const fortran_int_t* ldx, double* ferr, double* berr, double* work,
1446         fortran_int_t* info );
1447 void LAPACK_CPTRFS( const char* uplo, const fortran_int_t* n,
1448         const fortran_int_t* nrhs, const float* d, const void* e,
1449         const float* df, const void* ef, const void* b,
1450         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1451         float* ferr, float* berr, void* work, float* rwork,
1452         fortran_int_t* info );
1453 void LAPACK_ZPTRFS( const char* uplo, const fortran_int_t* n,
1454         const fortran_int_t* nrhs, const double* d, const void* e,
1455         const double* df, const void* ef, const void* b,
1456         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
1457         double* ferr, double* berr, void* work, double* rwork,
1458         fortran_int_t* info );
1459 
1460 // Value-type variants of pttrf
1461 void LAPACK_SPTTRF( const fortran_int_t* n, float* d, float* e,
1462         fortran_int_t* info );
1463 void LAPACK_DPTTRF( const fortran_int_t* n, double* d, double* e,
1464         fortran_int_t* info );
1465 void LAPACK_CPTTRF( const fortran_int_t* n, float* d, void* e,
1466         fortran_int_t* info );
1467 void LAPACK_ZPTTRF( const fortran_int_t* n, double* d, void* e,
1468         fortran_int_t* info );
1469 
1470 // Value-type variants of pttrs
1471 void LAPACK_SPTTRS( const fortran_int_t* n, const fortran_int_t* nrhs,
1472         const float* d, const float* e, float* b, const fortran_int_t* ldb,
1473         fortran_int_t* info );
1474 void LAPACK_DPTTRS( const fortran_int_t* n, const fortran_int_t* nrhs,
1475         const double* d, const double* e, double* b, const fortran_int_t* ldb,
1476         fortran_int_t* info );
1477 void LAPACK_CPTTRS( const char* uplo, const fortran_int_t* n,
1478         const fortran_int_t* nrhs, const float* d, const void* e, void* b,
1479         const fortran_int_t* ldb, fortran_int_t* info );
1480 void LAPACK_ZPTTRS( const char* uplo, const fortran_int_t* n,
1481         const fortran_int_t* nrhs, const double* d, const void* e, void* b,
1482         const fortran_int_t* ldb, fortran_int_t* info );
1483 
1484 // Value-type variants of spcon
1485 void LAPACK_SSPCON( const char* uplo, const fortran_int_t* n, const float* ap,
1486         const fortran_int_t* ipiv, const float* anorm, float* rcond,
1487         float* work, fortran_int_t* iwork, fortran_int_t* info );
1488 void LAPACK_DSPCON( const char* uplo, const fortran_int_t* n,
1489         const double* ap, const fortran_int_t* ipiv, const double* anorm,
1490         double* rcond, double* work, fortran_int_t* iwork,
1491         fortran_int_t* info );
1492 void LAPACK_CSPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1493         const fortran_int_t* ipiv, const float* anorm, float* rcond,
1494         void* work, fortran_int_t* info );
1495 void LAPACK_ZSPCON( const char* uplo, const fortran_int_t* n, const void* ap,
1496         const fortran_int_t* ipiv, const double* anorm, double* rcond,
1497         void* work, fortran_int_t* info );
1498 
1499 // Value-type variants of sprfs
1500 void LAPACK_SSPRFS( const char* uplo, const fortran_int_t* n,
1501         const fortran_int_t* nrhs, const float* ap, const float* afp,
1502         const fortran_int_t* ipiv, const float* b, const fortran_int_t* ldb,
1503         float* x, const fortran_int_t* ldx, float* ferr, float* berr,
1504         float* work, fortran_int_t* iwork, fortran_int_t* info );
1505 void LAPACK_DSPRFS( const char* uplo, const fortran_int_t* n,
1506         const fortran_int_t* nrhs, const double* ap, const double* afp,
1507         const fortran_int_t* ipiv, const double* b, const fortran_int_t* ldb,
1508         double* x, const fortran_int_t* ldx, double* ferr, double* berr,
1509         double* work, fortran_int_t* iwork, fortran_int_t* info );
1510 void LAPACK_CSPRFS( const char* uplo, const fortran_int_t* n,
1511         const fortran_int_t* nrhs, const void* ap, const void* afp,
1512         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
1513         void* x, const fortran_int_t* ldx, float* ferr, float* berr,
1514         void* work, float* rwork, fortran_int_t* info );
1515 void LAPACK_ZSPRFS( const char* uplo, const fortran_int_t* n,
1516         const fortran_int_t* nrhs, const void* ap, const void* afp,
1517         const fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb,
1518         void* x, const fortran_int_t* ldx, double* ferr, double* berr,
1519         void* work, double* rwork, fortran_int_t* info );
1520 
1521 // Value-type variants of sptrf
1522 void LAPACK_SSPTRF( const char* uplo, const fortran_int_t* n, float* ap,
1523         fortran_int_t* ipiv, fortran_int_t* info );
1524 void LAPACK_DSPTRF( const char* uplo, const fortran_int_t* n, double* ap,
1525         fortran_int_t* ipiv, fortran_int_t* info );
1526 void LAPACK_CSPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1527         fortran_int_t* ipiv, fortran_int_t* info );
1528 void LAPACK_ZSPTRF( const char* uplo, const fortran_int_t* n, void* ap,
1529         fortran_int_t* ipiv, fortran_int_t* info );
1530 
1531 // Value-type variants of sptri
1532 void LAPACK_SSPTRI( const char* uplo, const fortran_int_t* n, float* ap,
1533         const fortran_int_t* ipiv, float* work, fortran_int_t* info );
1534 void LAPACK_DSPTRI( const char* uplo, const fortran_int_t* n, double* ap,
1535         const fortran_int_t* ipiv, double* work, fortran_int_t* info );
1536 void LAPACK_CSPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1537         const fortran_int_t* ipiv, void* work, fortran_int_t* info );
1538 void LAPACK_ZSPTRI( const char* uplo, const fortran_int_t* n, void* ap,
1539         const fortran_int_t* ipiv, void* work, fortran_int_t* info );
1540 
1541 // Value-type variants of sptrs
1542 void LAPACK_SSPTRS( const char* uplo, const fortran_int_t* n,
1543         const fortran_int_t* nrhs, const float* ap, const fortran_int_t* ipiv,
1544         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1545 void LAPACK_DSPTRS( const char* uplo, const fortran_int_t* n,
1546         const fortran_int_t* nrhs, const double* ap,
1547         const fortran_int_t* ipiv, double* b, const fortran_int_t* ldb,
1548         fortran_int_t* info );
1549 void LAPACK_CSPTRS( const char* uplo, const fortran_int_t* n,
1550         const fortran_int_t* nrhs, const void* ap, const fortran_int_t* ipiv,
1551         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1552 void LAPACK_ZSPTRS( const char* uplo, const fortran_int_t* n,
1553         const fortran_int_t* nrhs, const void* ap, const fortran_int_t* ipiv,
1554         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1555 
1556 // Value-type variants of sycon
1557 void LAPACK_SSYCON( const char* uplo, const fortran_int_t* n, const float* a,
1558         const fortran_int_t* lda, const fortran_int_t* ipiv,
1559         const float* anorm, float* rcond, float* work, fortran_int_t* iwork,
1560         fortran_int_t* info );
1561 void LAPACK_DSYCON( const char* uplo, const fortran_int_t* n, const double* a,
1562         const fortran_int_t* lda, const fortran_int_t* ipiv,
1563         const double* anorm, double* rcond, double* work,
1564         fortran_int_t* iwork, fortran_int_t* info );
1565 void LAPACK_CSYCON( const char* uplo, const fortran_int_t* n, const void* a,
1566         const fortran_int_t* lda, const fortran_int_t* ipiv,
1567         const float* anorm, float* rcond, void* work, fortran_int_t* info );
1568 void LAPACK_ZSYCON( const char* uplo, const fortran_int_t* n, const void* a,
1569         const fortran_int_t* lda, const fortran_int_t* ipiv,
1570         const double* anorm, double* rcond, void* work, fortran_int_t* info );
1571 
1572 // Value-type variants of syrfs
1573 void LAPACK_SSYRFS( const char* uplo, const fortran_int_t* n,
1574         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
1575         const float* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
1576         const float* b, const fortran_int_t* ldb, float* x,
1577         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
1578         fortran_int_t* iwork, fortran_int_t* info );
1579 void LAPACK_DSYRFS( const char* uplo, const fortran_int_t* n,
1580         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
1581         const double* af, const fortran_int_t* ldaf,
1582         const fortran_int_t* ipiv, const double* b, const fortran_int_t* ldb,
1583         double* x, const fortran_int_t* ldx, double* ferr, double* berr,
1584         double* work, fortran_int_t* iwork, fortran_int_t* info );
1585 void LAPACK_CSYRFS( const char* uplo, const fortran_int_t* n,
1586         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1587         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
1588         const void* b, const fortran_int_t* ldb, void* x,
1589         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
1590         float* rwork, fortran_int_t* info );
1591 void LAPACK_ZSYRFS( const char* uplo, const fortran_int_t* n,
1592         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1593         const void* af, const fortran_int_t* ldaf, const fortran_int_t* ipiv,
1594         const void* b, const fortran_int_t* ldb, void* x,
1595         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
1596         double* rwork, fortran_int_t* info );
1597 
1598 // Value-type variants of sytrf
1599 void LAPACK_SSYTRF( const char* uplo, const fortran_int_t* n, float* a,
1600         const fortran_int_t* lda, fortran_int_t* ipiv, float* work,
1601         const fortran_int_t* lwork, fortran_int_t* info );
1602 void LAPACK_DSYTRF( const char* uplo, const fortran_int_t* n, double* a,
1603         const fortran_int_t* lda, fortran_int_t* ipiv, double* work,
1604         const fortran_int_t* lwork, fortran_int_t* info );
1605 void LAPACK_CSYTRF( const char* uplo, const fortran_int_t* n, void* a,
1606         const fortran_int_t* lda, fortran_int_t* ipiv, void* work,
1607         const fortran_int_t* lwork, fortran_int_t* info );
1608 void LAPACK_ZSYTRF( const char* uplo, const fortran_int_t* n, void* a,
1609         const fortran_int_t* lda, fortran_int_t* ipiv, void* work,
1610         const fortran_int_t* lwork, fortran_int_t* info );
1611 
1612 // Value-type variants of sytri
1613 void LAPACK_SSYTRI( const char* uplo, const fortran_int_t* n, float* a,
1614         const fortran_int_t* lda, const fortran_int_t* ipiv, float* work,
1615         fortran_int_t* info );
1616 void LAPACK_DSYTRI( const char* uplo, const fortran_int_t* n, double* a,
1617         const fortran_int_t* lda, const fortran_int_t* ipiv, double* work,
1618         fortran_int_t* info );
1619 void LAPACK_CSYTRI( const char* uplo, const fortran_int_t* n, void* a,
1620         const fortran_int_t* lda, const fortran_int_t* ipiv, void* work,
1621         fortran_int_t* info );
1622 void LAPACK_ZSYTRI( const char* uplo, const fortran_int_t* n, void* a,
1623         const fortran_int_t* lda, const fortran_int_t* ipiv, void* work,
1624         fortran_int_t* info );
1625 
1626 // Value-type variants of sytrs
1627 void LAPACK_SSYTRS( const char* uplo, const fortran_int_t* n,
1628         const fortran_int_t* nrhs, const float* a, const fortran_int_t* lda,
1629         const fortran_int_t* ipiv, float* b, const fortran_int_t* ldb,
1630         fortran_int_t* info );
1631 void LAPACK_DSYTRS( const char* uplo, const fortran_int_t* n,
1632         const fortran_int_t* nrhs, const double* a, const fortran_int_t* lda,
1633         const fortran_int_t* ipiv, double* b, const fortran_int_t* ldb,
1634         fortran_int_t* info );
1635 void LAPACK_CSYTRS( const char* uplo, const fortran_int_t* n,
1636         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1637         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
1638         fortran_int_t* info );
1639 void LAPACK_ZSYTRS( const char* uplo, const fortran_int_t* n,
1640         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
1641         const fortran_int_t* ipiv, void* b, const fortran_int_t* ldb,
1642         fortran_int_t* info );
1643 
1644 // Value-type variants of tbcon
1645 void LAPACK_STBCON( const char* norm, const char* uplo, const char* diag,
1646         const fortran_int_t* n, const fortran_int_t* kd, const float* ab,
1647         const fortran_int_t* ldab, float* rcond, float* work,
1648         fortran_int_t* iwork, fortran_int_t* info );
1649 void LAPACK_DTBCON( const char* norm, const char* uplo, const char* diag,
1650         const fortran_int_t* n, const fortran_int_t* kd, const double* ab,
1651         const fortran_int_t* ldab, double* rcond, double* work,
1652         fortran_int_t* iwork, fortran_int_t* info );
1653 void LAPACK_CTBCON( const char* norm, const char* uplo, const char* diag,
1654         const fortran_int_t* n, const fortran_int_t* kd, const void* ab,
1655         const fortran_int_t* ldab, float* rcond, void* work, float* rwork,
1656         fortran_int_t* info );
1657 void LAPACK_ZTBCON( const char* norm, const char* uplo, const char* diag,
1658         const fortran_int_t* n, const fortran_int_t* kd, const void* ab,
1659         const fortran_int_t* ldab, double* rcond, void* work, double* rwork,
1660         fortran_int_t* info );
1661 
1662 // Value-type variants of tbrfs
1663 void LAPACK_STBRFS( const char* uplo, const char* trans, const char* diag,
1664         const fortran_int_t* n, const fortran_int_t* kd,
1665         const fortran_int_t* nrhs, const float* ab, const fortran_int_t* ldab,
1666         const float* b, const fortran_int_t* ldb, const float* x,
1667         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
1668         fortran_int_t* iwork, fortran_int_t* info );
1669 void LAPACK_DTBRFS( const char* uplo, const char* trans, const char* diag,
1670         const fortran_int_t* n, const fortran_int_t* kd,
1671         const fortran_int_t* nrhs, const double* ab,
1672         const fortran_int_t* ldab, const double* b, const fortran_int_t* ldb,
1673         const double* x, const fortran_int_t* ldx, double* ferr, double* berr,
1674         double* work, fortran_int_t* iwork, fortran_int_t* info );
1675 void LAPACK_CTBRFS( const char* uplo, const char* trans, const char* diag,
1676         const fortran_int_t* n, const fortran_int_t* kd,
1677         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
1678         const void* b, const fortran_int_t* ldb, const void* x,
1679         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
1680         float* rwork, fortran_int_t* info );
1681 void LAPACK_ZTBRFS( const char* uplo, const char* trans, const char* diag,
1682         const fortran_int_t* n, const fortran_int_t* kd,
1683         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
1684         const void* b, const fortran_int_t* ldb, const void* x,
1685         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
1686         double* rwork, fortran_int_t* info );
1687 
1688 // Value-type variants of tbtrs
1689 void LAPACK_STBTRS( const char* uplo, const char* trans, const char* diag,
1690         const fortran_int_t* n, const fortran_int_t* kd,
1691         const fortran_int_t* nrhs, const float* ab, const fortran_int_t* ldab,
1692         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1693 void LAPACK_DTBTRS( const char* uplo, const char* trans, const char* diag,
1694         const fortran_int_t* n, const fortran_int_t* kd,
1695         const fortran_int_t* nrhs, const double* ab,
1696         const fortran_int_t* ldab, double* b, const fortran_int_t* ldb,
1697         fortran_int_t* info );
1698 void LAPACK_CTBTRS( const char* uplo, const char* trans, const char* diag,
1699         const fortran_int_t* n, const fortran_int_t* kd,
1700         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
1701         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1702 void LAPACK_ZTBTRS( const char* uplo, const char* trans, const char* diag,
1703         const fortran_int_t* n, const fortran_int_t* kd,
1704         const fortran_int_t* nrhs, const void* ab, const fortran_int_t* ldab,
1705         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1706 
1707 // Value-type variants of tftri
1708 void LAPACK_STFTRI( const char* transr, const char* uplo, const char* diag,
1709         const fortran_int_t* n, float* a, fortran_int_t* info );
1710 void LAPACK_DTFTRI( const char* transr, const char* uplo, const char* diag,
1711         const fortran_int_t* n, double* a, fortran_int_t* info );
1712 void LAPACK_CTFTRI( const char* transr, const char* uplo, const char* diag,
1713         const fortran_int_t* n, void* a, fortran_int_t* info );
1714 void LAPACK_ZTFTRI( const char* transr, const char* uplo, const char* diag,
1715         const fortran_int_t* n, void* a, fortran_int_t* info );
1716 
1717 // Value-type variants of tpcon
1718 void LAPACK_STPCON( const char* norm, const char* uplo, const char* diag,
1719         const fortran_int_t* n, const float* ap, float* rcond, float* work,
1720         fortran_int_t* iwork, fortran_int_t* info );
1721 void LAPACK_DTPCON( const char* norm, const char* uplo, const char* diag,
1722         const fortran_int_t* n, const double* ap, double* rcond, double* work,
1723         fortran_int_t* iwork, fortran_int_t* info );
1724 void LAPACK_CTPCON( const char* norm, const char* uplo, const char* diag,
1725         const fortran_int_t* n, const void* ap, float* rcond, void* work,
1726         float* rwork, fortran_int_t* info );
1727 void LAPACK_ZTPCON( const char* norm, const char* uplo, const char* diag,
1728         const fortran_int_t* n, const void* ap, double* rcond, void* work,
1729         double* rwork, fortran_int_t* info );
1730 
1731 // Value-type variants of tprfs
1732 void LAPACK_STPRFS( const char* uplo, const char* trans, const char* diag,
1733         const fortran_int_t* n, const fortran_int_t* nrhs, const float* ap,
1734         const float* b, const fortran_int_t* ldb, const float* x,
1735         const fortran_int_t* ldx, float* ferr, float* berr, float* work,
1736         fortran_int_t* iwork, fortran_int_t* info );
1737 void LAPACK_DTPRFS( const char* uplo, const char* trans, const char* diag,
1738         const fortran_int_t* n, const fortran_int_t* nrhs, const double* ap,
1739         const double* b, const fortran_int_t* ldb, const double* x,
1740         const fortran_int_t* ldx, double* ferr, double* berr, double* work,
1741         fortran_int_t* iwork, fortran_int_t* info );
1742 void LAPACK_CTPRFS( const char* uplo, const char* trans, const char* diag,
1743         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
1744         const void* b, const fortran_int_t* ldb, const void* x,
1745         const fortran_int_t* ldx, float* ferr, float* berr, void* work,
1746         float* rwork, fortran_int_t* info );
1747 void LAPACK_ZTPRFS( const char* uplo, const char* trans, const char* diag,
1748         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
1749         const void* b, const fortran_int_t* ldb, const void* x,
1750         const fortran_int_t* ldx, double* ferr, double* berr, void* work,
1751         double* rwork, fortran_int_t* info );
1752 
1753 // Value-type variants of tptri
1754 void LAPACK_STPTRI( const char* uplo, const char* diag,
1755         const fortran_int_t* n, float* ap, fortran_int_t* info );
1756 void LAPACK_DTPTRI( const char* uplo, const char* diag,
1757         const fortran_int_t* n, double* ap, fortran_int_t* info );
1758 void LAPACK_CTPTRI( const char* uplo, const char* diag,
1759         const fortran_int_t* n, void* ap, fortran_int_t* info );
1760 void LAPACK_ZTPTRI( const char* uplo, const char* diag,
1761         const fortran_int_t* n, void* ap, fortran_int_t* info );
1762 
1763 // Value-type variants of tptrs
1764 void LAPACK_STPTRS( const char* uplo, const char* trans, const char* diag,
1765         const fortran_int_t* n, const fortran_int_t* nrhs, const float* ap,
1766         float* b, const fortran_int_t* ldb, fortran_int_t* info );
1767 void LAPACK_DTPTRS( const char* uplo, const char* trans, const char* diag,
1768         const fortran_int_t* n, const fortran_int_t* nrhs, const double* ap,
1769         double* b, const fortran_int_t* ldb, fortran_int_t* info );
1770 void LAPACK_CTPTRS( const char* uplo, const char* trans, const char* diag,
1771         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
1772         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1773 void LAPACK_ZTPTRS( const char* uplo, const char* trans, const char* diag,
1774         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
1775         void* b, const fortran_int_t* ldb, fortran_int_t* info );
1776 
1777 // Value-type variants of trcon
1778 void LAPACK_STRCON( const char* norm, const char* uplo, const char* diag,
1779         const fortran_int_t* n, const float* a, const fortran_int_t* lda,
1780         float* rcond, float* work, fortran_int_t* iwork, fortran_int_t* info );
1781 void LAPACK_DTRCON( const char* norm, const char* uplo, const char* diag,
1782         const fortran_int_t* n, const double* a, const fortran_int_t* lda,
1783         double* rcond, double* work, fortran_int_t* iwork,
1784         fortran_int_t* info );
1785 void LAPACK_CTRCON( const char* norm, const char* uplo, const char* diag,
1786         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
1787         float* rcond, void* work, float* rwork, fortran_int_t* info );
1788 void LAPACK_ZTRCON( const char* norm, const char* uplo, const char* diag,
1789         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
1790         double* rcond, void* work, double* rwork, fortran_int_t* info );
1791 
1792 // Value-type variants of trrfs
1793 void LAPACK_STRRFS( const char* uplo, const char* trans, const char* diag,
1794         const fortran_int_t* n, const fortran_int_t* nrhs, const float* a,
1795         const fortran_int_t* lda, const float* b, const fortran_int_t* ldb,
1796         const float* x, const fortran_int_t* ldx, float* ferr, float* berr,
1797         float* work, fortran_int_t* iwork, fortran_int_t* info );
1798 void LAPACK_DTRRFS( const char* uplo, const char* trans, const char* diag,
1799         const fortran_int_t* n, const fortran_int_t* nrhs, const double* a,
1800         const fortran_int_t* lda, const double* b, const fortran_int_t* ldb,
1801         const double* x, const fortran_int_t* ldx, double* ferr, double* berr,
1802         double* work, fortran_int_t* iwork, fortran_int_t* info );
1803 void LAPACK_CTRRFS( const char* uplo, const char* trans, const char* diag,
1804         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1805         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
1806         const void* x, const fortran_int_t* ldx, float* ferr, float* berr,
1807         void* work, float* rwork, fortran_int_t* info );
1808 void LAPACK_ZTRRFS( const char* uplo, const char* trans, const char* diag,
1809         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1810         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
1811         const void* x, const fortran_int_t* ldx, double* ferr, double* berr,
1812         void* work, double* rwork, fortran_int_t* info );
1813 
1814 // Value-type variants of trtri
1815 void LAPACK_STRTRI( const char* uplo, const char* diag,
1816         const fortran_int_t* n, float* a, const fortran_int_t* lda,
1817         fortran_int_t* info );
1818 void LAPACK_DTRTRI( const char* uplo, const char* diag,
1819         const fortran_int_t* n, double* a, const fortran_int_t* lda,
1820         fortran_int_t* info );
1821 void LAPACK_CTRTRI( const char* uplo, const char* diag,
1822         const fortran_int_t* n, void* a, const fortran_int_t* lda,
1823         fortran_int_t* info );
1824 void LAPACK_ZTRTRI( const char* uplo, const char* diag,
1825         const fortran_int_t* n, void* a, const fortran_int_t* lda,
1826         fortran_int_t* info );
1827 
1828 // Value-type variants of trtrs
1829 void LAPACK_STRTRS( const char* uplo, const char* trans, const char* diag,
1830         const fortran_int_t* n, const fortran_int_t* nrhs, const float* a,
1831         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
1832         fortran_int_t* info );
1833 void LAPACK_DTRTRS( const char* uplo, const char* trans, const char* diag,
1834         const fortran_int_t* n, const fortran_int_t* nrhs, const double* a,
1835         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
1836         fortran_int_t* info );
1837 void LAPACK_CTRTRS( const char* uplo, const char* trans, const char* diag,
1838         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1839         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
1840         fortran_int_t* info );
1841 void LAPACK_ZTRTRS( const char* uplo, const char* trans, const char* diag,
1842         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
1843         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
1844         fortran_int_t* info );
1845 
1846 // Value-type variants of hbtrd
1847 void LAPACK_CHBTRD( const char* vect, const char* uplo,
1848         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
1849         const fortran_int_t* ldab, float* d, float* e, void* q,
1850         const fortran_int_t* ldq, void* work, fortran_int_t* info );
1851 void LAPACK_ZHBTRD( const char* vect, const char* uplo,
1852         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
1853         const fortran_int_t* ldab, double* d, double* e, void* q,
1854         const fortran_int_t* ldq, void* work, fortran_int_t* info );
1855 
1856 // Value-type variants of hetrd
1857 void LAPACK_CHETRD( const char* uplo, const fortran_int_t* n, void* a,
1858         const fortran_int_t* lda, float* d, float* e, void* tau, void* work,
1859         const fortran_int_t* lwork, fortran_int_t* info );
1860 void LAPACK_ZHETRD( const char* uplo, const fortran_int_t* n, void* a,
1861         const fortran_int_t* lda, double* d, double* e, void* tau, void* work,
1862         const fortran_int_t* lwork, fortran_int_t* info );
1863 
1864 // Value-type variants of hptrd
1865 void LAPACK_CHPTRD( const char* uplo, const fortran_int_t* n, void* ap,
1866         float* d, float* e, void* tau, fortran_int_t* info );
1867 void LAPACK_ZHPTRD( const char* uplo, const fortran_int_t* n, void* ap,
1868         double* d, double* e, void* tau, fortran_int_t* info );
1869 
1870 // Value-type variants of opgtr
1871 void LAPACK_SOPGTR( const char* uplo, const fortran_int_t* n, const float* ap,
1872         const float* tau, float* q, const fortran_int_t* ldq, float* work,
1873         fortran_int_t* info );
1874 void LAPACK_DOPGTR( const char* uplo, const fortran_int_t* n,
1875         const double* ap, const double* tau, double* q,
1876         const fortran_int_t* ldq, double* work, fortran_int_t* info );
1877 
1878 // Value-type variants of opmtr
1879 void LAPACK_SOPMTR( const char* side, const char* uplo, const char* trans,
1880         const fortran_int_t* m, const fortran_int_t* n, const float* ap,
1881         const float* tau, float* c, const fortran_int_t* ldc, float* work,
1882         fortran_int_t* info );
1883 void LAPACK_DOPMTR( const char* side, const char* uplo, const char* trans,
1884         const fortran_int_t* m, const fortran_int_t* n, const double* ap,
1885         const double* tau, double* c, const fortran_int_t* ldc, double* work,
1886         fortran_int_t* info );
1887 
1888 // Value-type variants of orgtr
1889 void LAPACK_SORGTR( const char* uplo, const fortran_int_t* n, float* a,
1890         const fortran_int_t* lda, const float* tau, float* work,
1891         const fortran_int_t* lwork, fortran_int_t* info );
1892 void LAPACK_DORGTR( const char* uplo, const fortran_int_t* n, double* a,
1893         const fortran_int_t* lda, const double* tau, double* work,
1894         const fortran_int_t* lwork, fortran_int_t* info );
1895 
1896 // Value-type variants of ormtr
1897 void LAPACK_SORMTR( const char* side, const char* uplo, const char* trans,
1898         const fortran_int_t* m, const fortran_int_t* n, const float* a,
1899         const fortran_int_t* lda, const float* tau, float* c,
1900         const fortran_int_t* ldc, float* work, const fortran_int_t* lwork,
1901         fortran_int_t* info );
1902 void LAPACK_DORMTR( const char* side, const char* uplo, const char* trans,
1903         const fortran_int_t* m, const fortran_int_t* n, const double* a,
1904         const fortran_int_t* lda, const double* tau, double* c,
1905         const fortran_int_t* ldc, double* work, const fortran_int_t* lwork,
1906         fortran_int_t* info );
1907 
1908 // Value-type variants of pteqr
1909 void LAPACK_SPTEQR( const char* compz, const fortran_int_t* n, float* d,
1910         float* e, float* z, const fortran_int_t* ldz, float* work,
1911         fortran_int_t* info );
1912 void LAPACK_DPTEQR( const char* compz, const fortran_int_t* n, double* d,
1913         double* e, double* z, const fortran_int_t* ldz, double* work,
1914         fortran_int_t* info );
1915 void LAPACK_CPTEQR( const char* compz, const fortran_int_t* n, float* d,
1916         float* e, void* z, const fortran_int_t* ldz, float* work,
1917         fortran_int_t* info );
1918 void LAPACK_ZPTEQR( const char* compz, const fortran_int_t* n, double* d,
1919         double* e, void* z, const fortran_int_t* ldz, double* work,
1920         fortran_int_t* info );
1921 
1922 // Value-type variants of sbtrd
1923 void LAPACK_SSBTRD( const char* vect, const char* uplo,
1924         const fortran_int_t* n, const fortran_int_t* kd, float* ab,
1925         const fortran_int_t* ldab, float* d, float* e, float* q,
1926         const fortran_int_t* ldq, float* work, fortran_int_t* info );
1927 void LAPACK_DSBTRD( const char* vect, const char* uplo,
1928         const fortran_int_t* n, const fortran_int_t* kd, double* ab,
1929         const fortran_int_t* ldab, double* d, double* e, double* q,
1930         const fortran_int_t* ldq, double* work, fortran_int_t* info );
1931 
1932 // Value-type variants of sptrd
1933 void LAPACK_SSPTRD( const char* uplo, const fortran_int_t* n, float* ap,
1934         float* d, float* e, float* tau, fortran_int_t* info );
1935 void LAPACK_DSPTRD( const char* uplo, const fortran_int_t* n, double* ap,
1936         double* d, double* e, double* tau, fortran_int_t* info );
1937 
1938 // Value-type variants of stebz
1939 void LAPACK_SSTEBZ( const char* range, const char* order,
1940         const fortran_int_t* n, const float* vl, const float* vu,
1941         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
1942         const float* d, const float* e, fortran_int_t* m,
1943         fortran_int_t* nsplit, float* w, fortran_int_t* iblock,
1944         fortran_int_t* isplit, float* work, fortran_int_t* iwork,
1945         fortran_int_t* info );
1946 void LAPACK_DSTEBZ( const char* range, const char* order,
1947         const fortran_int_t* n, const double* vl, const double* vu,
1948         const fortran_int_t* il, const fortran_int_t* iu,
1949         const double* abstol, const double* d, const double* e,
1950         fortran_int_t* m, fortran_int_t* nsplit, double* w,
1951         fortran_int_t* iblock, fortran_int_t* isplit, double* work,
1952         fortran_int_t* iwork, fortran_int_t* info );
1953 
1954 // Value-type variants of stedc
1955 void LAPACK_SSTEDC( const char* compz, const fortran_int_t* n, float* d,
1956         float* e, float* z, const fortran_int_t* ldz, float* work,
1957         const fortran_int_t* lwork, fortran_int_t* iwork,
1958         const fortran_int_t* liwork, fortran_int_t* info );
1959 void LAPACK_DSTEDC( const char* compz, const fortran_int_t* n, double* d,
1960         double* e, double* z, const fortran_int_t* ldz, double* work,
1961         const fortran_int_t* lwork, fortran_int_t* iwork,
1962         const fortran_int_t* liwork, fortran_int_t* info );
1963 void LAPACK_CSTEDC( const char* compz, const fortran_int_t* n, float* d,
1964         float* e, void* z, const fortran_int_t* ldz, void* work,
1965         const fortran_int_t* lwork, float* rwork, const fortran_int_t* lrwork,
1966         fortran_int_t* iwork, const fortran_int_t* liwork,
1967         fortran_int_t* info );
1968 void LAPACK_ZSTEDC( const char* compz, const fortran_int_t* n, double* d,
1969         double* e, void* z, const fortran_int_t* ldz, void* work,
1970         const fortran_int_t* lwork, double* rwork,
1971         const fortran_int_t* lrwork, fortran_int_t* iwork,
1972         const fortran_int_t* liwork, fortran_int_t* info );
1973 
1974 // Value-type variants of stegr
1975 void LAPACK_SSTEGR( const char* jobz, const char* range,
1976         const fortran_int_t* n, float* d, float* e, const float* vl,
1977         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
1978         const float* abstol, fortran_int_t* m, float* w, float* z,
1979         const fortran_int_t* ldz, fortran_int_t* isuppz, float* work,
1980         const fortran_int_t* lwork, fortran_int_t* iwork,
1981         const fortran_int_t* liwork, fortran_int_t* info );
1982 void LAPACK_DSTEGR( const char* jobz, const char* range,
1983         const fortran_int_t* n, double* d, double* e, const double* vl,
1984         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
1985         const double* abstol, fortran_int_t* m, double* w, double* z,
1986         const fortran_int_t* ldz, fortran_int_t* isuppz, double* work,
1987         const fortran_int_t* lwork, fortran_int_t* iwork,
1988         const fortran_int_t* liwork, fortran_int_t* info );
1989 void LAPACK_CSTEGR( const char* jobz, const char* range,
1990         const fortran_int_t* n, float* d, float* e, const float* vl,
1991         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
1992         const float* abstol, fortran_int_t* m, float* w, void* z,
1993         const fortran_int_t* ldz, fortran_int_t* isuppz, float* work,
1994         const fortran_int_t* lwork, fortran_int_t* iwork,
1995         const fortran_int_t* liwork, fortran_int_t* info );
1996 void LAPACK_ZSTEGR( const char* jobz, const char* range,
1997         const fortran_int_t* n, double* d, double* e, const double* vl,
1998         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
1999         const double* abstol, fortran_int_t* m, double* w, void* z,
2000         const fortran_int_t* ldz, fortran_int_t* isuppz, double* work,
2001         const fortran_int_t* lwork, fortran_int_t* iwork,
2002         const fortran_int_t* liwork, fortran_int_t* info );
2003 
2004 // Value-type variants of stein
2005 void LAPACK_SSTEIN( const fortran_int_t* n, const float* d, const float* e,
2006         const fortran_int_t* m, const float* w, const fortran_int_t* iblock,
2007         const fortran_int_t* isplit, float* z, const fortran_int_t* ldz,
2008         float* work, fortran_int_t* iwork, fortran_int_t* ifail,
2009         fortran_int_t* info );
2010 void LAPACK_DSTEIN( const fortran_int_t* n, const double* d, const double* e,
2011         const fortran_int_t* m, const double* w, const fortran_int_t* iblock,
2012         const fortran_int_t* isplit, double* z, const fortran_int_t* ldz,
2013         double* work, fortran_int_t* iwork, fortran_int_t* ifail,
2014         fortran_int_t* info );
2015 void LAPACK_CSTEIN( const fortran_int_t* n, const float* d, const float* e,
2016         const fortran_int_t* m, const float* w, const fortran_int_t* iblock,
2017         const fortran_int_t* isplit, void* z, const fortran_int_t* ldz,
2018         float* work, fortran_int_t* iwork, fortran_int_t* ifail,
2019         fortran_int_t* info );
2020 void LAPACK_ZSTEIN( const fortran_int_t* n, const double* d, const double* e,
2021         const fortran_int_t* m, const double* w, const fortran_int_t* iblock,
2022         const fortran_int_t* isplit, void* z, const fortran_int_t* ldz,
2023         double* work, fortran_int_t* iwork, fortran_int_t* ifail,
2024         fortran_int_t* info );
2025 
2026 // Value-type variants of stemr
2027 void LAPACK_SSTEMR( const char* jobz, const char* range,
2028         const fortran_int_t* n, float* d, float* e, const float* vl,
2029         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
2030         fortran_int_t* m, float* w, float* z, const fortran_int_t* ldz,
2031         const fortran_int_t* nzc, fortran_int_t* isuppz,
2032         fortran_bool_t* tryrac, float* work, const fortran_int_t* lwork,
2033         fortran_int_t* iwork, const fortran_int_t* liwork,
2034         fortran_int_t* info );
2035 void LAPACK_DSTEMR( const char* jobz, const char* range,
2036         const fortran_int_t* n, double* d, double* e, const double* vl,
2037         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
2038         fortran_int_t* m, double* w, double* z, const fortran_int_t* ldz,
2039         const fortran_int_t* nzc, fortran_int_t* isuppz,
2040         fortran_bool_t* tryrac, double* work, const fortran_int_t* lwork,
2041         fortran_int_t* iwork, const fortran_int_t* liwork,
2042         fortran_int_t* info );
2043 void LAPACK_CSTEMR( const char* jobz, const char* range,
2044         const fortran_int_t* n, float* d, float* e, const float* vl,
2045         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
2046         fortran_int_t* m, float* w, void* z, const fortran_int_t* ldz,
2047         const fortran_int_t* nzc, fortran_int_t* isuppz,
2048         fortran_bool_t* tryrac, float* work, const fortran_int_t* lwork,
2049         fortran_int_t* iwork, const fortran_int_t* liwork,
2050         fortran_int_t* info );
2051 void LAPACK_ZSTEMR( const char* jobz, const char* range,
2052         const fortran_int_t* n, double* d, double* e, const double* vl,
2053         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
2054         fortran_int_t* m, double* w, void* z, const fortran_int_t* ldz,
2055         const fortran_int_t* nzc, fortran_int_t* isuppz,
2056         fortran_bool_t* tryrac, double* work, const fortran_int_t* lwork,
2057         fortran_int_t* iwork, const fortran_int_t* liwork,
2058         fortran_int_t* info );
2059 
2060 // Value-type variants of steqr
2061 void LAPACK_SSTEQR( const char* compz, const fortran_int_t* n, float* d,
2062         float* e, float* z, const fortran_int_t* ldz, float* work,
2063         fortran_int_t* info );
2064 void LAPACK_DSTEQR( const char* compz, const fortran_int_t* n, double* d,
2065         double* e, double* z, const fortran_int_t* ldz, double* work,
2066         fortran_int_t* info );
2067 void LAPACK_CSTEQR( const char* compz, const fortran_int_t* n, float* d,
2068         float* e, void* z, const fortran_int_t* ldz, float* work,
2069         fortran_int_t* info );
2070 void LAPACK_ZSTEQR( const char* compz, const fortran_int_t* n, double* d,
2071         double* e, void* z, const fortran_int_t* ldz, double* work,
2072         fortran_int_t* info );
2073 
2074 // Value-type variants of sterf
2075 void LAPACK_SSTERF( const fortran_int_t* n, float* d, float* e,
2076         fortran_int_t* info );
2077 void LAPACK_DSTERF( const fortran_int_t* n, double* d, double* e,
2078         fortran_int_t* info );
2079 
2080 // Value-type variants of sytrd
2081 void LAPACK_SSYTRD( const char* uplo, const fortran_int_t* n, float* a,
2082         const fortran_int_t* lda, float* d, float* e, float* tau, float* work,
2083         const fortran_int_t* lwork, fortran_int_t* info );
2084 void LAPACK_DSYTRD( const char* uplo, const fortran_int_t* n, double* a,
2085         const fortran_int_t* lda, double* d, double* e, double* tau,
2086         double* work, const fortran_int_t* lwork, fortran_int_t* info );
2087 
2088 // Value-type variants of ungtr
2089 void LAPACK_CUNGTR( const char* uplo, const fortran_int_t* n, void* a,
2090         const fortran_int_t* lda, const void* tau, void* work,
2091         const fortran_int_t* lwork, fortran_int_t* info );
2092 void LAPACK_ZUNGTR( const char* uplo, const fortran_int_t* n, void* a,
2093         const fortran_int_t* lda, const void* tau, void* work,
2094         const fortran_int_t* lwork, fortran_int_t* info );
2095 
2096 // Value-type variants of unmtr
2097 void LAPACK_CUNMTR( const char* side, const char* uplo, const char* trans,
2098         const fortran_int_t* m, const fortran_int_t* n, const void* a,
2099         const fortran_int_t* lda, const void* tau, void* c,
2100         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
2101         fortran_int_t* info );
2102 void LAPACK_ZUNMTR( const char* side, const char* uplo, const char* trans,
2103         const fortran_int_t* m, const fortran_int_t* n, const void* a,
2104         const fortran_int_t* lda, const void* tau, void* c,
2105         const fortran_int_t* ldc, void* work, const fortran_int_t* lwork,
2106         fortran_int_t* info );
2107 
2108 // Value-type variants of upgtr
2109 void LAPACK_CUPGTR( const char* uplo, const fortran_int_t* n, const void* ap,
2110         const void* tau, void* q, const fortran_int_t* ldq, void* work,
2111         fortran_int_t* info );
2112 void LAPACK_ZUPGTR( const char* uplo, const fortran_int_t* n, const void* ap,
2113         const void* tau, void* q, const fortran_int_t* ldq, void* work,
2114         fortran_int_t* info );
2115 
2116 // Value-type variants of upmtr
2117 void LAPACK_CUPMTR( const char* side, const char* uplo, const char* trans,
2118         const fortran_int_t* m, const fortran_int_t* n, const void* ap,
2119         const void* tau, void* c, const fortran_int_t* ldc, void* work,
2120         fortran_int_t* info );
2121 void LAPACK_ZUPMTR( const char* side, const char* uplo, const char* trans,
2122         const fortran_int_t* m, const fortran_int_t* n, const void* ap,
2123         const void* tau, void* c, const fortran_int_t* ldc, void* work,
2124         fortran_int_t* info );
2125 
2126 // Value-type variants of ggbak
2127 void LAPACK_SGGBAK( const char* job, const char* side, const fortran_int_t* n,
2128         const fortran_int_t* ilo, const fortran_int_t* ihi,
2129         const float* lscale, const float* rscale, const fortran_int_t* m,
2130         float* v, const fortran_int_t* ldv, fortran_int_t* info );
2131 void LAPACK_DGGBAK( const char* job, const char* side, const fortran_int_t* n,
2132         const fortran_int_t* ilo, const fortran_int_t* ihi,
2133         const double* lscale, const double* rscale, const fortran_int_t* m,
2134         double* v, const fortran_int_t* ldv, fortran_int_t* info );
2135 void LAPACK_CGGBAK( const char* job, const char* side, const fortran_int_t* n,
2136         const fortran_int_t* ilo, const fortran_int_t* ihi,
2137         const float* lscale, const float* rscale, const fortran_int_t* m,
2138         void* v, const fortran_int_t* ldv, fortran_int_t* info );
2139 void LAPACK_ZGGBAK( const char* job, const char* side, const fortran_int_t* n,
2140         const fortran_int_t* ilo, const fortran_int_t* ihi,
2141         const double* lscale, const double* rscale, const fortran_int_t* m,
2142         void* v, const fortran_int_t* ldv, fortran_int_t* info );
2143 
2144 // Value-type variants of ggbal
2145 void LAPACK_SGGBAL( const char* job, const fortran_int_t* n, float* a,
2146         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2147         fortran_int_t* ilo, fortran_int_t* ihi, float* lscale, float* rscale,
2148         float* work, fortran_int_t* info );
2149 void LAPACK_DGGBAL( const char* job, const fortran_int_t* n, double* a,
2150         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2151         fortran_int_t* ilo, fortran_int_t* ihi, double* lscale,
2152         double* rscale, double* work, fortran_int_t* info );
2153 void LAPACK_CGGBAL( const char* job, const fortran_int_t* n, void* a,
2154         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2155         fortran_int_t* ilo, fortran_int_t* ihi, float* lscale, float* rscale,
2156         float* work, fortran_int_t* info );
2157 void LAPACK_ZGGBAL( const char* job, const fortran_int_t* n, void* a,
2158         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2159         fortran_int_t* ilo, fortran_int_t* ihi, double* lscale,
2160         double* rscale, double* work, fortran_int_t* info );
2161 
2162 // Value-type variants of gghrd
2163 void LAPACK_SGGHRD( const char* compq, const char* compz,
2164         const fortran_int_t* n, const fortran_int_t* ilo,
2165         const fortran_int_t* ihi, float* a, const fortran_int_t* lda,
2166         float* b, const fortran_int_t* ldb, float* q,
2167         const fortran_int_t* ldq, float* z, const fortran_int_t* ldz,
2168         fortran_int_t* info );
2169 void LAPACK_DGGHRD( const char* compq, const char* compz,
2170         const fortran_int_t* n, const fortran_int_t* ilo,
2171         const fortran_int_t* ihi, double* a, const fortran_int_t* lda,
2172         double* b, const fortran_int_t* ldb, double* q,
2173         const fortran_int_t* ldq, double* z, const fortran_int_t* ldz,
2174         fortran_int_t* info );
2175 void LAPACK_CGGHRD( const char* compq, const char* compz,
2176         const fortran_int_t* n, const fortran_int_t* ilo,
2177         const fortran_int_t* ihi, void* a, const fortran_int_t* lda, void* b,
2178         const fortran_int_t* ldb, void* q, const fortran_int_t* ldq, void* z,
2179         const fortran_int_t* ldz, fortran_int_t* info );
2180 void LAPACK_ZGGHRD( const char* compq, const char* compz,
2181         const fortran_int_t* n, const fortran_int_t* ilo,
2182         const fortran_int_t* ihi, void* a, const fortran_int_t* lda, void* b,
2183         const fortran_int_t* ldb, void* q, const fortran_int_t* ldq, void* z,
2184         const fortran_int_t* ldz, fortran_int_t* info );
2185 
2186 // Value-type variants of hgeqz
2187 void LAPACK_SHGEQZ( const char* job, const char* compq, const char* compz,
2188         const fortran_int_t* n, const fortran_int_t* ilo,
2189         const fortran_int_t* ihi, float* h, const fortran_int_t* ldh,
2190         float* t, const fortran_int_t* ldt, float* alphar, float* alphai,
2191         float* beta, float* q, const fortran_int_t* ldq, float* z,
2192         const fortran_int_t* ldz, float* work, const fortran_int_t* lwork,
2193         fortran_int_t* info );
2194 void LAPACK_DHGEQZ( const char* job, const char* compq, const char* compz,
2195         const fortran_int_t* n, const fortran_int_t* ilo,
2196         const fortran_int_t* ihi, double* h, const fortran_int_t* ldh,
2197         double* t, const fortran_int_t* ldt, double* alphar, double* alphai,
2198         double* beta, double* q, const fortran_int_t* ldq, double* z,
2199         const fortran_int_t* ldz, double* work, const fortran_int_t* lwork,
2200         fortran_int_t* info );
2201 void LAPACK_CHGEQZ( const char* job, const char* compq, const char* compz,
2202         const fortran_int_t* n, const fortran_int_t* ilo,
2203         const fortran_int_t* ihi, void* h, const fortran_int_t* ldh, void* t,
2204         const fortran_int_t* ldt, void* alpha, void* beta, void* q,
2205         const fortran_int_t* ldq, void* z, const fortran_int_t* ldz,
2206         void* work, const fortran_int_t* lwork, float* rwork,
2207         fortran_int_t* info );
2208 void LAPACK_ZHGEQZ( const char* job, const char* compq, const char* compz,
2209         const fortran_int_t* n, const fortran_int_t* ilo,
2210         const fortran_int_t* ihi, void* h, const fortran_int_t* ldh, void* t,
2211         const fortran_int_t* ldt, void* alpha, void* beta, void* q,
2212         const fortran_int_t* ldq, void* z, const fortran_int_t* ldz,
2213         void* work, const fortran_int_t* lwork, double* rwork,
2214         fortran_int_t* info );
2215 
2216 // Value-type variants of tgevc
2217 void LAPACK_STGEVC( const char* side, const char* howmny,
2218         const fortran_bool_t* select, const fortran_int_t* n, const float* s,
2219         const fortran_int_t* lds, const float* p, const fortran_int_t* ldp,
2220         float* vl, const fortran_int_t* ldvl, float* vr,
2221         const fortran_int_t* ldvr, const fortran_int_t* mm, fortran_int_t* m,
2222         float* work, fortran_int_t* info );
2223 void LAPACK_DTGEVC( const char* side, const char* howmny,
2224         const fortran_bool_t* select, const fortran_int_t* n, const double* s,
2225         const fortran_int_t* lds, const double* p, const fortran_int_t* ldp,
2226         double* vl, const fortran_int_t* ldvl, double* vr,
2227         const fortran_int_t* ldvr, const fortran_int_t* mm, fortran_int_t* m,
2228         double* work, fortran_int_t* info );
2229 void LAPACK_CTGEVC( const char* side, const char* howmny,
2230         const fortran_bool_t* select, const fortran_int_t* n, const void* s,
2231         const fortran_int_t* lds, const void* p, const fortran_int_t* ldp,
2232         void* vl, const fortran_int_t* ldvl, void* vr,
2233         const fortran_int_t* ldvr, const fortran_int_t* mm, fortran_int_t* m,
2234         void* work, float* rwork, fortran_int_t* info );
2235 void LAPACK_ZTGEVC( const char* side, const char* howmny,
2236         const fortran_bool_t* select, const fortran_int_t* n, const void* s,
2237         const fortran_int_t* lds, const void* p, const fortran_int_t* ldp,
2238         void* vl, const fortran_int_t* ldvl, void* vr,
2239         const fortran_int_t* ldvr, const fortran_int_t* mm, fortran_int_t* m,
2240         void* work, double* rwork, fortran_int_t* info );
2241 
2242 // Value-type variants of tgexc
2243 void LAPACK_STGEXC( const fortran_bool_t* wantq, const fortran_bool_t* wantz,
2244         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* b,
2245         const fortran_int_t* ldb, float* q, const fortran_int_t* ldq,
2246         float* z, const fortran_int_t* ldz, fortran_int_t* ifst,
2247         fortran_int_t* ilst, float* work, const fortran_int_t* lwork,
2248         fortran_int_t* info );
2249 void LAPACK_DTGEXC( const fortran_bool_t* wantq, const fortran_bool_t* wantz,
2250         const fortran_int_t* n, double* a, const fortran_int_t* lda,
2251         double* b, const fortran_int_t* ldb, double* q,
2252         const fortran_int_t* ldq, double* z, const fortran_int_t* ldz,
2253         fortran_int_t* ifst, fortran_int_t* ilst, double* work,
2254         const fortran_int_t* lwork, fortran_int_t* info );
2255 void LAPACK_CTGEXC( const fortran_bool_t* wantq, const fortran_bool_t* wantz,
2256         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2257         const fortran_int_t* ldb, void* q, const fortran_int_t* ldq, void* z,
2258         const fortran_int_t* ldz, const fortran_int_t* ifst,
2259         fortran_int_t* ilst, fortran_int_t* info );
2260 void LAPACK_ZTGEXC( const fortran_bool_t* wantq, const fortran_bool_t* wantz,
2261         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2262         const fortran_int_t* ldb, void* q, const fortran_int_t* ldq, void* z,
2263         const fortran_int_t* ldz, const fortran_int_t* ifst,
2264         fortran_int_t* ilst, fortran_int_t* info );
2265 
2266 // Value-type variants of tgsen
2267 void LAPACK_STGSEN( const fortran_int_t* ijob, const fortran_bool_t* wantq,
2268         const fortran_bool_t* wantz, const fortran_bool_t* select,
2269         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* b,
2270         const fortran_int_t* ldb, float* alphar, float* alphai, float* beta,
2271         float* q, const fortran_int_t* ldq, float* z,
2272         const fortran_int_t* ldz, fortran_int_t* m, float* pl, float* pr,
2273         float* dif, float* work, const fortran_int_t* lwork,
2274         fortran_int_t* iwork, const fortran_int_t* liwork,
2275         fortran_int_t* info );
2276 void LAPACK_DTGSEN( const fortran_int_t* ijob, const fortran_bool_t* wantq,
2277         const fortran_bool_t* wantz, const fortran_bool_t* select,
2278         const fortran_int_t* n, double* a, const fortran_int_t* lda,
2279         double* b, const fortran_int_t* ldb, double* alphar, double* alphai,
2280         double* beta, double* q, const fortran_int_t* ldq, double* z,
2281         const fortran_int_t* ldz, fortran_int_t* m, double* pl, double* pr,
2282         double* dif, double* work, const fortran_int_t* lwork,
2283         fortran_int_t* iwork, const fortran_int_t* liwork,
2284         fortran_int_t* info );
2285 void LAPACK_CTGSEN( const fortran_int_t* ijob, const fortran_bool_t* wantq,
2286         const fortran_bool_t* wantz, const fortran_bool_t* select,
2287         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2288         const fortran_int_t* ldb, void* alpha, void* beta, void* q,
2289         const fortran_int_t* ldq, void* z, const fortran_int_t* ldz,
2290         fortran_int_t* m, float* pl, float* pr, float* dif, void* work,
2291         const fortran_int_t* lwork, fortran_int_t* iwork,
2292         const fortran_int_t* liwork, fortran_int_t* info );
2293 void LAPACK_ZTGSEN( const fortran_int_t* ijob, const fortran_bool_t* wantq,
2294         const fortran_bool_t* wantz, const fortran_bool_t* select,
2295         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2296         const fortran_int_t* ldb, void* alpha, void* beta, void* q,
2297         const fortran_int_t* ldq, void* z, const fortran_int_t* ldz,
2298         fortran_int_t* m, double* pl, double* pr, double* dif, void* work,
2299         const fortran_int_t* lwork, fortran_int_t* iwork,
2300         const fortran_int_t* liwork, fortran_int_t* info );
2301 
2302 // Value-type variants of tgsna
2303 void LAPACK_STGSNA( const char* job, const char* howmny,
2304         const fortran_bool_t* select, const fortran_int_t* n, const float* a,
2305         const fortran_int_t* lda, const float* b, const fortran_int_t* ldb,
2306         const float* vl, const fortran_int_t* ldvl, const float* vr,
2307         const fortran_int_t* ldvr, float* s, float* dif,
2308         const fortran_int_t* mm, fortran_int_t* m, float* work,
2309         const fortran_int_t* lwork, fortran_int_t* iwork,
2310         fortran_int_t* info );
2311 void LAPACK_DTGSNA( const char* job, const char* howmny,
2312         const fortran_bool_t* select, const fortran_int_t* n, const double* a,
2313         const fortran_int_t* lda, const double* b, const fortran_int_t* ldb,
2314         const double* vl, const fortran_int_t* ldvl, const double* vr,
2315         const fortran_int_t* ldvr, double* s, double* dif,
2316         const fortran_int_t* mm, fortran_int_t* m, double* work,
2317         const fortran_int_t* lwork, fortran_int_t* iwork,
2318         fortran_int_t* info );
2319 void LAPACK_CTGSNA( const char* job, const char* howmny,
2320         const fortran_bool_t* select, const fortran_int_t* n, const void* a,
2321         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
2322         const void* vl, const fortran_int_t* ldvl, const void* vr,
2323         const fortran_int_t* ldvr, float* s, float* dif,
2324         const fortran_int_t* mm, fortran_int_t* m, void* work,
2325         const fortran_int_t* lwork, fortran_int_t* iwork,
2326         fortran_int_t* info );
2327 void LAPACK_ZTGSNA( const char* job, const char* howmny,
2328         const fortran_bool_t* select, const fortran_int_t* n, const void* a,
2329         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
2330         const void* vl, const fortran_int_t* ldvl, const void* vr,
2331         const fortran_int_t* ldvr, double* s, double* dif,
2332         const fortran_int_t* mm, fortran_int_t* m, void* work,
2333         const fortran_int_t* lwork, fortran_int_t* iwork,
2334         fortran_int_t* info );
2335 
2336 // Value-type variants of tgsyl
2337 void LAPACK_STGSYL( const char* trans, const fortran_int_t* ijob,
2338         const fortran_int_t* m, const fortran_int_t* n, const float* a,
2339         const fortran_int_t* lda, const float* b, const fortran_int_t* ldb,
2340         float* c, const fortran_int_t* ldc, const float* d,
2341         const fortran_int_t* ldd, const float* e, const fortran_int_t* lde,
2342         float* f, const fortran_int_t* ldf, float* scale, float* dif,
2343         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2344         fortran_int_t* info );
2345 void LAPACK_DTGSYL( const char* trans, const fortran_int_t* ijob,
2346         const fortran_int_t* m, const fortran_int_t* n, const double* a,
2347         const fortran_int_t* lda, const double* b, const fortran_int_t* ldb,
2348         double* c, const fortran_int_t* ldc, const double* d,
2349         const fortran_int_t* ldd, const double* e, const fortran_int_t* lde,
2350         double* f, const fortran_int_t* ldf, double* scale, double* dif,
2351         double* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2352         fortran_int_t* info );
2353 void LAPACK_CTGSYL( const char* trans, const fortran_int_t* ijob,
2354         const fortran_int_t* m, const fortran_int_t* n, const void* a,
2355         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
2356         void* c, const fortran_int_t* ldc, const void* d,
2357         const fortran_int_t* ldd, const void* e, const fortran_int_t* lde,
2358         void* f, const fortran_int_t* ldf, float* scale, float* dif,
2359         void* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2360         fortran_int_t* info );
2361 void LAPACK_ZTGSYL( const char* trans, const fortran_int_t* ijob,
2362         const fortran_int_t* m, const fortran_int_t* n, const void* a,
2363         const fortran_int_t* lda, const void* b, const fortran_int_t* ldb,
2364         void* c, const fortran_int_t* ldc, const void* d,
2365         const fortran_int_t* ldd, const void* e, const fortran_int_t* lde,
2366         void* f, const fortran_int_t* ldf, double* scale, double* dif,
2367         void* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2368         fortran_int_t* info );
2369 
2370 // Value-type variants of ggsvp
2371 void LAPACK_SGGSVP( const char* jobu, const char* jobv, const char* jobq,
2372         const fortran_int_t* m, const fortran_int_t* p,
2373         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* b,
2374         const fortran_int_t* ldb, const float* tola, const float* tolb,
2375         fortran_int_t* k, fortran_int_t* l, float* u,
2376         const fortran_int_t* ldu, float* v, const fortran_int_t* ldv,
2377         float* q, const fortran_int_t* ldq, fortran_int_t* iwork, float* tau,
2378         float* work, fortran_int_t* info );
2379 void LAPACK_DGGSVP( const char* jobu, const char* jobv, const char* jobq,
2380         const fortran_int_t* m, const fortran_int_t* p,
2381         const fortran_int_t* n, double* a, const fortran_int_t* lda,
2382         double* b, const fortran_int_t* ldb, const double* tola,
2383         const double* tolb, fortran_int_t* k, fortran_int_t* l, double* u,
2384         const fortran_int_t* ldu, double* v, const fortran_int_t* ldv,
2385         double* q, const fortran_int_t* ldq, fortran_int_t* iwork,
2386         double* tau, double* work, fortran_int_t* info );
2387 void LAPACK_CGGSVP( const char* jobu, const char* jobv, const char* jobq,
2388         const fortran_int_t* m, const fortran_int_t* p,
2389         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2390         const fortran_int_t* ldb, const float* tola, const float* tolb,
2391         fortran_int_t* k, fortran_int_t* l, void* u, const fortran_int_t* ldu,
2392         void* v, const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2393         fortran_int_t* iwork, float* rwork, void* tau, void* work,
2394         fortran_int_t* info );
2395 void LAPACK_ZGGSVP( const char* jobu, const char* jobv, const char* jobq,
2396         const fortran_int_t* m, const fortran_int_t* p,
2397         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2398         const fortran_int_t* ldb, const double* tola, const double* tolb,
2399         fortran_int_t* k, fortran_int_t* l, void* u, const fortran_int_t* ldu,
2400         void* v, const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2401         fortran_int_t* iwork, double* rwork, void* tau, void* work,
2402         fortran_int_t* info );
2403 
2404 // Value-type variants of tgsja
2405 void LAPACK_STGSJA( const char* jobu, const char* jobv, const char* jobq,
2406         const fortran_int_t* m, const fortran_int_t* p,
2407         const fortran_int_t* n, const fortran_int_t* k,
2408         const fortran_int_t* l, float* a, const fortran_int_t* lda, float* b,
2409         const fortran_int_t* ldb, const float* tola, const float* tolb,
2410         float* alpha, float* beta, float* u, const fortran_int_t* ldu,
2411         float* v, const fortran_int_t* ldv, float* q,
2412         const fortran_int_t* ldq, float* work, fortran_int_t* ncycle,
2413         fortran_int_t* info );
2414 void LAPACK_DTGSJA( const char* jobu, const char* jobv, const char* jobq,
2415         const fortran_int_t* m, const fortran_int_t* p,
2416         const fortran_int_t* n, const fortran_int_t* k,
2417         const fortran_int_t* l, double* a, const fortran_int_t* lda,
2418         double* b, const fortran_int_t* ldb, const double* tola,
2419         const double* tolb, double* alpha, double* beta, double* u,
2420         const fortran_int_t* ldu, double* v, const fortran_int_t* ldv,
2421         double* q, const fortran_int_t* ldq, double* work,
2422         fortran_int_t* ncycle, fortran_int_t* info );
2423 void LAPACK_CTGSJA( const char* jobu, const char* jobv, const char* jobq,
2424         const fortran_int_t* m, const fortran_int_t* p,
2425         const fortran_int_t* n, const fortran_int_t* k,
2426         const fortran_int_t* l, void* a, const fortran_int_t* lda, void* b,
2427         const fortran_int_t* ldb, const float* tola, const float* tolb,
2428         float* alpha, float* beta, void* u, const fortran_int_t* ldu, void* v,
2429         const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2430         void* work, fortran_int_t* ncycle, fortran_int_t* info );
2431 void LAPACK_ZTGSJA( const char* jobu, const char* jobv, const char* jobq,
2432         const fortran_int_t* m, const fortran_int_t* p,
2433         const fortran_int_t* n, const fortran_int_t* k,
2434         const fortran_int_t* l, void* a, const fortran_int_t* lda, void* b,
2435         const fortran_int_t* ldb, const double* tola, const double* tolb,
2436         double* alpha, double* beta, void* u, const fortran_int_t* ldu,
2437         void* v, const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2438         void* work, fortran_int_t* ncycle, fortran_int_t* info );
2439 
2440 //
2441 // LAPACK driver routines
2442 //
2443 
2444 // Value-type variants of gegv
2445 void LAPACK_SGEGV( const char* jobvl, const char* jobvr,
2446         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* b,
2447         const fortran_int_t* ldb, float* alphar, float* alphai, float* beta,
2448         float* vl, const fortran_int_t* ldvl, float* vr,
2449         const fortran_int_t* ldvr, float* work, const fortran_int_t* lwork,
2450         fortran_int_t* info );
2451 void LAPACK_DGEGV( const char* jobvl, const char* jobvr,
2452         const fortran_int_t* n, double* a, const fortran_int_t* lda,
2453         double* b, const fortran_int_t* ldb, double* alphar, double* alphai,
2454         double* beta, double* vl, const fortran_int_t* ldvl, double* vr,
2455         const fortran_int_t* ldvr, double* work, const fortran_int_t* lwork,
2456         fortran_int_t* info );
2457 void LAPACK_CGEGV( const char* jobvl, const char* jobvr,
2458         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2459         const fortran_int_t* ldb, void* alpha, void* beta, void* vl,
2460         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
2461         void* work, const fortran_int_t* lwork, float* rwork,
2462         fortran_int_t* info );
2463 void LAPACK_ZGEGV( const char* jobvl, const char* jobvr,
2464         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2465         const fortran_int_t* ldb, void* alpha, void* beta, void* vl,
2466         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
2467         void* work, const fortran_int_t* lwork, double* rwork,
2468         fortran_int_t* info );
2469 
2470 // Value-type variants of gges
2471 void LAPACK_SGGES( const char* jobvsl, const char* jobvsr, const char* sort,
2472         external_fp selctg, const fortran_int_t* n, float* a,
2473         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2474         fortran_int_t* sdim, float* alphar, float* alphai, float* beta,
2475         float* vsl, const fortran_int_t* ldvsl, float* vsr,
2476         const fortran_int_t* ldvsr, float* work, const fortran_int_t* lwork,
2477         fortran_bool_t* bwork, fortran_int_t* info );
2478 void LAPACK_DGGES( const char* jobvsl, const char* jobvsr, const char* sort,
2479         external_fp selctg, const fortran_int_t* n, double* a,
2480         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2481         fortran_int_t* sdim, double* alphar, double* alphai, double* beta,
2482         double* vsl, const fortran_int_t* ldvsl, double* vsr,
2483         const fortran_int_t* ldvsr, double* work, const fortran_int_t* lwork,
2484         fortran_bool_t* bwork, fortran_int_t* info );
2485 void LAPACK_CGGES( const char* jobvsl, const char* jobvsr, const char* sort,
2486         external_fp selctg, const fortran_int_t* n, void* a,
2487         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2488         fortran_int_t* sdim, void* alpha, void* beta, void* vsl,
2489         const fortran_int_t* ldvsl, void* vsr, const fortran_int_t* ldvsr,
2490         void* work, const fortran_int_t* lwork, float* rwork,
2491         fortran_bool_t* bwork, fortran_int_t* info );
2492 void LAPACK_ZGGES( const char* jobvsl, const char* jobvsr, const char* sort,
2493         external_fp selctg, const fortran_int_t* n, void* a,
2494         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2495         fortran_int_t* sdim, void* alpha, void* beta, void* vsl,
2496         const fortran_int_t* ldvsl, void* vsr, const fortran_int_t* ldvsr,
2497         void* work, const fortran_int_t* lwork, double* rwork,
2498         fortran_bool_t* bwork, fortran_int_t* info );
2499 
2500 // Value-type variants of ggesx
2501 void LAPACK_SGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
2502         external_fp selctg, const char* sense, const fortran_int_t* n,
2503         float* a, const fortran_int_t* lda, float* b,
2504         const fortran_int_t* ldb, fortran_int_t* sdim, float* alphar,
2505         float* alphai, float* beta, float* vsl, const fortran_int_t* ldvsl,
2506         float* vsr, const fortran_int_t* ldvsr, float* rconde, float* rcondv,
2507         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2508         const fortran_int_t* liwork, fortran_bool_t* bwork,
2509         fortran_int_t* info );
2510 void LAPACK_DGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
2511         external_fp selctg, const char* sense, const fortran_int_t* n,
2512         double* a, const fortran_int_t* lda, double* b,
2513         const fortran_int_t* ldb, fortran_int_t* sdim, double* alphar,
2514         double* alphai, double* beta, double* vsl, const fortran_int_t* ldvsl,
2515         double* vsr, const fortran_int_t* ldvsr, double* rconde,
2516         double* rcondv, double* work, const fortran_int_t* lwork,
2517         fortran_int_t* iwork, const fortran_int_t* liwork,
2518         fortran_bool_t* bwork, fortran_int_t* info );
2519 void LAPACK_CGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
2520         external_fp selctg, const char* sense, const fortran_int_t* n,
2521         void* a, const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2522         fortran_int_t* sdim, void* alpha, void* beta, void* vsl,
2523         const fortran_int_t* ldvsl, void* vsr, const fortran_int_t* ldvsr,
2524         float* rconde, float* rcondv, void* work, const fortran_int_t* lwork,
2525         float* rwork, fortran_int_t* iwork, const fortran_int_t* liwork,
2526         fortran_bool_t* bwork, fortran_int_t* info );
2527 void LAPACK_ZGGESX( const char* jobvsl, const char* jobvsr, const char* sort,
2528         external_fp selctg, const char* sense, const fortran_int_t* n,
2529         void* a, const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2530         fortran_int_t* sdim, void* alpha, void* beta, void* vsl,
2531         const fortran_int_t* ldvsl, void* vsr, const fortran_int_t* ldvsr,
2532         double* rconde, double* rcondv, void* work,
2533         const fortran_int_t* lwork, double* rwork, fortran_int_t* iwork,
2534         const fortran_int_t* liwork, fortran_bool_t* bwork,
2535         fortran_int_t* info );
2536 
2537 // Value-type variants of ggev
2538 void LAPACK_SGGEV( const char* jobvl, const char* jobvr,
2539         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* b,
2540         const fortran_int_t* ldb, float* alphar, float* alphai, float* beta,
2541         float* vl, const fortran_int_t* ldvl, float* vr,
2542         const fortran_int_t* ldvr, float* work, const fortran_int_t* lwork,
2543         fortran_int_t* info );
2544 void LAPACK_DGGEV( const char* jobvl, const char* jobvr,
2545         const fortran_int_t* n, double* a, const fortran_int_t* lda,
2546         double* b, const fortran_int_t* ldb, double* alphar, double* alphai,
2547         double* beta, double* vl, const fortran_int_t* ldvl, double* vr,
2548         const fortran_int_t* ldvr, double* work, const fortran_int_t* lwork,
2549         fortran_int_t* info );
2550 void LAPACK_CGGEV( const char* jobvl, const char* jobvr,
2551         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2552         const fortran_int_t* ldb, void* alpha, void* beta, void* vl,
2553         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
2554         void* work, const fortran_int_t* lwork, float* rwork,
2555         fortran_int_t* info );
2556 void LAPACK_ZGGEV( const char* jobvl, const char* jobvr,
2557         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* b,
2558         const fortran_int_t* ldb, void* alpha, void* beta, void* vl,
2559         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
2560         void* work, const fortran_int_t* lwork, double* rwork,
2561         fortran_int_t* info );
2562 
2563 // Value-type variants of ggevx
2564 void LAPACK_SGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
2565         const char* sense, const fortran_int_t* n, float* a,
2566         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2567         float* alphar, float* alphai, float* beta, float* vl,
2568         const fortran_int_t* ldvl, float* vr, const fortran_int_t* ldvr,
2569         fortran_int_t* ilo, fortran_int_t* ihi, float* lscale, float* rscale,
2570         float* abnrm, float* bbnrm, float* rconde, float* rcondv, float* work,
2571         const fortran_int_t* lwork, fortran_int_t* iwork,
2572         fortran_bool_t* bwork, fortran_int_t* info );
2573 void LAPACK_DGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
2574         const char* sense, const fortran_int_t* n, double* a,
2575         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2576         double* alphar, double* alphai, double* beta, double* vl,
2577         const fortran_int_t* ldvl, double* vr, const fortran_int_t* ldvr,
2578         fortran_int_t* ilo, fortran_int_t* ihi, double* lscale,
2579         double* rscale, double* abnrm, double* bbnrm, double* rconde,
2580         double* rcondv, double* work, const fortran_int_t* lwork,
2581         fortran_int_t* iwork, fortran_bool_t* bwork, fortran_int_t* info );
2582 void LAPACK_CGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
2583         const char* sense, const fortran_int_t* n, void* a,
2584         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2585         void* alpha, void* beta, void* vl, const fortran_int_t* ldvl,
2586         void* vr, const fortran_int_t* ldvr, fortran_int_t* ilo,
2587         fortran_int_t* ihi, float* lscale, float* rscale, float* abnrm,
2588         float* bbnrm, float* rconde, float* rcondv, void* work,
2589         const fortran_int_t* lwork, float* rwork, fortran_int_t* iwork,
2590         fortran_bool_t* bwork, fortran_int_t* info );
2591 void LAPACK_ZGGEVX( const char* balanc, const char* jobvl, const char* jobvr,
2592         const char* sense, const fortran_int_t* n, void* a,
2593         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2594         void* alpha, void* beta, void* vl, const fortran_int_t* ldvl,
2595         void* vr, const fortran_int_t* ldvr, fortran_int_t* ilo,
2596         fortran_int_t* ihi, double* lscale, double* rscale, double* abnrm,
2597         double* bbnrm, double* rconde, double* rcondv, void* work,
2598         const fortran_int_t* lwork, double* rwork, fortran_int_t* iwork,
2599         fortran_bool_t* bwork, fortran_int_t* info );
2600 
2601 // Value-type variants of ggsvd
2602 void LAPACK_SGGSVD( const char* jobu, const char* jobv, const char* jobq,
2603         const fortran_int_t* m, const fortran_int_t* n,
2604         const fortran_int_t* p, fortran_int_t* k, fortran_int_t* l, float* a,
2605         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2606         float* alpha, float* beta, float* u, const fortran_int_t* ldu,
2607         float* v, const fortran_int_t* ldv, float* q,
2608         const fortran_int_t* ldq, float* work, fortran_int_t* iwork,
2609         fortran_int_t* info );
2610 void LAPACK_DGGSVD( const char* jobu, const char* jobv, const char* jobq,
2611         const fortran_int_t* m, const fortran_int_t* n,
2612         const fortran_int_t* p, fortran_int_t* k, fortran_int_t* l, double* a,
2613         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2614         double* alpha, double* beta, double* u, const fortran_int_t* ldu,
2615         double* v, const fortran_int_t* ldv, double* q,
2616         const fortran_int_t* ldq, double* work, fortran_int_t* iwork,
2617         fortran_int_t* info );
2618 void LAPACK_CGGSVD( const char* jobu, const char* jobv, const char* jobq,
2619         const fortran_int_t* m, const fortran_int_t* n,
2620         const fortran_int_t* p, fortran_int_t* k, fortran_int_t* l, void* a,
2621         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2622         float* alpha, float* beta, void* u, const fortran_int_t* ldu, void* v,
2623         const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2624         void* work, float* rwork, fortran_int_t* iwork, fortran_int_t* info );
2625 void LAPACK_ZGGSVD( const char* jobu, const char* jobv, const char* jobq,
2626         const fortran_int_t* m, const fortran_int_t* n,
2627         const fortran_int_t* p, fortran_int_t* k, fortran_int_t* l, void* a,
2628         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2629         double* alpha, double* beta, void* u, const fortran_int_t* ldu,
2630         void* v, const fortran_int_t* ldv, void* q, const fortran_int_t* ldq,
2631         void* work, double* rwork, fortran_int_t* iwork, fortran_int_t* info );
2632 
2633 // Value-type variants of hbgv
2634 void LAPACK_CHBGV( const char* jobz, const char* uplo, const fortran_int_t* n,
2635         const fortran_int_t* ka, const fortran_int_t* kb, void* ab,
2636         const fortran_int_t* ldab, void* bb, const fortran_int_t* ldbb,
2637         float* w, void* z, const fortran_int_t* ldz, void* work, float* rwork,
2638         fortran_int_t* info );
2639 void LAPACK_ZHBGV( const char* jobz, const char* uplo, const fortran_int_t* n,
2640         const fortran_int_t* ka, const fortran_int_t* kb, void* ab,
2641         const fortran_int_t* ldab, void* bb, const fortran_int_t* ldbb,
2642         double* w, void* z, const fortran_int_t* ldz, void* work,
2643         double* rwork, fortran_int_t* info );
2644 
2645 // Value-type variants of hbgvd
2646 void LAPACK_CHBGVD( const char* jobz, const char* uplo,
2647         const fortran_int_t* n, const fortran_int_t* ka,
2648         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
2649         void* bb, const fortran_int_t* ldbb, float* w, void* z,
2650         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
2651         float* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
2652         const fortran_int_t* liwork, fortran_int_t* info );
2653 void LAPACK_ZHBGVD( const char* jobz, const char* uplo,
2654         const fortran_int_t* n, const fortran_int_t* ka,
2655         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
2656         void* bb, const fortran_int_t* ldbb, double* w, void* z,
2657         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
2658         double* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
2659         const fortran_int_t* liwork, fortran_int_t* info );
2660 
2661 // Value-type variants of hbgvx
2662 void LAPACK_CHBGVX( const char* jobz, const char* range, const char* uplo,
2663         const fortran_int_t* n, const fortran_int_t* ka,
2664         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
2665         void* bb, const fortran_int_t* ldbb, void* q,
2666         const fortran_int_t* ldq, const float* vl, const float* vu,
2667         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
2668         fortran_int_t* m, float* w, void* z, const fortran_int_t* ldz,
2669         void* work, float* rwork, fortran_int_t* iwork, fortran_int_t* ifail,
2670         fortran_int_t* info );
2671 void LAPACK_ZHBGVX( const char* jobz, const char* range, const char* uplo,
2672         const fortran_int_t* n, const fortran_int_t* ka,
2673         const fortran_int_t* kb, void* ab, const fortran_int_t* ldab,
2674         void* bb, const fortran_int_t* ldbb, void* q,
2675         const fortran_int_t* ldq, const double* vl, const double* vu,
2676         const fortran_int_t* il, const fortran_int_t* iu,
2677         const double* abstol, fortran_int_t* m, double* w, void* z,
2678         const fortran_int_t* ldz, void* work, double* rwork,
2679         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
2680 
2681 // Value-type variants of hegv
2682 void LAPACK_CHEGV( const fortran_int_t* itype, const char* jobz,
2683         const char* uplo, const fortran_int_t* n, void* a,
2684         const fortran_int_t* lda, void* b, const fortran_int_t* ldb, float* w,
2685         void* work, const fortran_int_t* lwork, float* rwork,
2686         fortran_int_t* info );
2687 void LAPACK_ZHEGV( const fortran_int_t* itype, const char* jobz,
2688         const char* uplo, const fortran_int_t* n, void* a,
2689         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2690         double* w, void* work, const fortran_int_t* lwork, double* rwork,
2691         fortran_int_t* info );
2692 
2693 // Value-type variants of hegvd
2694 void LAPACK_CHEGVD( const fortran_int_t* itype, const char* jobz,
2695         const char* uplo, const fortran_int_t* n, void* a,
2696         const fortran_int_t* lda, void* b, const fortran_int_t* ldb, float* w,
2697         void* work, const fortran_int_t* lwork, float* rwork,
2698         const fortran_int_t* lrwork, fortran_int_t* iwork,
2699         const fortran_int_t* liwork, fortran_int_t* info );
2700 void LAPACK_ZHEGVD( const fortran_int_t* itype, const char* jobz,
2701         const char* uplo, const fortran_int_t* n, void* a,
2702         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2703         double* w, void* work, const fortran_int_t* lwork, double* rwork,
2704         const fortran_int_t* lrwork, fortran_int_t* iwork,
2705         const fortran_int_t* liwork, fortran_int_t* info );
2706 
2707 // Value-type variants of hegvx
2708 void LAPACK_CHEGVX( const fortran_int_t* itype, const char* jobz,
2709         const char* range, const char* uplo, const fortran_int_t* n, void* a,
2710         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2711         const float* vl, const float* vu, const fortran_int_t* il,
2712         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
2713         float* w, void* z, const fortran_int_t* ldz, void* work,
2714         const fortran_int_t* lwork, float* rwork, fortran_int_t* iwork,
2715         fortran_int_t* ifail, fortran_int_t* info );
2716 void LAPACK_ZHEGVX( const fortran_int_t* itype, const char* jobz,
2717         const char* range, const char* uplo, const fortran_int_t* n, void* a,
2718         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
2719         const double* vl, const double* vu, const fortran_int_t* il,
2720         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
2721         double* w, void* z, const fortran_int_t* ldz, void* work,
2722         const fortran_int_t* lwork, double* rwork, fortran_int_t* iwork,
2723         fortran_int_t* ifail, fortran_int_t* info );
2724 
2725 // Value-type variants of hpgv
2726 void LAPACK_CHPGV( const fortran_int_t* itype, const char* jobz,
2727         const char* uplo, const fortran_int_t* n, void* ap, void* bp,
2728         float* w, void* z, const fortran_int_t* ldz, void* work, float* rwork,
2729         fortran_int_t* info );
2730 void LAPACK_ZHPGV( const fortran_int_t* itype, const char* jobz,
2731         const char* uplo, const fortran_int_t* n, void* ap, void* bp,
2732         double* w, void* z, const fortran_int_t* ldz, void* work,
2733         double* rwork, fortran_int_t* info );
2734 
2735 // Value-type variants of hpgvd
2736 void LAPACK_CHPGVD( const fortran_int_t* itype, const char* jobz,
2737         const char* uplo, const fortran_int_t* n, void* ap, void* bp,
2738         float* w, void* z, const fortran_int_t* ldz, void* work,
2739         const fortran_int_t* lwork, float* rwork, const fortran_int_t* lrwork,
2740         fortran_int_t* iwork, const fortran_int_t* liwork,
2741         fortran_int_t* info );
2742 void LAPACK_ZHPGVD( const fortran_int_t* itype, const char* jobz,
2743         const char* uplo, const fortran_int_t* n, void* ap, void* bp,
2744         double* w, void* z, const fortran_int_t* ldz, void* work,
2745         const fortran_int_t* lwork, double* rwork,
2746         const fortran_int_t* lrwork, fortran_int_t* iwork,
2747         const fortran_int_t* liwork, fortran_int_t* info );
2748 
2749 // Value-type variants of hpgvx
2750 void LAPACK_CHPGVX( const fortran_int_t* itype, const char* jobz,
2751         const char* range, const char* uplo, const fortran_int_t* n, void* ap,
2752         void* bp, const float* vl, const float* vu, const fortran_int_t* il,
2753         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
2754         float* w, void* z, const fortran_int_t* ldz, void* work, float* rwork,
2755         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
2756 void LAPACK_ZHPGVX( const fortran_int_t* itype, const char* jobz,
2757         const char* range, const char* uplo, const fortran_int_t* n, void* ap,
2758         void* bp, const double* vl, const double* vu, const fortran_int_t* il,
2759         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
2760         double* w, void* z, const fortran_int_t* ldz, void* work,
2761         double* rwork, fortran_int_t* iwork, fortran_int_t* ifail,
2762         fortran_int_t* info );
2763 
2764 // Value-type variants of sbgv
2765 void LAPACK_SSBGV( const char* jobz, const char* uplo, const fortran_int_t* n,
2766         const fortran_int_t* ka, const fortran_int_t* kb, float* ab,
2767         const fortran_int_t* ldab, float* bb, const fortran_int_t* ldbb,
2768         float* w, float* z, const fortran_int_t* ldz, float* work,
2769         fortran_int_t* info );
2770 void LAPACK_DSBGV( const char* jobz, const char* uplo, const fortran_int_t* n,
2771         const fortran_int_t* ka, const fortran_int_t* kb, double* ab,
2772         const fortran_int_t* ldab, double* bb, const fortran_int_t* ldbb,
2773         double* w, double* z, const fortran_int_t* ldz, double* work,
2774         fortran_int_t* info );
2775 
2776 // Value-type variants of sbgvd
2777 void LAPACK_SSBGVD( const char* jobz, const char* uplo,
2778         const fortran_int_t* n, const fortran_int_t* ka,
2779         const fortran_int_t* kb, float* ab, const fortran_int_t* ldab,
2780         float* bb, const fortran_int_t* ldbb, float* w, float* z,
2781         const fortran_int_t* ldz, float* work, const fortran_int_t* lwork,
2782         fortran_int_t* iwork, const fortran_int_t* liwork,
2783         fortran_int_t* info );
2784 void LAPACK_DSBGVD( const char* jobz, const char* uplo,
2785         const fortran_int_t* n, const fortran_int_t* ka,
2786         const fortran_int_t* kb, double* ab, const fortran_int_t* ldab,
2787         double* bb, const fortran_int_t* ldbb, double* w, double* z,
2788         const fortran_int_t* ldz, double* work, const fortran_int_t* lwork,
2789         fortran_int_t* iwork, const fortran_int_t* liwork,
2790         fortran_int_t* info );
2791 
2792 // Value-type variants of sbgvx
2793 void LAPACK_SSBGVX( const char* jobz, const char* range, const char* uplo,
2794         const fortran_int_t* n, const fortran_int_t* ka,
2795         const fortran_int_t* kb, float* ab, const fortran_int_t* ldab,
2796         float* bb, const fortran_int_t* ldbb, float* q,
2797         const fortran_int_t* ldq, const float* vl, const float* vu,
2798         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
2799         fortran_int_t* m, float* w, float* z, const fortran_int_t* ldz,
2800         float* work, fortran_int_t* iwork, fortran_int_t* ifail,
2801         fortran_int_t* info );
2802 void LAPACK_DSBGVX( const char* jobz, const char* range, const char* uplo,
2803         const fortran_int_t* n, const fortran_int_t* ka,
2804         const fortran_int_t* kb, double* ab, const fortran_int_t* ldab,
2805         double* bb, const fortran_int_t* ldbb, double* q,
2806         const fortran_int_t* ldq, const double* vl, const double* vu,
2807         const fortran_int_t* il, const fortran_int_t* iu,
2808         const double* abstol, fortran_int_t* m, double* w, double* z,
2809         const fortran_int_t* ldz, double* work, fortran_int_t* iwork,
2810         fortran_int_t* ifail, fortran_int_t* info );
2811 
2812 // Value-type variants of spgv
2813 void LAPACK_SSPGV( const fortran_int_t* itype, const char* jobz,
2814         const char* uplo, const fortran_int_t* n, float* ap, float* bp,
2815         float* w, float* z, const fortran_int_t* ldz, float* work,
2816         fortran_int_t* info );
2817 void LAPACK_DSPGV( const fortran_int_t* itype, const char* jobz,
2818         const char* uplo, const fortran_int_t* n, double* ap, double* bp,
2819         double* w, double* z, const fortran_int_t* ldz, double* work,
2820         fortran_int_t* info );
2821 
2822 // Value-type variants of spgvd
2823 void LAPACK_SSPGVD( const fortran_int_t* itype, const char* jobz,
2824         const char* uplo, const fortran_int_t* n, float* ap, float* bp,
2825         float* w, float* z, const fortran_int_t* ldz, float* work,
2826         const fortran_int_t* lwork, fortran_int_t* iwork,
2827         const fortran_int_t* liwork, fortran_int_t* info );
2828 void LAPACK_DSPGVD( const fortran_int_t* itype, const char* jobz,
2829         const char* uplo, const fortran_int_t* n, double* ap, double* bp,
2830         double* w, double* z, const fortran_int_t* ldz, double* work,
2831         const fortran_int_t* lwork, fortran_int_t* iwork,
2832         const fortran_int_t* liwork, fortran_int_t* info );
2833 
2834 // Value-type variants of spgvx
2835 void LAPACK_SSPGVX( const fortran_int_t* itype, const char* jobz,
2836         const char* range, const char* uplo, const fortran_int_t* n,
2837         float* ap, float* bp, const float* vl, const float* vu,
2838         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
2839         fortran_int_t* m, float* w, float* z, const fortran_int_t* ldz,
2840         float* work, fortran_int_t* iwork, fortran_int_t* ifail,
2841         fortran_int_t* info );
2842 void LAPACK_DSPGVX( const fortran_int_t* itype, const char* jobz,
2843         const char* range, const char* uplo, const fortran_int_t* n,
2844         double* ap, double* bp, const double* vl, const double* vu,
2845         const fortran_int_t* il, const fortran_int_t* iu,
2846         const double* abstol, fortran_int_t* m, double* w, double* z,
2847         const fortran_int_t* ldz, double* work, fortran_int_t* iwork,
2848         fortran_int_t* ifail, fortran_int_t* info );
2849 
2850 // Value-type variants of sygv
2851 void LAPACK_SSYGV( const fortran_int_t* itype, const char* jobz,
2852         const char* uplo, const fortran_int_t* n, float* a,
2853         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2854         float* w, float* work, const fortran_int_t* lwork,
2855         fortran_int_t* info );
2856 void LAPACK_DSYGV( const fortran_int_t* itype, const char* jobz,
2857         const char* uplo, const fortran_int_t* n, double* a,
2858         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2859         double* w, double* work, const fortran_int_t* lwork,
2860         fortran_int_t* info );
2861 
2862 // Value-type variants of sygvd
2863 void LAPACK_SSYGVD( const fortran_int_t* itype, const char* jobz,
2864         const char* uplo, const fortran_int_t* n, float* a,
2865         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2866         float* w, float* work, const fortran_int_t* lwork,
2867         fortran_int_t* iwork, const fortran_int_t* liwork,
2868         fortran_int_t* info );
2869 void LAPACK_DSYGVD( const fortran_int_t* itype, const char* jobz,
2870         const char* uplo, const fortran_int_t* n, double* a,
2871         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
2872         double* w, double* work, const fortran_int_t* lwork,
2873         fortran_int_t* iwork, const fortran_int_t* liwork,
2874         fortran_int_t* info );
2875 
2876 // Value-type variants of sygvx
2877 void LAPACK_SSYGVX( const fortran_int_t* itype, const char* jobz,
2878         const char* range, const char* uplo, const fortran_int_t* n, float* a,
2879         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
2880         const float* vl, const float* vu, const fortran_int_t* il,
2881         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
2882         float* w, float* z, const fortran_int_t* ldz, float* work,
2883         const fortran_int_t* lwork, fortran_int_t* iwork,
2884         fortran_int_t* ifail, fortran_int_t* info );
2885 void LAPACK_DSYGVX( const fortran_int_t* itype, const char* jobz,
2886         const char* range, const char* uplo, const fortran_int_t* n,
2887         double* a, const fortran_int_t* lda, double* b,
2888         const fortran_int_t* ldb, const double* vl, const double* vu,
2889         const fortran_int_t* il, const fortran_int_t* iu,
2890         const double* abstol, fortran_int_t* m, double* w, double* z,
2891         const fortran_int_t* ldz, double* work, const fortran_int_t* lwork,
2892         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
2893 
2894 // Value-type variants of ggglm
2895 void LAPACK_SGGGLM( const fortran_int_t* n, const fortran_int_t* m,
2896         const fortran_int_t* p, float* a, const fortran_int_t* lda, float* b,
2897         const fortran_int_t* ldb, float* d, float* x, float* y, float* work,
2898         const fortran_int_t* lwork, fortran_int_t* info );
2899 void LAPACK_DGGGLM( const fortran_int_t* n, const fortran_int_t* m,
2900         const fortran_int_t* p, double* a, const fortran_int_t* lda,
2901         double* b, const fortran_int_t* ldb, double* d, double* x, double* y,
2902         double* work, const fortran_int_t* lwork, fortran_int_t* info );
2903 void LAPACK_CGGGLM( const fortran_int_t* n, const fortran_int_t* m,
2904         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* b,
2905         const fortran_int_t* ldb, void* d, void* x, void* y, void* work,
2906         const fortran_int_t* lwork, fortran_int_t* info );
2907 void LAPACK_ZGGGLM( const fortran_int_t* n, const fortran_int_t* m,
2908         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* b,
2909         const fortran_int_t* ldb, void* d, void* x, void* y, void* work,
2910         const fortran_int_t* lwork, fortran_int_t* info );
2911 
2912 // Value-type variants of gglse
2913 void LAPACK_SGGLSE( const fortran_int_t* m, const fortran_int_t* n,
2914         const fortran_int_t* p, float* a, const fortran_int_t* lda, float* b,
2915         const fortran_int_t* ldb, float* c, float* d, float* x, float* work,
2916         const fortran_int_t* lwork, fortran_int_t* info );
2917 void LAPACK_DGGLSE( const fortran_int_t* m, const fortran_int_t* n,
2918         const fortran_int_t* p, double* a, const fortran_int_t* lda,
2919         double* b, const fortran_int_t* ldb, double* c, double* d, double* x,
2920         double* work, const fortran_int_t* lwork, fortran_int_t* info );
2921 void LAPACK_CGGLSE( const fortran_int_t* m, const fortran_int_t* n,
2922         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* b,
2923         const fortran_int_t* ldb, void* c, void* d, void* x, void* work,
2924         const fortran_int_t* lwork, fortran_int_t* info );
2925 void LAPACK_ZGGLSE( const fortran_int_t* m, const fortran_int_t* n,
2926         const fortran_int_t* p, void* a, const fortran_int_t* lda, void* b,
2927         const fortran_int_t* ldb, void* c, void* d, void* x, void* work,
2928         const fortran_int_t* lwork, fortran_int_t* info );
2929 
2930 // Value-type variants of gbsv
2931 void LAPACK_SGBSV( const fortran_int_t* n, const fortran_int_t* kl,
2932         const fortran_int_t* ku, const fortran_int_t* nrhs, float* ab,
2933         const fortran_int_t* ldab, fortran_int_t* ipiv, float* b,
2934         const fortran_int_t* ldb, fortran_int_t* info );
2935 void LAPACK_DGBSV( const fortran_int_t* n, const fortran_int_t* kl,
2936         const fortran_int_t* ku, const fortran_int_t* nrhs, double* ab,
2937         const fortran_int_t* ldab, fortran_int_t* ipiv, double* b,
2938         const fortran_int_t* ldb, fortran_int_t* info );
2939 void LAPACK_CGBSV( const fortran_int_t* n, const fortran_int_t* kl,
2940         const fortran_int_t* ku, const fortran_int_t* nrhs, void* ab,
2941         const fortran_int_t* ldab, fortran_int_t* ipiv, void* b,
2942         const fortran_int_t* ldb, fortran_int_t* info );
2943 void LAPACK_ZGBSV( const fortran_int_t* n, const fortran_int_t* kl,
2944         const fortran_int_t* ku, const fortran_int_t* nrhs, void* ab,
2945         const fortran_int_t* ldab, fortran_int_t* ipiv, void* b,
2946         const fortran_int_t* ldb, fortran_int_t* info );
2947 
2948 // Value-type variants of gbsvx
2949 void LAPACK_SGBSVX( const char* fact, const char* trans,
2950         const fortran_int_t* n, const fortran_int_t* kl,
2951         const fortran_int_t* ku, const fortran_int_t* nrhs, float* ab,
2952         const fortran_int_t* ldab, float* afb, const fortran_int_t* ldafb,
2953         fortran_int_t* ipiv, char* equed, float* r, float* c, float* b,
2954         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
2955         float* rcond, float* ferr, float* berr, float* work,
2956         fortran_int_t* iwork, fortran_int_t* info );
2957 void LAPACK_DGBSVX( const char* fact, const char* trans,
2958         const fortran_int_t* n, const fortran_int_t* kl,
2959         const fortran_int_t* ku, const fortran_int_t* nrhs, double* ab,
2960         const fortran_int_t* ldab, double* afb, const fortran_int_t* ldafb,
2961         fortran_int_t* ipiv, char* equed, double* r, double* c, double* b,
2962         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
2963         double* rcond, double* ferr, double* berr, double* work,
2964         fortran_int_t* iwork, fortran_int_t* info );
2965 void LAPACK_CGBSVX( const char* fact, const char* trans,
2966         const fortran_int_t* n, const fortran_int_t* kl,
2967         const fortran_int_t* ku, const fortran_int_t* nrhs, void* ab,
2968         const fortran_int_t* ldab, void* afb, const fortran_int_t* ldafb,
2969         fortran_int_t* ipiv, char* equed, float* r, float* c, void* b,
2970         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
2971         float* rcond, float* ferr, float* berr, void* work, float* rwork,
2972         fortran_int_t* info );
2973 void LAPACK_ZGBSVX( const char* fact, const char* trans,
2974         const fortran_int_t* n, const fortran_int_t* kl,
2975         const fortran_int_t* ku, const fortran_int_t* nrhs, void* ab,
2976         const fortran_int_t* ldab, void* afb, const fortran_int_t* ldafb,
2977         fortran_int_t* ipiv, char* equed, double* r, double* c, void* b,
2978         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
2979         double* rcond, double* ferr, double* berr, void* work, double* rwork,
2980         fortran_int_t* info );
2981 
2982 // Value-type variants of gejsv
2983 void LAPACK_SGEJSV( const char* joba, const char* jobu, const char* jobv,
2984         const char* jobr, const char* jobt, const char* jobp,
2985         const fortran_int_t* m, const fortran_int_t* n, float* a,
2986         const fortran_int_t* lda, float* sva, float* u,
2987         const fortran_int_t* ldu, float* v, const fortran_int_t* ldv,
2988         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2989         fortran_int_t* info );
2990 void LAPACK_DGEJSV( const char* joba, const char* jobu, const char* jobv,
2991         const char* jobr, const char* jobt, const char* jobp,
2992         const fortran_int_t* m, const fortran_int_t* n, double* a,
2993         const fortran_int_t* lda, double* sva, double* u,
2994         const fortran_int_t* ldu, double* v, const fortran_int_t* ldv,
2995         double* work, const fortran_int_t* lwork, fortran_int_t* iwork,
2996         fortran_int_t* info );
2997 
2998 // Value-type variants of gesv
2999 void LAPACK_SGESV( const fortran_int_t* n, const fortran_int_t* nrhs,
3000         float* a, const fortran_int_t* lda, fortran_int_t* ipiv, float* b,
3001         const fortran_int_t* ldb, fortran_int_t* info );
3002 void LAPACK_DGESV( const fortran_int_t* n, const fortran_int_t* nrhs,
3003         double* a, const fortran_int_t* lda, fortran_int_t* ipiv, double* b,
3004         const fortran_int_t* ldb, fortran_int_t* info );
3005 void LAPACK_CGESV( const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3006         const fortran_int_t* lda, fortran_int_t* ipiv, void* b,
3007         const fortran_int_t* ldb, fortran_int_t* info );
3008 void LAPACK_ZGESV( const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3009         const fortran_int_t* lda, fortran_int_t* ipiv, void* b,
3010         const fortran_int_t* ldb, fortran_int_t* info );
3011 
3012 // Value-type variants of gesvx
3013 void LAPACK_SGESVX( const char* fact, const char* trans,
3014         const fortran_int_t* n, const fortran_int_t* nrhs, float* a,
3015         const fortran_int_t* lda, float* af, const fortran_int_t* ldaf,
3016         fortran_int_t* ipiv, char* equed, float* r, float* c, float* b,
3017         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
3018         float* rcond, float* ferr, float* berr, float* work,
3019         fortran_int_t* iwork, fortran_int_t* info );
3020 void LAPACK_DGESVX( const char* fact, const char* trans,
3021         const fortran_int_t* n, const fortran_int_t* nrhs, double* a,
3022         const fortran_int_t* lda, double* af, const fortran_int_t* ldaf,
3023         fortran_int_t* ipiv, char* equed, double* r, double* c, double* b,
3024         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
3025         double* rcond, double* ferr, double* berr, double* work,
3026         fortran_int_t* iwork, fortran_int_t* info );
3027 void LAPACK_CGESVX( const char* fact, const char* trans,
3028         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3029         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3030         fortran_int_t* ipiv, char* equed, float* r, float* c, void* b,
3031         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3032         float* rcond, float* ferr, float* berr, void* work, float* rwork,
3033         fortran_int_t* info );
3034 void LAPACK_ZGESVX( const char* fact, const char* trans,
3035         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3036         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3037         fortran_int_t* ipiv, char* equed, double* r, double* c, void* b,
3038         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3039         double* rcond, double* ferr, double* berr, void* work, double* rwork,
3040         fortran_int_t* info );
3041 
3042 // Value-type variants of gtsv
3043 void LAPACK_SGTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3044         float* dl, float* d, float* du, float* b, const fortran_int_t* ldb,
3045         fortran_int_t* info );
3046 void LAPACK_DGTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3047         double* dl, double* d, double* du, double* b,
3048         const fortran_int_t* ldb, fortran_int_t* info );
3049 void LAPACK_CGTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3050         void* dl, void* d, void* du, void* b, const fortran_int_t* ldb,
3051         fortran_int_t* info );
3052 void LAPACK_ZGTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3053         void* dl, void* d, void* du, void* b, const fortran_int_t* ldb,
3054         fortran_int_t* info );
3055 
3056 // Value-type variants of gtsvx
3057 void LAPACK_SGTSVX( const char* fact, const char* trans,
3058         const fortran_int_t* n, const fortran_int_t* nrhs, const float* dl,
3059         const float* d, const float* du, float* dlf, float* df, float* duf,
3060         float* du2, fortran_int_t* ipiv, const float* b,
3061         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
3062         float* rcond, float* ferr, float* berr, float* work,
3063         fortran_int_t* iwork, fortran_int_t* info );
3064 void LAPACK_DGTSVX( const char* fact, const char* trans,
3065         const fortran_int_t* n, const fortran_int_t* nrhs, const double* dl,
3066         const double* d, const double* du, double* dlf, double* df,
3067         double* duf, double* du2, fortran_int_t* ipiv, const double* b,
3068         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
3069         double* rcond, double* ferr, double* berr, double* work,
3070         fortran_int_t* iwork, fortran_int_t* info );
3071 void LAPACK_CGTSVX( const char* fact, const char* trans,
3072         const fortran_int_t* n, const fortran_int_t* nrhs, const void* dl,
3073         const void* d, const void* du, void* dlf, void* df, void* duf,
3074         void* du2, fortran_int_t* ipiv, const void* b,
3075         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3076         float* rcond, float* ferr, float* berr, void* work, float* rwork,
3077         fortran_int_t* info );
3078 void LAPACK_ZGTSVX( const char* fact, const char* trans,
3079         const fortran_int_t* n, const fortran_int_t* nrhs, const void* dl,
3080         const void* d, const void* du, void* dlf, void* df, void* duf,
3081         void* du2, fortran_int_t* ipiv, const void* b,
3082         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3083         double* rcond, double* ferr, double* berr, void* work, double* rwork,
3084         fortran_int_t* info );
3085 
3086 // Value-type variants of hesv
3087 void LAPACK_CHESV( const char* uplo, const fortran_int_t* n,
3088         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda,
3089         fortran_int_t* ipiv, void* b, const fortran_int_t* ldb, void* work,
3090         const fortran_int_t* lwork, fortran_int_t* info );
3091 void LAPACK_ZHESV( const char* uplo, const fortran_int_t* n,
3092         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda,
3093         fortran_int_t* ipiv, void* b, const fortran_int_t* ldb, void* work,
3094         const fortran_int_t* lwork, fortran_int_t* info );
3095 
3096 // Value-type variants of hesvx
3097 void LAPACK_CHESVX( const char* fact, const char* uplo,
3098         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
3099         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3100         fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb, void* x,
3101         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3102         void* work, const fortran_int_t* lwork, float* rwork,
3103         fortran_int_t* info );
3104 void LAPACK_ZHESVX( const char* fact, const char* uplo,
3105         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
3106         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3107         fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb, void* x,
3108         const fortran_int_t* ldx, double* rcond, double* ferr, double* berr,
3109         void* work, const fortran_int_t* lwork, double* rwork,
3110         fortran_int_t* info );
3111 
3112 // Value-type variants of hpsv
3113 void LAPACK_CHPSV( const char* uplo, const fortran_int_t* n,
3114         const fortran_int_t* nrhs, void* ap, fortran_int_t* ipiv, void* b,
3115         const fortran_int_t* ldb, fortran_int_t* info );
3116 void LAPACK_ZHPSV( const char* uplo, const fortran_int_t* n,
3117         const fortran_int_t* nrhs, void* ap, fortran_int_t* ipiv, void* b,
3118         const fortran_int_t* ldb, fortran_int_t* info );
3119 
3120 // Value-type variants of hpsvx
3121 void LAPACK_CHPSVX( const char* fact, const char* uplo,
3122         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
3123         void* afp, fortran_int_t* ipiv, const void* b,
3124         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3125         float* rcond, float* ferr, float* berr, void* work, float* rwork,
3126         fortran_int_t* info );
3127 void LAPACK_ZHPSVX( const char* fact, const char* uplo,
3128         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
3129         void* afp, fortran_int_t* ipiv, const void* b,
3130         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3131         double* rcond, double* ferr, double* berr, void* work, double* rwork,
3132         fortran_int_t* info );
3133 
3134 // Value-type variants of iter_gesv
3135 void LAPACK_DSGESV( const fortran_int_t* n, const fortran_int_t* nrhs,
3136         double* a, const fortran_int_t* lda, fortran_int_t* ipiv,
3137         const double* b, const fortran_int_t* ldb, double* x,
3138         const fortran_int_t* ldx, double* work, float* swork,
3139         fortran_int_t* iter, fortran_int_t* info );
3140 void LAPACK_ZCGESV( const fortran_int_t* n, const fortran_int_t* nrhs,
3141         void* a, const fortran_int_t* lda, fortran_int_t* ipiv, const void* b,
3142         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3143         void* work, void* swork, double* rwork, fortran_int_t* iter,
3144         fortran_int_t* info );
3145 
3146 // Value-type variants of iter_posv
3147 void LAPACK_DSPOSV( const char* uplo, const fortran_int_t* n,
3148         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3149         const double* b, const fortran_int_t* ldb, double* x,
3150         const fortran_int_t* ldx, double* work, float* swork,
3151         fortran_int_t* iter, fortran_int_t* info );
3152 void LAPACK_ZCPOSV( const char* uplo, const fortran_int_t* n,
3153         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda,
3154         const void* b, const fortran_int_t* ldb, void* x,
3155         const fortran_int_t* ldx, void* work, void* swork, double* rwork,
3156         fortran_int_t* iter, fortran_int_t* info );
3157 
3158 // Value-type variants of pbsv
3159 void LAPACK_SPBSV( const char* uplo, const fortran_int_t* n,
3160         const fortran_int_t* kd, const fortran_int_t* nrhs, float* ab,
3161         const fortran_int_t* ldab, float* b, const fortran_int_t* ldb,
3162         fortran_int_t* info );
3163 void LAPACK_DPBSV( const char* uplo, const fortran_int_t* n,
3164         const fortran_int_t* kd, const fortran_int_t* nrhs, double* ab,
3165         const fortran_int_t* ldab, double* b, const fortran_int_t* ldb,
3166         fortran_int_t* info );
3167 void LAPACK_CPBSV( const char* uplo, const fortran_int_t* n,
3168         const fortran_int_t* kd, const fortran_int_t* nrhs, void* ab,
3169         const fortran_int_t* ldab, void* b, const fortran_int_t* ldb,
3170         fortran_int_t* info );
3171 void LAPACK_ZPBSV( const char* uplo, const fortran_int_t* n,
3172         const fortran_int_t* kd, const fortran_int_t* nrhs, void* ab,
3173         const fortran_int_t* ldab, void* b, const fortran_int_t* ldb,
3174         fortran_int_t* info );
3175 
3176 // Value-type variants of pbsvx
3177 void LAPACK_SPBSVX( const char* fact, const char* uplo,
3178         const fortran_int_t* n, const fortran_int_t* kd,
3179         const fortran_int_t* nrhs, float* ab, const fortran_int_t* ldab,
3180         float* afb, const fortran_int_t* ldafb, char* equed, float* s,
3181         float* b, const fortran_int_t* ldb, float* x,
3182         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3183         float* work, fortran_int_t* iwork, fortran_int_t* info );
3184 void LAPACK_DPBSVX( const char* fact, const char* uplo,
3185         const fortran_int_t* n, const fortran_int_t* kd,
3186         const fortran_int_t* nrhs, double* ab, const fortran_int_t* ldab,
3187         double* afb, const fortran_int_t* ldafb, char* equed, double* s,
3188         double* b, const fortran_int_t* ldb, double* x,
3189         const fortran_int_t* ldx, double* rcond, double* ferr, double* berr,
3190         double* work, fortran_int_t* iwork, fortran_int_t* info );
3191 void LAPACK_CPBSVX( const char* fact, const char* uplo,
3192         const fortran_int_t* n, const fortran_int_t* kd,
3193         const fortran_int_t* nrhs, void* ab, const fortran_int_t* ldab,
3194         void* afb, const fortran_int_t* ldafb, char* equed, float* s, void* b,
3195         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3196         float* rcond, float* ferr, float* berr, void* work, float* rwork,
3197         fortran_int_t* info );
3198 void LAPACK_ZPBSVX( const char* fact, const char* uplo,
3199         const fortran_int_t* n, const fortran_int_t* kd,
3200         const fortran_int_t* nrhs, void* ab, const fortran_int_t* ldab,
3201         void* afb, const fortran_int_t* ldafb, char* equed, double* s,
3202         void* b, const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3203         double* rcond, double* ferr, double* berr, void* work, double* rwork,
3204         fortran_int_t* info );
3205 
3206 // Value-type variants of posv
3207 void LAPACK_SPOSV( const char* uplo, const fortran_int_t* n,
3208         const fortran_int_t* nrhs, float* a, const fortran_int_t* lda,
3209         float* b, const fortran_int_t* ldb, fortran_int_t* info );
3210 void LAPACK_DPOSV( const char* uplo, const fortran_int_t* n,
3211         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3212         double* b, const fortran_int_t* ldb, fortran_int_t* info );
3213 void LAPACK_CPOSV( const char* uplo, const fortran_int_t* n,
3214         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3215         const fortran_int_t* ldb, fortran_int_t* info );
3216 void LAPACK_ZPOSV( const char* uplo, const fortran_int_t* n,
3217         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3218         const fortran_int_t* ldb, fortran_int_t* info );
3219 
3220 // Value-type variants of posvx
3221 void LAPACK_SPOSVX( const char* fact, const char* uplo,
3222         const fortran_int_t* n, const fortran_int_t* nrhs, float* a,
3223         const fortran_int_t* lda, float* af, const fortran_int_t* ldaf,
3224         char* equed, float* s, float* b, const fortran_int_t* ldb, float* x,
3225         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3226         float* work, fortran_int_t* iwork, fortran_int_t* info );
3227 void LAPACK_DPOSVX( const char* fact, const char* uplo,
3228         const fortran_int_t* n, const fortran_int_t* nrhs, double* a,
3229         const fortran_int_t* lda, double* af, const fortran_int_t* ldaf,
3230         char* equed, double* s, double* b, const fortran_int_t* ldb,
3231         double* x, const fortran_int_t* ldx, double* rcond, double* ferr,
3232         double* berr, double* work, fortran_int_t* iwork,
3233         fortran_int_t* info );
3234 void LAPACK_CPOSVX( const char* fact, const char* uplo,
3235         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3236         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3237         char* equed, float* s, void* b, const fortran_int_t* ldb, void* x,
3238         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3239         void* work, float* rwork, fortran_int_t* info );
3240 void LAPACK_ZPOSVX( const char* fact, const char* uplo,
3241         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3242         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3243         char* equed, double* s, void* b, const fortran_int_t* ldb, void* x,
3244         const fortran_int_t* ldx, double* rcond, double* ferr, double* berr,
3245         void* work, double* rwork, fortran_int_t* info );
3246 
3247 // Value-type variants of ppsv
3248 void LAPACK_SPPSV( const char* uplo, const fortran_int_t* n,
3249         const fortran_int_t* nrhs, float* ap, float* b,
3250         const fortran_int_t* ldb, fortran_int_t* info );
3251 void LAPACK_DPPSV( const char* uplo, const fortran_int_t* n,
3252         const fortran_int_t* nrhs, double* ap, double* b,
3253         const fortran_int_t* ldb, fortran_int_t* info );
3254 void LAPACK_CPPSV( const char* uplo, const fortran_int_t* n,
3255         const fortran_int_t* nrhs, void* ap, void* b,
3256         const fortran_int_t* ldb, fortran_int_t* info );
3257 void LAPACK_ZPPSV( const char* uplo, const fortran_int_t* n,
3258         const fortran_int_t* nrhs, void* ap, void* b,
3259         const fortran_int_t* ldb, fortran_int_t* info );
3260 
3261 // Value-type variants of ppsvx
3262 void LAPACK_SPPSVX( const char* fact, const char* uplo,
3263         const fortran_int_t* n, const fortran_int_t* nrhs, float* ap,
3264         float* afp, char* equed, float* s, float* b, const fortran_int_t* ldb,
3265         float* x, const fortran_int_t* ldx, float* rcond, float* ferr,
3266         float* berr, float* work, fortran_int_t* iwork, fortran_int_t* info );
3267 void LAPACK_DPPSVX( const char* fact, const char* uplo,
3268         const fortran_int_t* n, const fortran_int_t* nrhs, double* ap,
3269         double* afp, char* equed, double* s, double* b,
3270         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
3271         double* rcond, double* ferr, double* berr, double* work,
3272         fortran_int_t* iwork, fortran_int_t* info );
3273 void LAPACK_CPPSVX( const char* fact, const char* uplo,
3274         const fortran_int_t* n, const fortran_int_t* nrhs, void* ap,
3275         void* afp, char* equed, float* s, void* b, const fortran_int_t* ldb,
3276         void* x, const fortran_int_t* ldx, float* rcond, float* ferr,
3277         float* berr, void* work, float* rwork, fortran_int_t* info );
3278 void LAPACK_ZPPSVX( const char* fact, const char* uplo,
3279         const fortran_int_t* n, const fortran_int_t* nrhs, void* ap,
3280         void* afp, char* equed, double* s, void* b, const fortran_int_t* ldb,
3281         void* x, const fortran_int_t* ldx, double* rcond, double* ferr,
3282         double* berr, void* work, double* rwork, fortran_int_t* info );
3283 
3284 // Value-type variants of ptsv
3285 void LAPACK_SPTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3286         float* d, float* e, float* b, const fortran_int_t* ldb,
3287         fortran_int_t* info );
3288 void LAPACK_DPTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3289         double* d, double* e, double* b, const fortran_int_t* ldb,
3290         fortran_int_t* info );
3291 void LAPACK_CPTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3292         float* d, void* e, void* b, const fortran_int_t* ldb,
3293         fortran_int_t* info );
3294 void LAPACK_ZPTSV( const fortran_int_t* n, const fortran_int_t* nrhs,
3295         double* d, void* e, void* b, const fortran_int_t* ldb,
3296         fortran_int_t* info );
3297 
3298 // Value-type variants of ptsvx
3299 void LAPACK_SPTSVX( const char* fact, const fortran_int_t* n,
3300         const fortran_int_t* nrhs, const float* d, const float* e, float* df,
3301         float* ef, const float* b, const fortran_int_t* ldb, float* x,
3302         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3303         float* work, fortran_int_t* info );
3304 void LAPACK_DPTSVX( const char* fact, const fortran_int_t* n,
3305         const fortran_int_t* nrhs, const double* d, const double* e,
3306         double* df, double* ef, const double* b, const fortran_int_t* ldb,
3307         double* x, const fortran_int_t* ldx, double* rcond, double* ferr,
3308         double* berr, double* work, fortran_int_t* info );
3309 void LAPACK_CPTSVX( const char* fact, const fortran_int_t* n,
3310         const fortran_int_t* nrhs, const float* d, const void* e, float* df,
3311         void* ef, const void* b, const fortran_int_t* ldb, void* x,
3312         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3313         void* work, float* rwork, fortran_int_t* info );
3314 void LAPACK_ZPTSVX( const char* fact, const fortran_int_t* n,
3315         const fortran_int_t* nrhs, const double* d, const void* e, double* df,
3316         void* ef, const void* b, const fortran_int_t* ldb, void* x,
3317         const fortran_int_t* ldx, double* rcond, double* ferr, double* berr,
3318         void* work, double* rwork, fortran_int_t* info );
3319 
3320 // Value-type variants of spsv
3321 void LAPACK_SSPSV( const char* uplo, const fortran_int_t* n,
3322         const fortran_int_t* nrhs, float* ap, fortran_int_t* ipiv, float* b,
3323         const fortran_int_t* ldb, fortran_int_t* info );
3324 void LAPACK_DSPSV( const char* uplo, const fortran_int_t* n,
3325         const fortran_int_t* nrhs, double* ap, fortran_int_t* ipiv, double* b,
3326         const fortran_int_t* ldb, fortran_int_t* info );
3327 void LAPACK_CSPSV( const char* uplo, const fortran_int_t* n,
3328         const fortran_int_t* nrhs, void* ap, fortran_int_t* ipiv, void* b,
3329         const fortran_int_t* ldb, fortran_int_t* info );
3330 void LAPACK_ZSPSV( const char* uplo, const fortran_int_t* n,
3331         const fortran_int_t* nrhs, void* ap, fortran_int_t* ipiv, void* b,
3332         const fortran_int_t* ldb, fortran_int_t* info );
3333 
3334 // Value-type variants of spsvx
3335 void LAPACK_SSPSVX( const char* fact, const char* uplo,
3336         const fortran_int_t* n, const fortran_int_t* nrhs, const float* ap,
3337         float* afp, fortran_int_t* ipiv, const float* b,
3338         const fortran_int_t* ldb, float* x, const fortran_int_t* ldx,
3339         float* rcond, float* ferr, float* berr, float* work,
3340         fortran_int_t* iwork, fortran_int_t* info );
3341 void LAPACK_DSPSVX( const char* fact, const char* uplo,
3342         const fortran_int_t* n, const fortran_int_t* nrhs, const double* ap,
3343         double* afp, fortran_int_t* ipiv, const double* b,
3344         const fortran_int_t* ldb, double* x, const fortran_int_t* ldx,
3345         double* rcond, double* ferr, double* berr, double* work,
3346         fortran_int_t* iwork, fortran_int_t* info );
3347 void LAPACK_CSPSVX( const char* fact, const char* uplo,
3348         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
3349         void* afp, fortran_int_t* ipiv, const void* b,
3350         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3351         float* rcond, float* ferr, float* berr, void* work, float* rwork,
3352         fortran_int_t* info );
3353 void LAPACK_ZSPSVX( const char* fact, const char* uplo,
3354         const fortran_int_t* n, const fortran_int_t* nrhs, const void* ap,
3355         void* afp, fortran_int_t* ipiv, const void* b,
3356         const fortran_int_t* ldb, void* x, const fortran_int_t* ldx,
3357         double* rcond, double* ferr, double* berr, void* work, double* rwork,
3358         fortran_int_t* info );
3359 
3360 // Value-type variants of sysv
3361 void LAPACK_SSYSV( const char* uplo, const fortran_int_t* n,
3362         const fortran_int_t* nrhs, float* a, const fortran_int_t* lda,
3363         fortran_int_t* ipiv, float* b, const fortran_int_t* ldb, float* work,
3364         const fortran_int_t* lwork, fortran_int_t* info );
3365 void LAPACK_DSYSV( const char* uplo, const fortran_int_t* n,
3366         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3367         fortran_int_t* ipiv, double* b, const fortran_int_t* ldb,
3368         double* work, const fortran_int_t* lwork, fortran_int_t* info );
3369 void LAPACK_CSYSV( const char* uplo, const fortran_int_t* n,
3370         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda,
3371         fortran_int_t* ipiv, void* b, const fortran_int_t* ldb, void* work,
3372         const fortran_int_t* lwork, fortran_int_t* info );
3373 void LAPACK_ZSYSV( const char* uplo, const fortran_int_t* n,
3374         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda,
3375         fortran_int_t* ipiv, void* b, const fortran_int_t* ldb, void* work,
3376         const fortran_int_t* lwork, fortran_int_t* info );
3377 
3378 // Value-type variants of sysvx
3379 void LAPACK_SSYSVX( const char* fact, const char* uplo,
3380         const fortran_int_t* n, const fortran_int_t* nrhs, const float* a,
3381         const fortran_int_t* lda, float* af, const fortran_int_t* ldaf,
3382         fortran_int_t* ipiv, const float* b, const fortran_int_t* ldb,
3383         float* x, const fortran_int_t* ldx, float* rcond, float* ferr,
3384         float* berr, float* work, const fortran_int_t* lwork,
3385         fortran_int_t* iwork, fortran_int_t* info );
3386 void LAPACK_DSYSVX( const char* fact, const char* uplo,
3387         const fortran_int_t* n, const fortran_int_t* nrhs, const double* a,
3388         const fortran_int_t* lda, double* af, const fortran_int_t* ldaf,
3389         fortran_int_t* ipiv, const double* b, const fortran_int_t* ldb,
3390         double* x, const fortran_int_t* ldx, double* rcond, double* ferr,
3391         double* berr, double* work, const fortran_int_t* lwork,
3392         fortran_int_t* iwork, fortran_int_t* info );
3393 void LAPACK_CSYSVX( const char* fact, const char* uplo,
3394         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
3395         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3396         fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb, void* x,
3397         const fortran_int_t* ldx, float* rcond, float* ferr, float* berr,
3398         void* work, const fortran_int_t* lwork, float* rwork,
3399         fortran_int_t* info );
3400 void LAPACK_ZSYSVX( const char* fact, const char* uplo,
3401         const fortran_int_t* n, const fortran_int_t* nrhs, const void* a,
3402         const fortran_int_t* lda, void* af, const fortran_int_t* ldaf,
3403         fortran_int_t* ipiv, const void* b, const fortran_int_t* ldb, void* x,
3404         const fortran_int_t* ldx, double* rcond, double* ferr, double* berr,
3405         void* work, const fortran_int_t* lwork, double* rwork,
3406         fortran_int_t* info );
3407 
3408 // Value-type variants of gees
3409 void LAPACK_SGEES( const char* jobvs, const char* sort, external_fp select,
3410         const fortran_int_t* n, float* a, const fortran_int_t* lda,
3411         fortran_int_t* sdim, float* wr, float* wi, float* vs,
3412         const fortran_int_t* ldvs, float* work, const fortran_int_t* lwork,
3413         fortran_bool_t* bwork, fortran_int_t* info );
3414 void LAPACK_DGEES( const char* jobvs, const char* sort, external_fp select,
3415         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3416         fortran_int_t* sdim, double* wr, double* wi, double* vs,
3417         const fortran_int_t* ldvs, double* work, const fortran_int_t* lwork,
3418         fortran_bool_t* bwork, fortran_int_t* info );
3419 void LAPACK_CGEES( const char* jobvs, const char* sort, external_fp select,
3420         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3421         fortran_int_t* sdim, void* w, void* vs, const fortran_int_t* ldvs,
3422         void* work, const fortran_int_t* lwork, float* rwork,
3423         fortran_bool_t* bwork, fortran_int_t* info );
3424 void LAPACK_ZGEES( const char* jobvs, const char* sort, external_fp select,
3425         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3426         fortran_int_t* sdim, void* w, void* vs, const fortran_int_t* ldvs,
3427         void* work, const fortran_int_t* lwork, double* rwork,
3428         fortran_bool_t* bwork, fortran_int_t* info );
3429 
3430 // Value-type variants of geesx
3431 void LAPACK_SGEESX( const char* jobvs, const char* sort, external_fp select,
3432         const char* sense, const fortran_int_t* n, float* a,
3433         const fortran_int_t* lda, fortran_int_t* sdim, float* wr, float* wi,
3434         float* vs, const fortran_int_t* ldvs, float* rconde, float* rcondv,
3435         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
3436         const fortran_int_t* liwork, fortran_bool_t* bwork,
3437         fortran_int_t* info );
3438 void LAPACK_DGEESX( const char* jobvs, const char* sort, external_fp select,
3439         const char* sense, const fortran_int_t* n, double* a,
3440         const fortran_int_t* lda, fortran_int_t* sdim, double* wr, double* wi,
3441         double* vs, const fortran_int_t* ldvs, double* rconde, double* rcondv,
3442         double* work, const fortran_int_t* lwork, fortran_int_t* iwork,
3443         const fortran_int_t* liwork, fortran_bool_t* bwork,
3444         fortran_int_t* info );
3445 void LAPACK_CGEESX( const char* jobvs, const char* sort, external_fp select,
3446         const char* sense, const fortran_int_t* n, void* a,
3447         const fortran_int_t* lda, fortran_int_t* sdim, void* w, void* vs,
3448         const fortran_int_t* ldvs, float* rconde, float* rcondv, void* work,
3449         const fortran_int_t* lwork, float* rwork, fortran_bool_t* bwork,
3450         fortran_int_t* info );
3451 void LAPACK_ZGEESX( const char* jobvs, const char* sort, external_fp select,
3452         const char* sense, const fortran_int_t* n, void* a,
3453         const fortran_int_t* lda, fortran_int_t* sdim, void* w, void* vs,
3454         const fortran_int_t* ldvs, double* rconde, double* rcondv, void* work,
3455         const fortran_int_t* lwork, double* rwork, fortran_bool_t* bwork,
3456         fortran_int_t* info );
3457 
3458 // Value-type variants of geev
3459 void LAPACK_SGEEV( const char* jobvl, const char* jobvr,
3460         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* wr,
3461         float* wi, float* vl, const fortran_int_t* ldvl, float* vr,
3462         const fortran_int_t* ldvr, float* work, const fortran_int_t* lwork,
3463         fortran_int_t* info );
3464 void LAPACK_DGEEV( const char* jobvl, const char* jobvr,
3465         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3466         double* wr, double* wi, double* vl, const fortran_int_t* ldvl,
3467         double* vr, const fortran_int_t* ldvr, double* work,
3468         const fortran_int_t* lwork, fortran_int_t* info );
3469 void LAPACK_CGEEV( const char* jobvl, const char* jobvr,
3470         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* w,
3471         void* vl, const fortran_int_t* ldvl, void* vr,
3472         const fortran_int_t* ldvr, void* work, const fortran_int_t* lwork,
3473         float* rwork, fortran_int_t* info );
3474 void LAPACK_ZGEEV( const char* jobvl, const char* jobvr,
3475         const fortran_int_t* n, void* a, const fortran_int_t* lda, void* w,
3476         void* vl, const fortran_int_t* ldvl, void* vr,
3477         const fortran_int_t* ldvr, void* work, const fortran_int_t* lwork,
3478         double* rwork, fortran_int_t* info );
3479 
3480 // Value-type variants of geevx
3481 void LAPACK_SGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
3482         const char* sense, const fortran_int_t* n, float* a,
3483         const fortran_int_t* lda, float* wr, float* wi, float* vl,
3484         const fortran_int_t* ldvl, float* vr, const fortran_int_t* ldvr,
3485         fortran_int_t* ilo, fortran_int_t* ihi, float* scale, float* abnrm,
3486         float* rconde, float* rcondv, float* work, const fortran_int_t* lwork,
3487         fortran_int_t* iwork, fortran_int_t* info );
3488 void LAPACK_DGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
3489         const char* sense, const fortran_int_t* n, double* a,
3490         const fortran_int_t* lda, double* wr, double* wi, double* vl,
3491         const fortran_int_t* ldvl, double* vr, const fortran_int_t* ldvr,
3492         fortran_int_t* ilo, fortran_int_t* ihi, double* scale, double* abnrm,
3493         double* rconde, double* rcondv, double* work,
3494         const fortran_int_t* lwork, fortran_int_t* iwork,
3495         fortran_int_t* info );
3496 void LAPACK_CGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
3497         const char* sense, const fortran_int_t* n, void* a,
3498         const fortran_int_t* lda, void* w, void* vl,
3499         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
3500         fortran_int_t* ilo, fortran_int_t* ihi, float* scale, float* abnrm,
3501         float* rconde, float* rcondv, void* work, const fortran_int_t* lwork,
3502         float* rwork, fortran_int_t* info );
3503 void LAPACK_ZGEEVX( const char* balanc, const char* jobvl, const char* jobvr,
3504         const char* sense, const fortran_int_t* n, void* a,
3505         const fortran_int_t* lda, void* w, void* vl,
3506         const fortran_int_t* ldvl, void* vr, const fortran_int_t* ldvr,
3507         fortran_int_t* ilo, fortran_int_t* ihi, double* scale, double* abnrm,
3508         double* rconde, double* rcondv, void* work,
3509         const fortran_int_t* lwork, double* rwork, fortran_int_t* info );
3510 
3511 // Value-type variants of gesdd
3512 void LAPACK_SGESDD( const char* jobz, const fortran_int_t* m,
3513         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* s,
3514         float* u, const fortran_int_t* ldu, float* vt,
3515         const fortran_int_t* ldvt, float* work, const fortran_int_t* lwork,
3516         fortran_int_t* iwork, fortran_int_t* info );
3517 void LAPACK_DGESDD( const char* jobz, const fortran_int_t* m,
3518         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3519         double* s, double* u, const fortran_int_t* ldu, double* vt,
3520         const fortran_int_t* ldvt, double* work, const fortran_int_t* lwork,
3521         fortran_int_t* iwork, fortran_int_t* info );
3522 void LAPACK_CGESDD( const char* jobz, const fortran_int_t* m,
3523         const fortran_int_t* n, void* a, const fortran_int_t* lda, float* s,
3524         void* u, const fortran_int_t* ldu, void* vt,
3525         const fortran_int_t* ldvt, void* work, const fortran_int_t* lwork,
3526         float* rwork, fortran_int_t* iwork, fortran_int_t* info );
3527 void LAPACK_ZGESDD( const char* jobz, const fortran_int_t* m,
3528         const fortran_int_t* n, void* a, const fortran_int_t* lda, double* s,
3529         void* u, const fortran_int_t* ldu, void* vt,
3530         const fortran_int_t* ldvt, void* work, const fortran_int_t* lwork,
3531         double* rwork, fortran_int_t* iwork, fortran_int_t* info );
3532 
3533 // Value-type variants of gesvd
3534 void LAPACK_SGESVD( const char* jobu, const char* jobvt,
3535         const fortran_int_t* m, const fortran_int_t* n, float* a,
3536         const fortran_int_t* lda, float* s, float* u,
3537         const fortran_int_t* ldu, float* vt, const fortran_int_t* ldvt,
3538         float* work, const fortran_int_t* lwork, fortran_int_t* info );
3539 void LAPACK_DGESVD( const char* jobu, const char* jobvt,
3540         const fortran_int_t* m, const fortran_int_t* n, double* a,
3541         const fortran_int_t* lda, double* s, double* u,
3542         const fortran_int_t* ldu, double* vt, const fortran_int_t* ldvt,
3543         double* work, const fortran_int_t* lwork, fortran_int_t* info );
3544 void LAPACK_CGESVD( const char* jobu, const char* jobvt,
3545         const fortran_int_t* m, const fortran_int_t* n, void* a,
3546         const fortran_int_t* lda, float* s, void* u, const fortran_int_t* ldu,
3547         void* vt, const fortran_int_t* ldvt, void* work,
3548         const fortran_int_t* lwork, float* rwork, fortran_int_t* info );
3549 void LAPACK_ZGESVD( const char* jobu, const char* jobvt,
3550         const fortran_int_t* m, const fortran_int_t* n, void* a,
3551         const fortran_int_t* lda, double* s, void* u,
3552         const fortran_int_t* ldu, void* vt, const fortran_int_t* ldvt,
3553         void* work, const fortran_int_t* lwork, double* rwork,
3554         fortran_int_t* info );
3555 
3556 // Value-type variants of hbev
3557 void LAPACK_CHBEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3558         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
3559         float* w, void* z, const fortran_int_t* ldz, void* work, float* rwork,
3560         fortran_int_t* info );
3561 void LAPACK_ZHBEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3562         const fortran_int_t* kd, void* ab, const fortran_int_t* ldab,
3563         double* w, void* z, const fortran_int_t* ldz, void* work,
3564         double* rwork, fortran_int_t* info );
3565 
3566 // Value-type variants of hbevd
3567 void LAPACK_CHBEVD( const char* jobz, const char* uplo,
3568         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
3569         const fortran_int_t* ldab, float* w, void* z,
3570         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
3571         float* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
3572         const fortran_int_t* liwork, fortran_int_t* info );
3573 void LAPACK_ZHBEVD( const char* jobz, const char* uplo,
3574         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
3575         const fortran_int_t* ldab, double* w, void* z,
3576         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
3577         double* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
3578         const fortran_int_t* liwork, fortran_int_t* info );
3579 
3580 // Value-type variants of hbevx
3581 void LAPACK_CHBEVX( const char* jobz, const char* range, const char* uplo,
3582         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
3583         const fortran_int_t* ldab, void* q, const fortran_int_t* ldq,
3584         const float* vl, const float* vu, const fortran_int_t* il,
3585         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3586         float* w, void* z, const fortran_int_t* ldz, void* work, float* rwork,
3587         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
3588 void LAPACK_ZHBEVX( const char* jobz, const char* range, const char* uplo,
3589         const fortran_int_t* n, const fortran_int_t* kd, void* ab,
3590         const fortran_int_t* ldab, void* q, const fortran_int_t* ldq,
3591         const double* vl, const double* vu, const fortran_int_t* il,
3592         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3593         double* w, void* z, const fortran_int_t* ldz, void* work,
3594         double* rwork, fortran_int_t* iwork, fortran_int_t* ifail,
3595         fortran_int_t* info );
3596 
3597 // Value-type variants of heev
3598 void LAPACK_CHEEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3599         void* a, const fortran_int_t* lda, float* w, void* work,
3600         const fortran_int_t* lwork, float* rwork, fortran_int_t* info );
3601 void LAPACK_ZHEEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3602         void* a, const fortran_int_t* lda, double* w, void* work,
3603         const fortran_int_t* lwork, double* rwork, fortran_int_t* info );
3604 
3605 // Value-type variants of heevd
3606 void LAPACK_CHEEVD( const char* jobz, const char* uplo,
3607         const fortran_int_t* n, void* a, const fortran_int_t* lda, float* w,
3608         void* work, const fortran_int_t* lwork, float* rwork,
3609         const fortran_int_t* lrwork, fortran_int_t* iwork,
3610         const fortran_int_t* liwork, fortran_int_t* info );
3611 void LAPACK_ZHEEVD( const char* jobz, const char* uplo,
3612         const fortran_int_t* n, void* a, const fortran_int_t* lda, double* w,
3613         void* work, const fortran_int_t* lwork, double* rwork,
3614         const fortran_int_t* lrwork, fortran_int_t* iwork,
3615         const fortran_int_t* liwork, fortran_int_t* info );
3616 
3617 // Value-type variants of heevr
3618 void LAPACK_CHEEVR( const char* jobz, const char* range, const char* uplo,
3619         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3620         const float* vl, const float* vu, const fortran_int_t* il,
3621         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3622         float* w, void* z, const fortran_int_t* ldz, fortran_int_t* isuppz,
3623         void* work, const fortran_int_t* lwork, float* rwork,
3624         const fortran_int_t* lrwork, fortran_int_t* iwork,
3625         const fortran_int_t* liwork, fortran_int_t* info );
3626 void LAPACK_ZHEEVR( const char* jobz, const char* range, const char* uplo,
3627         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3628         const double* vl, const double* vu, const fortran_int_t* il,
3629         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3630         double* w, void* z, const fortran_int_t* ldz, fortran_int_t* isuppz,
3631         void* work, const fortran_int_t* lwork, double* rwork,
3632         const fortran_int_t* lrwork, fortran_int_t* iwork,
3633         const fortran_int_t* liwork, fortran_int_t* info );
3634 
3635 // Value-type variants of heevx
3636 void LAPACK_CHEEVX( const char* jobz, const char* range, const char* uplo,
3637         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3638         const float* vl, const float* vu, const fortran_int_t* il,
3639         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3640         float* w, void* z, const fortran_int_t* ldz, void* work,
3641         const fortran_int_t* lwork, float* rwork, fortran_int_t* iwork,
3642         fortran_int_t* ifail, fortran_int_t* info );
3643 void LAPACK_ZHEEVX( const char* jobz, const char* range, const char* uplo,
3644         const fortran_int_t* n, void* a, const fortran_int_t* lda,
3645         const double* vl, const double* vu, const fortran_int_t* il,
3646         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3647         double* w, void* z, const fortran_int_t* ldz, void* work,
3648         const fortran_int_t* lwork, double* rwork, fortran_int_t* iwork,
3649         fortran_int_t* ifail, fortran_int_t* info );
3650 
3651 // Value-type variants of hpev
3652 void LAPACK_CHPEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3653         void* ap, float* w, void* z, const fortran_int_t* ldz, void* work,
3654         float* rwork, fortran_int_t* info );
3655 void LAPACK_ZHPEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3656         void* ap, double* w, void* z, const fortran_int_t* ldz, void* work,
3657         double* rwork, fortran_int_t* info );
3658 
3659 // Value-type variants of hpevd
3660 void LAPACK_CHPEVD( const char* jobz, const char* uplo,
3661         const fortran_int_t* n, void* ap, float* w, void* z,
3662         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
3663         float* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
3664         const fortran_int_t* liwork, fortran_int_t* info );
3665 void LAPACK_ZHPEVD( const char* jobz, const char* uplo,
3666         const fortran_int_t* n, void* ap, double* w, void* z,
3667         const fortran_int_t* ldz, void* work, const fortran_int_t* lwork,
3668         double* rwork, const fortran_int_t* lrwork, fortran_int_t* iwork,
3669         const fortran_int_t* liwork, fortran_int_t* info );
3670 
3671 // Value-type variants of hpevx
3672 void LAPACK_CHPEVX( const char* jobz, const char* range, const char* uplo,
3673         const fortran_int_t* n, void* ap, const float* vl, const float* vu,
3674         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
3675         fortran_int_t* m, float* w, void* z, const fortran_int_t* ldz,
3676         void* work, float* rwork, fortran_int_t* iwork, fortran_int_t* ifail,
3677         fortran_int_t* info );
3678 void LAPACK_ZHPEVX( const char* jobz, const char* range, const char* uplo,
3679         const fortran_int_t* n, void* ap, const double* vl, const double* vu,
3680         const fortran_int_t* il, const fortran_int_t* iu,
3681         const double* abstol, fortran_int_t* m, double* w, void* z,
3682         const fortran_int_t* ldz, void* work, double* rwork,
3683         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
3684 
3685 // Value-type variants of sbev
3686 void LAPACK_SSBEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3687         const fortran_int_t* kd, float* ab, const fortran_int_t* ldab,
3688         float* w, float* z, const fortran_int_t* ldz, float* work,
3689         fortran_int_t* info );
3690 void LAPACK_DSBEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3691         const fortran_int_t* kd, double* ab, const fortran_int_t* ldab,
3692         double* w, double* z, const fortran_int_t* ldz, double* work,
3693         fortran_int_t* info );
3694 
3695 // Value-type variants of sbevd
3696 void LAPACK_SSBEVD( const char* jobz, const char* uplo,
3697         const fortran_int_t* n, const fortran_int_t* kd, float* ab,
3698         const fortran_int_t* ldab, float* w, float* z,
3699         const fortran_int_t* ldz, float* work, const fortran_int_t* lwork,
3700         fortran_int_t* iwork, const fortran_int_t* liwork,
3701         fortran_int_t* info );
3702 void LAPACK_DSBEVD( const char* jobz, const char* uplo,
3703         const fortran_int_t* n, const fortran_int_t* kd, double* ab,
3704         const fortran_int_t* ldab, double* w, double* z,
3705         const fortran_int_t* ldz, double* work, const fortran_int_t* lwork,
3706         fortran_int_t* iwork, const fortran_int_t* liwork,
3707         fortran_int_t* info );
3708 
3709 // Value-type variants of sbevx
3710 void LAPACK_SSBEVX( const char* jobz, const char* range, const char* uplo,
3711         const fortran_int_t* n, const fortran_int_t* kd, float* ab,
3712         const fortran_int_t* ldab, float* q, const fortran_int_t* ldq,
3713         const float* vl, const float* vu, const fortran_int_t* il,
3714         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3715         float* w, float* z, const fortran_int_t* ldz, float* work,
3716         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
3717 void LAPACK_DSBEVX( const char* jobz, const char* range, const char* uplo,
3718         const fortran_int_t* n, const fortran_int_t* kd, double* ab,
3719         const fortran_int_t* ldab, double* q, const fortran_int_t* ldq,
3720         const double* vl, const double* vu, const fortran_int_t* il,
3721         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3722         double* w, double* z, const fortran_int_t* ldz, double* work,
3723         fortran_int_t* iwork, fortran_int_t* ifail, fortran_int_t* info );
3724 
3725 // Value-type variants of spev
3726 void LAPACK_SSPEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3727         float* ap, float* w, float* z, const fortran_int_t* ldz, float* work,
3728         fortran_int_t* info );
3729 void LAPACK_DSPEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3730         double* ap, double* w, double* z, const fortran_int_t* ldz,
3731         double* work, fortran_int_t* info );
3732 
3733 // Value-type variants of spevd
3734 void LAPACK_SSPEVD( const char* jobz, const char* uplo,
3735         const fortran_int_t* n, float* ap, float* w, float* z,
3736         const fortran_int_t* ldz, float* work, const fortran_int_t* lwork,
3737         fortran_int_t* iwork, const fortran_int_t* liwork,
3738         fortran_int_t* info );
3739 void LAPACK_DSPEVD( const char* jobz, const char* uplo,
3740         const fortran_int_t* n, double* ap, double* w, double* z,
3741         const fortran_int_t* ldz, double* work, const fortran_int_t* lwork,
3742         fortran_int_t* iwork, const fortran_int_t* liwork,
3743         fortran_int_t* info );
3744 
3745 // Value-type variants of spevx
3746 void LAPACK_SSPEVX( const char* jobz, const char* range, const char* uplo,
3747         const fortran_int_t* n, float* ap, const float* vl, const float* vu,
3748         const fortran_int_t* il, const fortran_int_t* iu, const float* abstol,
3749         fortran_int_t* m, float* w, float* z, const fortran_int_t* ldz,
3750         float* work, fortran_int_t* iwork, fortran_int_t* ifail,
3751         fortran_int_t* info );
3752 void LAPACK_DSPEVX( const char* jobz, const char* range, const char* uplo,
3753         const fortran_int_t* n, double* ap, const double* vl,
3754         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
3755         const double* abstol, fortran_int_t* m, double* w, double* z,
3756         const fortran_int_t* ldz, double* work, fortran_int_t* iwork,
3757         fortran_int_t* ifail, fortran_int_t* info );
3758 
3759 // Value-type variants of stev
3760 void LAPACK_SSTEV( const char* jobz, const fortran_int_t* n, float* d,
3761         float* e, float* z, const fortran_int_t* ldz, float* work,
3762         fortran_int_t* info );
3763 void LAPACK_DSTEV( const char* jobz, const fortran_int_t* n, double* d,
3764         double* e, double* z, const fortran_int_t* ldz, double* work,
3765         fortran_int_t* info );
3766 
3767 // Value-type variants of stevd
3768 void LAPACK_SSTEVD( const char* jobz, const fortran_int_t* n, float* d,
3769         float* e, float* z, const fortran_int_t* ldz, float* work,
3770         const fortran_int_t* lwork, fortran_int_t* iwork,
3771         const fortran_int_t* liwork, fortran_int_t* info );
3772 void LAPACK_DSTEVD( const char* jobz, const fortran_int_t* n, double* d,
3773         double* e, double* z, const fortran_int_t* ldz, double* work,
3774         const fortran_int_t* lwork, fortran_int_t* iwork,
3775         const fortran_int_t* liwork, fortran_int_t* info );
3776 
3777 // Value-type variants of stevr
3778 void LAPACK_SSTEVR( const char* jobz, const char* range,
3779         const fortran_int_t* n, float* d, float* e, const float* vl,
3780         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
3781         const float* abstol, fortran_int_t* m, float* w, float* z,
3782         const fortran_int_t* ldz, fortran_int_t* isuppz, float* work,
3783         const fortran_int_t* lwork, fortran_int_t* iwork,
3784         const fortran_int_t* liwork, fortran_int_t* info );
3785 void LAPACK_DSTEVR( const char* jobz, const char* range,
3786         const fortran_int_t* n, double* d, double* e, const double* vl,
3787         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
3788         const double* abstol, fortran_int_t* m, double* w, double* z,
3789         const fortran_int_t* ldz, fortran_int_t* isuppz, double* work,
3790         const fortran_int_t* lwork, fortran_int_t* iwork,
3791         const fortran_int_t* liwork, fortran_int_t* info );
3792 
3793 // Value-type variants of stevx
3794 void LAPACK_SSTEVX( const char* jobz, const char* range,
3795         const fortran_int_t* n, float* d, float* e, const float* vl,
3796         const float* vu, const fortran_int_t* il, const fortran_int_t* iu,
3797         const float* abstol, fortran_int_t* m, float* w, float* z,
3798         const fortran_int_t* ldz, float* work, fortran_int_t* iwork,
3799         fortran_int_t* ifail, fortran_int_t* info );
3800 void LAPACK_DSTEVX( const char* jobz, const char* range,
3801         const fortran_int_t* n, double* d, double* e, const double* vl,
3802         const double* vu, const fortran_int_t* il, const fortran_int_t* iu,
3803         const double* abstol, fortran_int_t* m, double* w, double* z,
3804         const fortran_int_t* ldz, double* work, fortran_int_t* iwork,
3805         fortran_int_t* ifail, fortran_int_t* info );
3806 
3807 // Value-type variants of syev
3808 void LAPACK_SSYEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3809         float* a, const fortran_int_t* lda, float* w, float* work,
3810         const fortran_int_t* lwork, fortran_int_t* info );
3811 void LAPACK_DSYEV( const char* jobz, const char* uplo, const fortran_int_t* n,
3812         double* a, const fortran_int_t* lda, double* w, double* work,
3813         const fortran_int_t* lwork, fortran_int_t* info );
3814 
3815 // Value-type variants of syevd
3816 void LAPACK_SSYEVD( const char* jobz, const char* uplo,
3817         const fortran_int_t* n, float* a, const fortran_int_t* lda, float* w,
3818         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
3819         const fortran_int_t* liwork, fortran_int_t* info );
3820 void LAPACK_DSYEVD( const char* jobz, const char* uplo,
3821         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3822         double* w, double* work, const fortran_int_t* lwork,
3823         fortran_int_t* iwork, const fortran_int_t* liwork,
3824         fortran_int_t* info );
3825 
3826 // Value-type variants of syevr
3827 void LAPACK_SSYEVR( const char* jobz, const char* range, const char* uplo,
3828         const fortran_int_t* n, float* a, const fortran_int_t* lda,
3829         const float* vl, const float* vu, const fortran_int_t* il,
3830         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3831         float* w, float* z, const fortran_int_t* ldz, fortran_int_t* isuppz,
3832         float* work, const fortran_int_t* lwork, fortran_int_t* iwork,
3833         const fortran_int_t* liwork, fortran_int_t* info );
3834 void LAPACK_DSYEVR( const char* jobz, const char* range, const char* uplo,
3835         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3836         const double* vl, const double* vu, const fortran_int_t* il,
3837         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3838         double* w, double* z, const fortran_int_t* ldz, fortran_int_t* isuppz,
3839         double* work, const fortran_int_t* lwork, fortran_int_t* iwork,
3840         const fortran_int_t* liwork, fortran_int_t* info );
3841 
3842 // Value-type variants of syevx
3843 void LAPACK_SSYEVX( const char* jobz, const char* range, const char* uplo,
3844         const fortran_int_t* n, float* a, const fortran_int_t* lda,
3845         const float* vl, const float* vu, const fortran_int_t* il,
3846         const fortran_int_t* iu, const float* abstol, fortran_int_t* m,
3847         float* w, float* z, const fortran_int_t* ldz, float* work,
3848         const fortran_int_t* lwork, fortran_int_t* iwork,
3849         fortran_int_t* ifail, fortran_int_t* info );
3850 void LAPACK_DSYEVX( const char* jobz, const char* range, const char* uplo,
3851         const fortran_int_t* n, double* a, const fortran_int_t* lda,
3852         const double* vl, const double* vu, const fortran_int_t* il,
3853         const fortran_int_t* iu, const double* abstol, fortran_int_t* m,
3854         double* w, double* z, const fortran_int_t* ldz, double* work,
3855         const fortran_int_t* lwork, fortran_int_t* iwork,
3856         fortran_int_t* ifail, fortran_int_t* info );
3857 
3858 // Value-type variants of gels
3859 void LAPACK_SGELS( const char* trans, const fortran_int_t* m,
3860         const fortran_int_t* n, const fortran_int_t* nrhs, float* a,
3861         const fortran_int_t* lda, float* b, const fortran_int_t* ldb,
3862         float* work, const fortran_int_t* lwork, fortran_int_t* info );
3863 void LAPACK_DGELS( const char* trans, const fortran_int_t* m,
3864         const fortran_int_t* n, const fortran_int_t* nrhs, double* a,
3865         const fortran_int_t* lda, double* b, const fortran_int_t* ldb,
3866         double* work, const fortran_int_t* lwork, fortran_int_t* info );
3867 void LAPACK_CGELS( const char* trans, const fortran_int_t* m,
3868         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3869         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
3870         void* work, const fortran_int_t* lwork, fortran_int_t* info );
3871 void LAPACK_ZGELS( const char* trans, const fortran_int_t* m,
3872         const fortran_int_t* n, const fortran_int_t* nrhs, void* a,
3873         const fortran_int_t* lda, void* b, const fortran_int_t* ldb,
3874         void* work, const fortran_int_t* lwork, fortran_int_t* info );
3875 
3876 // Value-type variants of gelsd
3877 void LAPACK_SGELSD( const fortran_int_t* m, const fortran_int_t* n,
3878         const fortran_int_t* nrhs, float* a, const fortran_int_t* lda,
3879         float* b, const fortran_int_t* ldb, float* s, const float* rcond,
3880         fortran_int_t* rank, float* work, const fortran_int_t* lwork,
3881         fortran_int_t* iwork, fortran_int_t* info );
3882 void LAPACK_DGELSD( const fortran_int_t* m, const fortran_int_t* n,
3883         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3884         double* b, const fortran_int_t* ldb, double* s, const double* rcond,
3885         fortran_int_t* rank, double* work, const fortran_int_t* lwork,
3886         fortran_int_t* iwork, fortran_int_t* info );
3887 void LAPACK_CGELSD( const fortran_int_t* m, const fortran_int_t* n,
3888         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3889         const fortran_int_t* ldb, float* s, const float* rcond,
3890         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3891         float* rwork, fortran_int_t* iwork, fortran_int_t* info );
3892 void LAPACK_ZGELSD( const fortran_int_t* m, const fortran_int_t* n,
3893         const fortran_int_t* nrhs, const void* a, const fortran_int_t* lda,
3894         void* b, const fortran_int_t* ldb, double* s, const double* rcond,
3895         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3896         double* rwork, fortran_int_t* iwork, fortran_int_t* info );
3897 
3898 // Value-type variants of gelss
3899 void LAPACK_SGELSS( const fortran_int_t* m, const fortran_int_t* n,
3900         const fortran_int_t* nrhs, float* a, const fortran_int_t* lda,
3901         float* b, const fortran_int_t* ldb, float* s, const float* rcond,
3902         fortran_int_t* rank, float* work, const fortran_int_t* lwork,
3903         fortran_int_t* info );
3904 void LAPACK_DGELSS( const fortran_int_t* m, const fortran_int_t* n,
3905         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3906         double* b, const fortran_int_t* ldb, double* s, const double* rcond,
3907         fortran_int_t* rank, double* work, const fortran_int_t* lwork,
3908         fortran_int_t* info );
3909 void LAPACK_CGELSS( const fortran_int_t* m, const fortran_int_t* n,
3910         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3911         const fortran_int_t* ldb, float* s, const float* rcond,
3912         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3913         float* rwork, fortran_int_t* info );
3914 void LAPACK_ZGELSS( const fortran_int_t* m, const fortran_int_t* n,
3915         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3916         const fortran_int_t* ldb, double* s, const double* rcond,
3917         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3918         double* rwork, fortran_int_t* info );
3919 
3920 // Value-type variants of gelsy
3921 void LAPACK_SGELSY( const fortran_int_t* m, const fortran_int_t* n,
3922         const fortran_int_t* nrhs, float* a, const fortran_int_t* lda,
3923         float* b, const fortran_int_t* ldb, fortran_int_t* jpvt,
3924         const float* rcond, fortran_int_t* rank, float* work,
3925         const fortran_int_t* lwork, fortran_int_t* info );
3926 void LAPACK_DGELSY( const fortran_int_t* m, const fortran_int_t* n,
3927         const fortran_int_t* nrhs, double* a, const fortran_int_t* lda,
3928         double* b, const fortran_int_t* ldb, fortran_int_t* jpvt,
3929         const double* rcond, fortran_int_t* rank, double* work,
3930         const fortran_int_t* lwork, fortran_int_t* info );
3931 void LAPACK_CGELSY( const fortran_int_t* m, const fortran_int_t* n,
3932         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3933         const fortran_int_t* ldb, fortran_int_t* jpvt, const float* rcond,
3934         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3935         float* rwork, fortran_int_t* info );
3936 void LAPACK_ZGELSY( const fortran_int_t* m, const fortran_int_t* n,
3937         const fortran_int_t* nrhs, void* a, const fortran_int_t* lda, void* b,
3938         const fortran_int_t* ldb, fortran_int_t* jpvt, const double* rcond,
3939         fortran_int_t* rank, void* work, const fortran_int_t* lwork,
3940         double* rwork, fortran_int_t* info );
3941 
3942 //
3943 // LAPACK auxiliary routines
3944 //
3945 
3946 // Value-type variants of larf
3947 void LAPACK_SLARF( const char* side, const fortran_int_t* m,
3948         const fortran_int_t* n, const float* v, const fortran_int_t* incv,
3949         const float* tau, float* c, const fortran_int_t* ldc, float* work );
3950 void LAPACK_DLARF( const char* side, const fortran_int_t* m,
3951         const fortran_int_t* n, const double* v, const fortran_int_t* incv,
3952         const double* tau, double* c, const fortran_int_t* ldc, double* work );
3953 void LAPACK_CLARF( const char* side, const fortran_int_t* m,
3954         const fortran_int_t* n, const void* v, const fortran_int_t* incv,
3955         const void* tau, void* c, const fortran_int_t* ldc, void* work );
3956 void LAPACK_ZLARF( const char* side, const fortran_int_t* m,
3957         const fortran_int_t* n, const void* v, const fortran_int_t* incv,
3958         const void* tau, void* c, const fortran_int_t* ldc, void* work );
3959 
3960 // Value-type variants of larfb
3961 void LAPACK_SLARFB( const char* side, const char* trans, const char* direct,
3962         const char* storev, const fortran_int_t* m, const fortran_int_t* n,
3963         const fortran_int_t* k, const float* v, const fortran_int_t* ldv,
3964         const float* t, const fortran_int_t* ldt, float* c,
3965         const fortran_int_t* ldc, float* work, const fortran_int_t* ldwork );
3966 void LAPACK_DLARFB( const char* side, const char* trans, const char* direct,
3967         const char* storev, const fortran_int_t* m, const fortran_int_t* n,
3968         const fortran_int_t* k, const double* v, const fortran_int_t* ldv,
3969         const double* t, const fortran_int_t* ldt, double* c,
3970         const fortran_int_t* ldc, double* work, const fortran_int_t* ldwork );
3971 void LAPACK_CLARFB( const char* side, const char* trans, const char* direct,
3972         const char* storev, const fortran_int_t* m, const fortran_int_t* n,
3973         const fortran_int_t* k, const void* v, const fortran_int_t* ldv,
3974         const void* t, const fortran_int_t* ldt, void* c,
3975         const fortran_int_t* ldc, void* work, const fortran_int_t* ldwork );
3976 void LAPACK_ZLARFB( const char* side, const char* trans, const char* direct,
3977         const char* storev, const fortran_int_t* m, const fortran_int_t* n,
3978         const fortran_int_t* k, const void* v, const fortran_int_t* ldv,
3979         const void* t, const fortran_int_t* ldt, void* c,
3980         const fortran_int_t* ldc, void* work, const fortran_int_t* ldwork );
3981 
3982 // Value-type variants of larfg
3983 void LAPACK_SLARFG( const fortran_int_t* n, float* alpha, float* x,
3984         const fortran_int_t* incx, float* tau );
3985 void LAPACK_DLARFG( const fortran_int_t* n, double* alpha, double* x,
3986         const fortran_int_t* incx, double* tau );
3987 void LAPACK_CLARFG( const fortran_int_t* n, void* alpha, void* x,
3988         const fortran_int_t* incx, void* tau );
3989 void LAPACK_ZLARFG( const fortran_int_t* n, void* alpha, void* x,
3990         const fortran_int_t* incx, void* tau );
3991 
3992 // Value-type variants of larft
3993 void LAPACK_SLARFT( const char* direct, const char* storev,
3994         const fortran_int_t* n, const fortran_int_t* k, float* v,
3995         const fortran_int_t* ldv, const float* tau, float* t,
3996         const fortran_int_t* ldt );
3997 void LAPACK_DLARFT( const char* direct, const char* storev,
3998         const fortran_int_t* n, const fortran_int_t* k, double* v,
3999         const fortran_int_t* ldv, const double* tau, double* t,
4000         const fortran_int_t* ldt );
4001 void LAPACK_CLARFT( const char* direct, const char* storev,
4002         const fortran_int_t* n, const fortran_int_t* k, void* v,
4003         const fortran_int_t* ldv, const void* tau, void* t,
4004         const fortran_int_t* ldt );
4005 void LAPACK_ZLARFT( const char* direct, const char* storev,
4006         const fortran_int_t* n, const fortran_int_t* k, void* v,
4007         const fortran_int_t* ldv, const void* tau, void* t,
4008         const fortran_int_t* ldt );
4009 
4010 // Value-type variants of larfx
4011 void LAPACK_SLARFX( const char* side, const fortran_int_t* m,
4012         const fortran_int_t* n, const float* v, const float* tau, float* c,
4013         const fortran_int_t* ldc, float* work );
4014 void LAPACK_DLARFX( const char* side, const fortran_int_t* m,
4015         const fortran_int_t* n, const double* v, const double* tau, double* c,
4016         const fortran_int_t* ldc, double* work );
4017 void LAPACK_CLARFX( const char* side, const fortran_int_t* m,
4018         const fortran_int_t* n, const void* v, const void* tau, void* c,
4019         const fortran_int_t* ldc, void* work );
4020 void LAPACK_ZLARFX( const char* side, const fortran_int_t* m,
4021         const fortran_int_t* n, const void* v, const void* tau, void* c,
4022         const fortran_int_t* ldc, void* work );
4023 
4024 // Value-type variants of largv
4025 void LAPACK_SLARGV( const fortran_int_t* n, float* x,
4026         const fortran_int_t* incx, float* y, const fortran_int_t* incy,
4027         float* c, const fortran_int_t* incc );
4028 void LAPACK_DLARGV( const fortran_int_t* n, double* x,
4029         const fortran_int_t* incx, double* y, const fortran_int_t* incy,
4030         double* c, const fortran_int_t* incc );
4031 void LAPACK_CLARGV( const fortran_int_t* n, void* x,
4032         const fortran_int_t* incx, void* y, const fortran_int_t* incy,
4033         float* c, const fortran_int_t* incc );
4034 void LAPACK_ZLARGV( const fortran_int_t* n, void* x,
4035         const fortran_int_t* incx, void* y, const fortran_int_t* incy,
4036         double* c, const fortran_int_t* incc );
4037 
4038 // Value-type variants of larnv
4039 void LAPACK_SLARNV( const fortran_int_t* idist, fortran_int_t* iseed,
4040         const fortran_int_t* n, float* x );
4041 void LAPACK_DLARNV( const fortran_int_t* idist, fortran_int_t* iseed,
4042         const fortran_int_t* n, double* x );
4043 void LAPACK_CLARNV( const fortran_int_t* idist, fortran_int_t* iseed,
4044         const fortran_int_t* n, void* x );
4045 void LAPACK_ZLARNV( const fortran_int_t* idist, fortran_int_t* iseed,
4046         const fortran_int_t* n, void* x );
4047 
4048 // Value-type variants of larrb
4049 void LAPACK_SLARRB( const fortran_int_t* n, const float* d, const float* lld,
4050         const fortran_int_t* ifirst, const fortran_int_t* ilast,
4051         const float* rtol1, const float* rtol2, const fortran_int_t* offset,
4052         float* w, float* wgap, float* werr, float* work, fortran_int_t* iwork,
4053         const float* pivmin, const float* spdiam, const fortran_int_t* twist,
4054         fortran_int_t* info );
4055 void LAPACK_DLARRB( const fortran_int_t* n, const double* d,
4056         const double* lld, const fortran_int_t* ifirst,
4057         const fortran_int_t* ilast, const double* rtol1, const double* rtol2,
4058         const fortran_int_t* offset, double* w, double* wgap, double* werr,
4059         double* work, fortran_int_t* iwork, const double* pivmin,
4060         const double* spdiam, const fortran_int_t* twist,
4061         fortran_int_t* info );
4062 
4063 // Value-type variants of larre
4064 void LAPACK_SLARRE( const char* range, const fortran_int_t* n, float* vl,
4065         float* vu, const fortran_int_t* il, const fortran_int_t* iu, float* d,
4066         float* e, float* e2, const float* rtol1, const float* rtol2,
4067         const float* spltol, fortran_int_t* nsplit, fortran_int_t* isplit,
4068         fortran_int_t* m, float* w, float* werr, float* wgap,
4069         fortran_int_t* iblock, fortran_int_t* indexw, float* gers,
4070         float* pivmin, float* work, fortran_int_t* iwork,
4071         fortran_int_t* info );
4072 void LAPACK_DLARRE( const char* range, const fortran_int_t* n, double* vl,
4073         double* vu, const fortran_int_t* il, const fortran_int_t* iu,
4074         double* d, double* e, double* e2, const double* rtol1,
4075         const double* rtol2, const double* spltol, fortran_int_t* nsplit,
4076         fortran_int_t* isplit, fortran_int_t* m, double* w, double* werr,
4077         double* wgap, fortran_int_t* iblock, fortran_int_t* indexw,
4078         double* gers, double* pivmin, double* work, fortran_int_t* iwork,
4079         fortran_int_t* info );
4080 
4081 // Value-type variants of langb
4082 void LAPACK_SLANGB( const char* norm, const fortran_int_t* n,
4083         const fortran_int_t* kl, const fortran_int_t* ku, const float* ab,
4084         const fortran_int_t* ldab, float* work );
4085 void LAPACK_DLANGB( const char* norm, const fortran_int_t* n,
4086         const fortran_int_t* kl, const fortran_int_t* ku, const double* ab,
4087         const fortran_int_t* ldab, double* work );
4088 void LAPACK_CLANGB( const char* norm, const fortran_int_t* n,
4089         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
4090         const fortran_int_t* ldab, float* work );
4091 void LAPACK_ZLANGB( const char* norm, const fortran_int_t* n,
4092         const fortran_int_t* kl, const fortran_int_t* ku, const void* ab,
4093         const fortran_int_t* ldab, double* work );
4094 
4095 // Value-type variants of lange
4096 void LAPACK_SLANGE( const char* norm, const fortran_int_t* m,
4097         const fortran_int_t* n, const float* a, const fortran_int_t* lda,
4098         float* work );
4099 void LAPACK_DLANGE( const char* norm, const fortran_int_t* m,
4100         const fortran_int_t* n, const double* a, const fortran_int_t* lda,
4101         double* work );
4102 void LAPACK_CLANGE( const char* norm, const fortran_int_t* m,
4103         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4104         float* work );
4105 void LAPACK_ZLANGE( const char* norm, const fortran_int_t* m,
4106         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4107         double* work );
4108 
4109 // Value-type variants of lanhb
4110 void LAPACK_CLANHB( const char* norm, const char* uplo,
4111         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4112         const fortran_int_t* ldab, float* work );
4113 void LAPACK_ZLANHB( const char* norm, const char* uplo,
4114         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4115         const fortran_int_t* ldab, double* work );
4116 
4117 // Value-type variants of lanhe
4118 void LAPACK_CLANHE( const char* norm, const char* uplo,
4119         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4120         float* work );
4121 void LAPACK_ZLANHE( const char* norm, const char* uplo,
4122         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4123         double* work );
4124 
4125 // Value-type variants of lanhp
4126 void LAPACK_CLANHP( const char* norm, const char* uplo,
4127         const fortran_int_t* n, const void* ap, float* work );
4128 void LAPACK_ZLANHP( const char* norm, const char* uplo,
4129         const fortran_int_t* n, const void* ap, double* work );
4130 
4131 // Value-type variants of lanhs
4132 void LAPACK_SLANHS( const char* norm, const fortran_int_t* n, const float* a,
4133         const fortran_int_t* lda, float* work );
4134 void LAPACK_DLANHS( const char* norm, const fortran_int_t* n, const double* a,
4135         const fortran_int_t* lda, double* work );
4136 void LAPACK_CLANHS( const char* norm, const fortran_int_t* n, const void* a,
4137         const fortran_int_t* lda, float* work );
4138 void LAPACK_ZLANHS( const char* norm, const fortran_int_t* n, const void* a,
4139         const fortran_int_t* lda, double* work );
4140 
4141 // Value-type variants of lansb
4142 void LAPACK_SLANSB( const char* norm, const char* uplo,
4143         const fortran_int_t* n, const fortran_int_t* k, const float* ab,
4144         const fortran_int_t* ldab, float* work );
4145 void LAPACK_DLANSB( const char* norm, const char* uplo,
4146         const fortran_int_t* n, const fortran_int_t* k, const double* ab,
4147         const fortran_int_t* ldab, double* work );
4148 void LAPACK_CLANSB( const char* norm, const char* uplo,
4149         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4150         const fortran_int_t* ldab, float* work );
4151 void LAPACK_ZLANSB( const char* norm, const char* uplo,
4152         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4153         const fortran_int_t* ldab, double* work );
4154 
4155 // Value-type variants of lansp
4156 void LAPACK_SLANSP( const char* norm, const char* uplo,
4157         const fortran_int_t* n, const float* ap, float* work );
4158 void LAPACK_DLANSP( const char* norm, const char* uplo,
4159         const fortran_int_t* n, const double* ap, double* work );
4160 void LAPACK_CLANSP( const char* norm, const char* uplo,
4161         const fortran_int_t* n, const void* ap, float* work );
4162 void LAPACK_ZLANSP( const char* norm, const char* uplo,
4163         const fortran_int_t* n, const void* ap, double* work );
4164 
4165 // Value-type variants of lansy
4166 void LAPACK_SLANSY( const char* norm, const char* uplo,
4167         const fortran_int_t* n, const float* a, const fortran_int_t* lda,
4168         float* work );
4169 void LAPACK_DLANSY( const char* norm, const char* uplo,
4170         const fortran_int_t* n, const double* a, const fortran_int_t* lda,
4171         double* work );
4172 void LAPACK_CLANSY( const char* norm, const char* uplo,
4173         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4174         float* work );
4175 void LAPACK_ZLANSY( const char* norm, const char* uplo,
4176         const fortran_int_t* n, const void* a, const fortran_int_t* lda,
4177         double* work );
4178 
4179 // Value-type variants of lantb
4180 void LAPACK_SLANTB( const char* norm, const char* uplo, const char* diag,
4181         const fortran_int_t* n, const fortran_int_t* k, const float* ab,
4182         const fortran_int_t* ldab, float* work );
4183 void LAPACK_DLANTB( const char* norm, const char* uplo, const char* diag,
4184         const fortran_int_t* n, const fortran_int_t* k, const double* ab,
4185         const fortran_int_t* ldab, double* work );
4186 void LAPACK_CLANTB( const char* norm, const char* uplo, const char* diag,
4187         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4188         const fortran_int_t* ldab, float* work );
4189 void LAPACK_ZLANTB( const char* norm, const char* uplo, const char* diag,
4190         const fortran_int_t* n, const fortran_int_t* k, const void* ab,
4191         const fortran_int_t* ldab, double* work );
4192 
4193 // Value-type variants of lantp
4194 void LAPACK_SLANTP( const char* norm, const char* uplo, const char* diag,
4195         const fortran_int_t* n, const float* ap, float* work );
4196 void LAPACK_DLANTP( const char* norm, const char* uplo, const char* diag,
4197         const fortran_int_t* n, const double* ap, double* work );
4198 void LAPACK_CLANTP( const char* norm, const char* uplo, const char* diag,
4199         const fortran_int_t* n, const void* ap, float* work );
4200 void LAPACK_ZLANTP( const char* norm, const char* uplo, const char* diag,
4201         const fortran_int_t* n, const void* ap, double* work );
4202 
4203 // Value-type variants of lantr
4204 void LAPACK_SLANTR( const char* norm, const char* uplo, const char* diag,
4205         const fortran_int_t* m, const fortran_int_t* n, const float* a,
4206         const fortran_int_t* lda, float* work );
4207 void LAPACK_DLANTR( const char* norm, const char* uplo, const char* diag,
4208         const fortran_int_t* m, const fortran_int_t* n, const double* a,
4209         const fortran_int_t* lda, double* work );
4210 void LAPACK_CLANTR( const char* norm, const char* uplo, const char* diag,
4211         const fortran_int_t* m, const fortran_int_t* n, const void* a,
4212         const fortran_int_t* lda, float* work );
4213 void LAPACK_ZLANTR( const char* norm, const char* uplo, const char* diag,
4214         const fortran_int_t* m, const fortran_int_t* n, const void* a,
4215         const fortran_int_t* lda, double* work );
4216 
4217 // Value-type variants of labrd
4218 void LAPACK_SLABRD( const fortran_int_t* m, const fortran_int_t* n,
4219         const fortran_int_t* nb, float* a, const fortran_int_t* lda, float* d,
4220         float* e, float* tauq, float* taup, float* x,
4221         const fortran_int_t* ldx, float* y, const fortran_int_t* ldy );
4222 void LAPACK_DLABRD( const fortran_int_t* m, const fortran_int_t* n,
4223         const fortran_int_t* nb, double* a, const fortran_int_t* lda,
4224         double* d, double* e, double* tauq, double* taup, double* x,
4225         const fortran_int_t* ldx, double* y, const fortran_int_t* ldy );
4226 void LAPACK_CLABRD( const fortran_int_t* m, const fortran_int_t* n,
4227         const fortran_int_t* nb, void* a, const fortran_int_t* lda, float* d,
4228         float* e, void* tauq, void* taup, void* x, const fortran_int_t* ldx,
4229         void* y, const fortran_int_t* ldy );
4230 void LAPACK_ZLABRD( const fortran_int_t* m, const fortran_int_t* n,
4231         const fortran_int_t* nb, void* a, const fortran_int_t* lda, double* d,
4232         double* e, void* tauq, void* taup, void* x, const fortran_int_t* ldx,
4233         void* y, const fortran_int_t* ldy );
4234 
4235 // Value-type variants of lacgv
4236 void LAPACK_CLACGV( const fortran_int_t* n, void* x,
4237         const fortran_int_t* incx );
4238 void LAPACK_ZLACGV( const fortran_int_t* n, void* x,
4239         const fortran_int_t* incx );
4240 
4241 // Value-type variants of lacon
4242 void LAPACK_SLACON( const fortran_int_t* n, float* v, float* x,
4243         fortran_int_t* isgn, float* est, fortran_int_t* kase );
4244 void LAPACK_DLACON( const fortran_int_t* n, double* v, double* x,
4245         fortran_int_t* isgn, double* est, fortran_int_t* kase );
4246 void LAPACK_CLACON( const fortran_int_t* n, void* v, void* x, float* est,
4247         fortran_int_t* kase );
4248 void LAPACK_ZLACON( const fortran_int_t* n, void* v, void* x, double* est,
4249         fortran_int_t* kase );
4250 
4251 // Value-type variants of laebz
4252 void LAPACK_SLAEBZ( const fortran_int_t* ijob, const fortran_int_t* nitmax,
4253         const fortran_int_t* n, const fortran_int_t* mmax,
4254         const fortran_int_t* minp, const fortran_int_t* nbmin,
4255         const float* abstol, const float* reltol, const float* pivmin,
4256         const float* d, const float* e, const float* e2, fortran_int_t* nval,
4257         float* ab, float* c, fortran_int_t* mout, fortran_int_t* nab,
4258         float* work, fortran_int_t* iwork, fortran_int_t* info );
4259 void LAPACK_DLAEBZ( const fortran_int_t* ijob, const fortran_int_t* nitmax,
4260         const fortran_int_t* n, const fortran_int_t* mmax,
4261         const fortran_int_t* minp, const fortran_int_t* nbmin,
4262         const double* abstol, const double* reltol, const double* pivmin,
4263         const double* d, const double* e, const double* e2,
4264         fortran_int_t* nval, double* ab, double* c, fortran_int_t* mout,
4265         fortran_int_t* nab, double* work, fortran_int_t* iwork,
4266         fortran_int_t* info );
4267 
4268 // Value-type variants of lalsd
4269 void LAPACK_SLALSD( const char* uplo, const fortran_int_t* smlsiz,
4270         const fortran_int_t* n, const fortran_int_t* nrhs, float* d, float* e,
4271         float* b, const fortran_int_t* ldb, const float* rcond,
4272         fortran_int_t* rank, float* work, fortran_int_t* iwork,
4273         fortran_int_t* info );
4274 void LAPACK_DLALSD( const char* uplo, const fortran_int_t* smlsiz,
4275         const fortran_int_t* n, const fortran_int_t* nrhs, double* d,
4276         double* e, double* b, const fortran_int_t* ldb, const double* rcond,
4277         fortran_int_t* rank, double* work, fortran_int_t* iwork,
4278         fortran_int_t* info );
4279 void LAPACK_CLALSD( const char* uplo, const fortran_int_t* smlsiz,
4280         const fortran_int_t* n, const fortran_int_t* nrhs, float* d, float* e,
4281         void* b, const fortran_int_t* ldb, const float* rcond,
4282         fortran_int_t* rank, void* work, float* rwork, fortran_int_t* iwork,
4283         fortran_int_t* info );
4284 void LAPACK_ZLALSD( const char* uplo, const fortran_int_t* smlsiz,
4285         const fortran_int_t* n, const fortran_int_t* nrhs, double* d,
4286         double* e, void* b, const fortran_int_t* ldb, const double* rcond,
4287         fortran_int_t* rank, void* work, double* rwork, fortran_int_t* iwork,
4288         fortran_int_t* info );
4289 
4290 // Value-type variants of largv
4291 void LAPACK_SLARGV( const fortran_int_t* n, float* x,
4292         const fortran_int_t* incx, float* y, const fortran_int_t* incy,
4293         float* c, const fortran_int_t* incc );
4294 void LAPACK_DLARGV( const fortran_int_t* n, double* x,
4295         const fortran_int_t* incx, double* y, const fortran_int_t* incy,
4296         double* c, const fortran_int_t* incc );
4297 void LAPACK_CLARGV( const fortran_int_t* n, void* x,
4298         const fortran_int_t* incx, void* y, const fortran_int_t* incy,
4299         float* c, const fortran_int_t* incc );
4300 void LAPACK_ZLARGV( const fortran_int_t* n, void* x,
4301         const fortran_int_t* incx, void* y, const fortran_int_t* incy,
4302         double* c, const fortran_int_t* incc );
4303 
4304 // Value-type variants of larz
4305 void LAPACK_SLARZ( const char* side, const fortran_int_t* m,
4306         const fortran_int_t* n, const fortran_int_t* l, const float* v,
4307         const fortran_int_t* incv, const float* tau, float* c,
4308         const fortran_int_t* ldc, float* work );
4309 void LAPACK_DLARZ( const char* side, const fortran_int_t* m,
4310         const fortran_int_t* n, const fortran_int_t* l, const double* v,
4311         const fortran_int_t* incv, const double* tau, double* c,
4312         const fortran_int_t* ldc, double* work );
4313 void LAPACK_CLARZ( const char* side, const fortran_int_t* m,
4314         const fortran_int_t* n, const fortran_int_t* l, const void* v,
4315         const fortran_int_t* incv, const void* tau, void* c,
4316         const fortran_int_t* ldc, void* work );
4317 void LAPACK_ZLARZ( const char* side, const fortran_int_t* m,
4318         const fortran_int_t* n, const fortran_int_t* l, const void* v,
4319         const fortran_int_t* incv, const void* tau, void* c,
4320         const fortran_int_t* ldc, void* work );
4321 
4322 // Value-type variants of latrd
4323 void LAPACK_SLATRD( const char* uplo, const fortran_int_t* n,
4324         const fortran_int_t* nb, float* a, const fortran_int_t* lda, float* e,
4325         float* tau, float* w, const fortran_int_t* ldw );
4326 void LAPACK_DLATRD( const char* uplo, const fortran_int_t* n,
4327         const fortran_int_t* nb, double* a, const fortran_int_t* lda,
4328         double* e, double* tau, double* w, const fortran_int_t* ldw );
4329 void LAPACK_CLATRD( const char* uplo, const fortran_int_t* n,
4330         const fortran_int_t* nb, void* a, const fortran_int_t* lda, float* e,
4331         void* tau, void* w, const fortran_int_t* ldw );
4332 void LAPACK_ZLATRD( const char* uplo, const fortran_int_t* n,
4333         const fortran_int_t* nb, void* a, const fortran_int_t* lda, double* e,
4334         void* tau, void* w, const fortran_int_t* ldw );
4335 
4336 // Value-type variants of latrs
4337 void LAPACK_SLATRS( const char* uplo, const char* trans, const char* diag,
4338         const char* normin, const fortran_int_t* n, const float* a,
4339         const fortran_int_t* lda, float* x, float* scale, float* cnorm,
4340         fortran_int_t* info );
4341 void LAPACK_DLATRS( const char* uplo, const char* trans, const char* diag,
4342         const char* normin, const fortran_int_t* n, const double* a,
4343         const fortran_int_t* lda, double* x, double* scale, double* cnorm,
4344         fortran_int_t* info );
4345 void LAPACK_CLATRS( const char* uplo, const char* trans, const char* diag,
4346         const char* normin, const fortran_int_t* n, const void* a,
4347         const fortran_int_t* lda, void* x, float* scale, float* cnorm,
4348         fortran_int_t* info );
4349 void LAPACK_ZLATRS( const char* uplo, const char* trans, const char* diag,
4350         const char* normin, const fortran_int_t* n, const void* a,
4351         const fortran_int_t* lda, void* x, double* scale, double* cnorm,
4352         fortran_int_t* info );
4353 
4354 // Value-type variants of latrz
4355 void LAPACK_SLATRZ( const fortran_int_t* m, const fortran_int_t* n,
4356         const fortran_int_t* l, float* a, const fortran_int_t* lda,
4357         float* tau, float* work );
4358 void LAPACK_DLATRZ( const fortran_int_t* m, const fortran_int_t* n,
4359         const fortran_int_t* l, double* a, const fortran_int_t* lda,
4360         double* tau, double* work );
4361 void LAPACK_CLATRZ( const fortran_int_t* m, const fortran_int_t* n,
4362         const fortran_int_t* l, void* a, const fortran_int_t* lda, void* tau,
4363         void* work );
4364 void LAPACK_ZLATRZ( const fortran_int_t* m, const fortran_int_t* n,
4365         const fortran_int_t* l, void* a, const fortran_int_t* lda, void* tau,
4366         void* work );
4367 
4368 //
4369 // LAPACK auxiliary routines
4370 //
4371 
4372 fortran_int_t LAPACK_ILAENV(const fortran_int_t* ispec, const char* name,
4373         const char* opt, const fortran_int_t* n1, const fortran_int_t* n2,
4374         const fortran_int_t* n3, const fortran_int_t* n4, fortran_int_t,
4375         fortran_int_t);
4376 
4377 }
4378 
4379 #endif
4380 
4381