15#define CBLAS_INDEX size_t
22 #define CBLAS_INT int64_t
24 #define CBLAS_INT int32_t
33 #define CBLAS_IFMT PRId64
35 #define CBLAS_IFMT PRId32
39typedef enum CBLAS_LAYOUT {CblasRowMajor=101, CblasColMajor=102} CBLAS_LAYOUT;
40typedef enum CBLAS_TRANSPOSE {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113} CBLAS_TRANSPOSE;
41typedef enum CBLAS_UPLO {CblasUpper=121, CblasLower=122} CBLAS_UPLO;
42typedef enum CBLAS_DIAG {CblasNonUnit=131, CblasUnit=132} CBLAS_DIAG;
43typedef enum CBLAS_SIDE {CblasLeft=141, CblasRight=142} CBLAS_SIDE;
45#define CBLAS_ORDER CBLAS_LAYOUT
47#include "cblas_mangling.h"
55double cblas_dcabs1(
const void *z);
56float cblas_scabs1(
const void *c);
58float cblas_sdsdot(
const CBLAS_INT N,
const float alpha,
const float *X,
59 const CBLAS_INT incX,
const float *Y,
const CBLAS_INT incY);
60double cblas_dsdot(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX,
const float *Y,
61 const CBLAS_INT incY);
62float cblas_sdot(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX,
63 const float *Y,
const CBLAS_INT incY);
64double cblas_ddot(
const CBLAS_INT N,
const double *X,
const CBLAS_INT incX,
65 const double *Y,
const CBLAS_INT incY);
70void cblas_cdotu_sub(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
71 const void *Y,
const CBLAS_INT incY,
void *dotu);
72void cblas_cdotc_sub(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
73 const void *Y,
const CBLAS_INT incY,
void *dotc);
75void cblas_zdotu_sub(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
76 const void *Y,
const CBLAS_INT incY,
void *dotu);
77void cblas_zdotc_sub(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
78 const void *Y,
const CBLAS_INT incY,
void *dotc);
84float cblas_snrm2(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX);
85float cblas_sasum(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX);
87double cblas_dnrm2(
const CBLAS_INT N,
const double *X,
const CBLAS_INT incX);
88double cblas_dasum(
const CBLAS_INT N,
const double *X,
const CBLAS_INT incX);
90float cblas_scnrm2(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
91float cblas_scasum(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
93double cblas_dznrm2(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
94double cblas_dzasum(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
100CBLAS_INDEX cblas_isamax(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX);
101CBLAS_INDEX cblas_idamax(
const CBLAS_INT N,
const double *X,
const CBLAS_INT incX);
102CBLAS_INDEX cblas_icamax(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
103CBLAS_INDEX cblas_izamax(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX);
114void cblas_sswap(
const CBLAS_INT N,
float *X,
const CBLAS_INT incX,
115 float *Y,
const CBLAS_INT incY);
116void cblas_scopy(
const CBLAS_INT N,
const float *X,
const CBLAS_INT incX,
117 float *Y,
const CBLAS_INT incY);
118void cblas_saxpy(
const CBLAS_INT N,
const float alpha,
const float *X,
119 const CBLAS_INT incX,
float *Y,
const CBLAS_INT incY);
121void cblas_dswap(
const CBLAS_INT N,
double *X,
const CBLAS_INT incX,
122 double *Y,
const CBLAS_INT incY);
123void cblas_dcopy(
const CBLAS_INT N,
const double *X,
const CBLAS_INT incX,
124 double *Y,
const CBLAS_INT incY);
125void cblas_daxpy(
const CBLAS_INT N,
const double alpha,
const double *X,
126 const CBLAS_INT incX,
double *Y,
const CBLAS_INT incY);
128void cblas_cswap(
const CBLAS_INT N,
void *X,
const CBLAS_INT incX,
129 void *Y,
const CBLAS_INT incY);
130void cblas_ccopy(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
131 void *Y,
const CBLAS_INT incY);
132void cblas_caxpy(
const CBLAS_INT N,
const void *alpha,
const void *X,
133 const CBLAS_INT incX,
void *Y,
const CBLAS_INT incY);
135void cblas_zswap(
const CBLAS_INT N,
void *X,
const CBLAS_INT incX,
136 void *Y,
const CBLAS_INT incY);
137void cblas_zcopy(
const CBLAS_INT N,
const void *X,
const CBLAS_INT incX,
138 void *Y,
const CBLAS_INT incY);
139void cblas_zaxpy(
const CBLAS_INT N,
const void *alpha,
const void *X,
140 const CBLAS_INT incX,
void *Y,
const CBLAS_INT incY);
146void cblas_srotmg(
float *d1,
float *d2,
float *b1,
const float b2,
float *P);
147void cblas_srotm(
const CBLAS_INT N,
float *X,
const CBLAS_INT incX,
148 float *Y,
const CBLAS_INT incY,
const float *P);
149void cblas_drotmg(
double *d1,
double *d2,
double *b1,
const double b2,
double *P);
150void cblas_drotm(
const CBLAS_INT N,
double *X,
const CBLAS_INT incX,
151 double *Y,
const CBLAS_INT incY,
const double *P);
158void cblas_sscal(
const CBLAS_INT N,
const float alpha,
float *X,
const CBLAS_INT incX);
159void cblas_dscal(
const CBLAS_INT N,
const double alpha,
double *X,
const CBLAS_INT incX);
160void cblas_cscal(
const CBLAS_INT N,
const void *alpha,
void *X,
const CBLAS_INT incX);
161void cblas_zscal(
const CBLAS_INT N,
const void *alpha,
void *X,
const CBLAS_INT incX);
162void cblas_csscal(
const CBLAS_INT N,
const float alpha,
void *X,
const CBLAS_INT incX);
163void cblas_zdscal(
const CBLAS_INT N,
const double alpha,
void *X,
const CBLAS_INT incX);
165void cblas_srotg(
float *a,
float *b,
float *c,
float *s);
166void cblas_drotg(
double *a,
double *b,
double *c,
double *s);
167void cblas_crotg(
void *a,
void *b,
float *c,
void *s);
168void cblas_zrotg(
void *a,
void *b,
double *c,
void *s);
170void cblas_srot(
const CBLAS_INT N,
float *X,
const CBLAS_INT incX,
171 float *Y,
const CBLAS_INT incY,
const float c,
const float s);
172void cblas_drot(
const CBLAS_INT N,
double *X,
const CBLAS_INT incX,
173 double *Y,
const CBLAS_INT incY,
const double c,
const double s);
174void cblas_csrot(
const CBLAS_INT N,
void *X,
const CBLAS_INT incX,
175 void *Y,
const CBLAS_INT incY,
const float c,
const float s);
176void cblas_zdrot(
const CBLAS_INT N,
void *X,
const CBLAS_INT incX,
177 void *Y,
const CBLAS_INT incY,
const double c,
const double s);
188void cblas_sgemv(
const CBLAS_LAYOUT layout,
189 const CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
190 const float alpha,
const float *A,
const CBLAS_INT lda,
191 const float *X,
const CBLAS_INT incX,
const float beta,
192 float *Y,
const CBLAS_INT incY);
193void cblas_sgbmv(CBLAS_LAYOUT layout,
194 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
195 const CBLAS_INT KL,
const CBLAS_INT KU,
const float alpha,
196 const float *A,
const CBLAS_INT lda,
const float *X,
197 const CBLAS_INT incX,
const float beta,
float *Y,
const CBLAS_INT incY);
198void cblas_strmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
199 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
200 const CBLAS_INT N,
const float *A,
const CBLAS_INT lda,
201 float *X,
const CBLAS_INT incX);
202void cblas_stbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
203 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
204 const CBLAS_INT N,
const CBLAS_INT K,
const float *A,
const CBLAS_INT lda,
205 float *X,
const CBLAS_INT incX);
206void cblas_stpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
207 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
208 const CBLAS_INT N,
const float *Ap,
float *X,
const CBLAS_INT incX);
209void cblas_strsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
210 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
211 const CBLAS_INT N,
const float *A,
const CBLAS_INT lda,
float *X,
212 const CBLAS_INT incX);
213void cblas_stbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
214 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
215 const CBLAS_INT N,
const CBLAS_INT K,
const float *A,
const CBLAS_INT lda,
216 float *X,
const CBLAS_INT incX);
217void cblas_stpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
218 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
219 const CBLAS_INT N,
const float *Ap,
float *X,
const CBLAS_INT incX);
221void cblas_dgemv(CBLAS_LAYOUT layout,
222 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
223 const double alpha,
const double *A,
const CBLAS_INT lda,
224 const double *X,
const CBLAS_INT incX,
const double beta,
225 double *Y,
const CBLAS_INT incY);
226void cblas_dgbmv(CBLAS_LAYOUT layout,
227 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
228 const CBLAS_INT KL,
const CBLAS_INT KU,
const double alpha,
229 const double *A,
const CBLAS_INT lda,
const double *X,
230 const CBLAS_INT incX,
const double beta,
double *Y,
const CBLAS_INT incY);
231void cblas_dtrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
232 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
233 const CBLAS_INT N,
const double *A,
const CBLAS_INT lda,
234 double *X,
const CBLAS_INT incX);
235void cblas_dtbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
236 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
237 const CBLAS_INT N,
const CBLAS_INT K,
const double *A,
const CBLAS_INT lda,
238 double *X,
const CBLAS_INT incX);
239void cblas_dtpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
240 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
241 const CBLAS_INT N,
const double *Ap,
double *X,
const CBLAS_INT incX);
242void cblas_dtrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
243 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
244 const CBLAS_INT N,
const double *A,
const CBLAS_INT lda,
double *X,
245 const CBLAS_INT incX);
246void cblas_dtbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
247 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
248 const CBLAS_INT N,
const CBLAS_INT K,
const double *A,
const CBLAS_INT lda,
249 double *X,
const CBLAS_INT incX);
250void cblas_dtpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
251 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
252 const CBLAS_INT N,
const double *Ap,
double *X,
const CBLAS_INT incX);
254void cblas_cgemv(CBLAS_LAYOUT layout,
255 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
256 const void *alpha,
const void *A,
const CBLAS_INT lda,
257 const void *X,
const CBLAS_INT incX,
const void *beta,
258 void *Y,
const CBLAS_INT incY);
259void cblas_cgbmv(CBLAS_LAYOUT layout,
260 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
261 const CBLAS_INT KL,
const CBLAS_INT KU,
const void *alpha,
262 const void *A,
const CBLAS_INT lda,
const void *X,
263 const CBLAS_INT incX,
const void *beta,
void *Y,
const CBLAS_INT incY);
264void cblas_ctrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
265 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
266 const CBLAS_INT N,
const void *A,
const CBLAS_INT lda,
267 void *X,
const CBLAS_INT incX);
268void cblas_ctbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
269 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
270 const CBLAS_INT N,
const CBLAS_INT K,
const void *A,
const CBLAS_INT lda,
271 void *X,
const CBLAS_INT incX);
272void cblas_ctpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
273 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
274 const CBLAS_INT N,
const void *Ap,
void *X,
const CBLAS_INT incX);
275void cblas_ctrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
276 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
277 const CBLAS_INT N,
const void *A,
const CBLAS_INT lda,
void *X,
278 const CBLAS_INT incX);
279void cblas_ctbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
280 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
281 const CBLAS_INT N,
const CBLAS_INT K,
const void *A,
const CBLAS_INT lda,
282 void *X,
const CBLAS_INT incX);
283void cblas_ctpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
284 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
285 const CBLAS_INT N,
const void *Ap,
void *X,
const CBLAS_INT incX);
287void cblas_zgemv(CBLAS_LAYOUT layout,
288 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
289 const void *alpha,
const void *A,
const CBLAS_INT lda,
290 const void *X,
const CBLAS_INT incX,
const void *beta,
291 void *Y,
const CBLAS_INT incY);
292void cblas_zgbmv(CBLAS_LAYOUT layout,
293 CBLAS_TRANSPOSE TransA,
const CBLAS_INT M,
const CBLAS_INT N,
294 const CBLAS_INT KL,
const CBLAS_INT KU,
const void *alpha,
295 const void *A,
const CBLAS_INT lda,
const void *X,
296 const CBLAS_INT incX,
const void *beta,
void *Y,
const CBLAS_INT incY);
297void cblas_ztrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
298 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
299 const CBLAS_INT N,
const void *A,
const CBLAS_INT lda,
300 void *X,
const CBLAS_INT incX);
301void cblas_ztbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
302 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
303 const CBLAS_INT N,
const CBLAS_INT K,
const void *A,
const CBLAS_INT lda,
304 void *X,
const CBLAS_INT incX);
305void cblas_ztpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
306 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
307 const CBLAS_INT N,
const void *Ap,
void *X,
const CBLAS_INT incX);
308void cblas_ztrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
309 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
310 const CBLAS_INT N,
const void *A,
const CBLAS_INT lda,
void *X,
311 const CBLAS_INT incX);
312void cblas_ztbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
313 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
314 const CBLAS_INT N,
const CBLAS_INT K,
const void *A,
const CBLAS_INT lda,
315 void *X,
const CBLAS_INT incX);
316void cblas_ztpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
317 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
318 const CBLAS_INT N,
const void *Ap,
void *X,
const CBLAS_INT incX);
324void cblas_ssymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
325 const CBLAS_INT N,
const float alpha,
const float *A,
326 const CBLAS_INT lda,
const float *X,
const CBLAS_INT incX,
327 const float beta,
float *Y,
const CBLAS_INT incY);
328void cblas_ssbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
329 const CBLAS_INT N,
const CBLAS_INT K,
const float alpha,
const float *A,
330 const CBLAS_INT lda,
const float *X,
const CBLAS_INT incX,
331 const float beta,
float *Y,
const CBLAS_INT incY);
332void cblas_sspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
333 const CBLAS_INT N,
const float alpha,
const float *Ap,
334 const float *X,
const CBLAS_INT incX,
335 const float beta,
float *Y,
const CBLAS_INT incY);
336void cblas_sger(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
337 const float alpha,
const float *X,
const CBLAS_INT incX,
338 const float *Y,
const CBLAS_INT incY,
float *A,
const CBLAS_INT lda);
339void cblas_ssyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
340 const CBLAS_INT N,
const float alpha,
const float *X,
341 const CBLAS_INT incX,
float *A,
const CBLAS_INT lda);
342void cblas_sspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
343 const CBLAS_INT N,
const float alpha,
const float *X,
344 const CBLAS_INT incX,
float *Ap);
345void cblas_ssyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
346 const CBLAS_INT N,
const float alpha,
const float *X,
347 const CBLAS_INT incX,
const float *Y,
const CBLAS_INT incY,
float *A,
348 const CBLAS_INT lda);
349void cblas_sspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
350 const CBLAS_INT N,
const float alpha,
const float *X,
351 const CBLAS_INT incX,
const float *Y,
const CBLAS_INT incY,
float *A);
353void cblas_dsymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
354 const CBLAS_INT N,
const double alpha,
const double *A,
355 const CBLAS_INT lda,
const double *X,
const CBLAS_INT incX,
356 const double beta,
double *Y,
const CBLAS_INT incY);
357void cblas_dsbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
358 const CBLAS_INT N,
const CBLAS_INT K,
const double alpha,
const double *A,
359 const CBLAS_INT lda,
const double *X,
const CBLAS_INT incX,
360 const double beta,
double *Y,
const CBLAS_INT incY);
361void cblas_dspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
362 const CBLAS_INT N,
const double alpha,
const double *Ap,
363 const double *X,
const CBLAS_INT incX,
364 const double beta,
double *Y,
const CBLAS_INT incY);
365void cblas_dger(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
366 const double alpha,
const double *X,
const CBLAS_INT incX,
367 const double *Y,
const CBLAS_INT incY,
double *A,
const CBLAS_INT lda);
368void cblas_dsyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
369 const CBLAS_INT N,
const double alpha,
const double *X,
370 const CBLAS_INT incX,
double *A,
const CBLAS_INT lda);
371void cblas_dspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
372 const CBLAS_INT N,
const double alpha,
const double *X,
373 const CBLAS_INT incX,
double *Ap);
374void cblas_dsyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
375 const CBLAS_INT N,
const double alpha,
const double *X,
376 const CBLAS_INT incX,
const double *Y,
const CBLAS_INT incY,
double *A,
377 const CBLAS_INT lda);
378void cblas_dspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
379 const CBLAS_INT N,
const double alpha,
const double *X,
380 const CBLAS_INT incX,
const double *Y,
const CBLAS_INT incY,
double *A);
386void cblas_chemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
387 const CBLAS_INT N,
const void *alpha,
const void *A,
388 const CBLAS_INT lda,
const void *X,
const CBLAS_INT incX,
389 const void *beta,
void *Y,
const CBLAS_INT incY);
390void cblas_chbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
391 const CBLAS_INT N,
const CBLAS_INT K,
const void *alpha,
const void *A,
392 const CBLAS_INT lda,
const void *X,
const CBLAS_INT incX,
393 const void *beta,
void *Y,
const CBLAS_INT incY);
394void cblas_chpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
395 const CBLAS_INT N,
const void *alpha,
const void *Ap,
396 const void *X,
const CBLAS_INT incX,
397 const void *beta,
void *Y,
const CBLAS_INT incY);
398void cblas_cgeru(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
399 const void *alpha,
const void *X,
const CBLAS_INT incX,
400 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
401void cblas_cgerc(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
402 const void *alpha,
const void *X,
const CBLAS_INT incX,
403 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
404void cblas_cher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
405 const CBLAS_INT N,
const float alpha,
const void *X,
const CBLAS_INT incX,
406 void *A,
const CBLAS_INT lda);
407void cblas_chpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
408 const CBLAS_INT N,
const float alpha,
const void *X,
409 const CBLAS_INT incX,
void *A);
410void cblas_cher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const CBLAS_INT N,
411 const void *alpha,
const void *X,
const CBLAS_INT incX,
412 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
413void cblas_chpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const CBLAS_INT N,
414 const void *alpha,
const void *X,
const CBLAS_INT incX,
415 const void *Y,
const CBLAS_INT incY,
void *Ap);
417void cblas_zhemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
418 const CBLAS_INT N,
const void *alpha,
const void *A,
419 const CBLAS_INT lda,
const void *X,
const CBLAS_INT incX,
420 const void *beta,
void *Y,
const CBLAS_INT incY);
421void cblas_zhbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
422 const CBLAS_INT N,
const CBLAS_INT K,
const void *alpha,
const void *A,
423 const CBLAS_INT lda,
const void *X,
const CBLAS_INT incX,
424 const void *beta,
void *Y,
const CBLAS_INT incY);
425void cblas_zhpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
426 const CBLAS_INT N,
const void *alpha,
const void *Ap,
427 const void *X,
const CBLAS_INT incX,
428 const void *beta,
void *Y,
const CBLAS_INT incY);
429void cblas_zgeru(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
430 const void *alpha,
const void *X,
const CBLAS_INT incX,
431 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
432void cblas_zgerc(CBLAS_LAYOUT layout,
const CBLAS_INT M,
const CBLAS_INT N,
433 const void *alpha,
const void *X,
const CBLAS_INT incX,
434 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
435void cblas_zher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
436 const CBLAS_INT N,
const double alpha,
const void *X,
const CBLAS_INT incX,
437 void *A,
const CBLAS_INT lda);
438void cblas_zhpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
439 const CBLAS_INT N,
const double alpha,
const void *X,
440 const CBLAS_INT incX,
void *A);
441void cblas_zher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const CBLAS_INT N,
442 const void *alpha,
const void *X,
const CBLAS_INT incX,
443 const void *Y,
const CBLAS_INT incY,
void *A,
const CBLAS_INT lda);
444void cblas_zhpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const CBLAS_INT N,
445 const void *alpha,
const void *X,
const CBLAS_INT incX,
446 const void *Y,
const CBLAS_INT incY,
void *Ap);
457void cblas_sgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
458 CBLAS_TRANSPOSE TransB,
const CBLAS_INT M,
const CBLAS_INT N,
459 const CBLAS_INT K,
const float alpha,
const float *A,
460 const CBLAS_INT lda,
const float *B,
const CBLAS_INT ldb,
461 const float beta,
float *C,
const CBLAS_INT ldc);
462void cblas_ssymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
463 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
464 const float alpha,
const float *A,
const CBLAS_INT lda,
465 const float *B,
const CBLAS_INT ldb,
const float beta,
466 float *C,
const CBLAS_INT ldc);
467void cblas_ssyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
468 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
469 const float alpha,
const float *A,
const CBLAS_INT lda,
470 const float beta,
float *C,
const CBLAS_INT ldc);
471void cblas_ssyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
472 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
473 const float alpha,
const float *A,
const CBLAS_INT lda,
474 const float *B,
const CBLAS_INT ldb,
const float beta,
475 float *C,
const CBLAS_INT ldc);
476void cblas_strmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
477 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
478 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
479 const float alpha,
const float *A,
const CBLAS_INT lda,
480 float *B,
const CBLAS_INT ldb);
481void cblas_strsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
482 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
483 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
484 const float alpha,
const float *A,
const CBLAS_INT lda,
485 float *B,
const CBLAS_INT ldb);
487void cblas_dgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
488 CBLAS_TRANSPOSE TransB,
const CBLAS_INT M,
const CBLAS_INT N,
489 const CBLAS_INT K,
const double alpha,
const double *A,
490 const CBLAS_INT lda,
const double *B,
const CBLAS_INT ldb,
491 const double beta,
double *C,
const CBLAS_INT ldc);
492void cblas_dsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
493 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
494 const double alpha,
const double *A,
const CBLAS_INT lda,
495 const double *B,
const CBLAS_INT ldb,
const double beta,
496 double *C,
const CBLAS_INT ldc);
497void cblas_dsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
498 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
499 const double alpha,
const double *A,
const CBLAS_INT lda,
500 const double beta,
double *C,
const CBLAS_INT ldc);
501void cblas_dsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
502 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
503 const double alpha,
const double *A,
const CBLAS_INT lda,
504 const double *B,
const CBLAS_INT ldb,
const double beta,
505 double *C,
const CBLAS_INT ldc);
506void cblas_dtrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
507 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
508 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
509 const double alpha,
const double *A,
const CBLAS_INT lda,
510 double *B,
const CBLAS_INT ldb);
511void cblas_dtrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
512 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
513 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
514 const double alpha,
const double *A,
const CBLAS_INT lda,
515 double *B,
const CBLAS_INT ldb);
517void cblas_cgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
518 CBLAS_TRANSPOSE TransB,
const CBLAS_INT M,
const CBLAS_INT N,
519 const CBLAS_INT K,
const void *alpha,
const void *A,
520 const CBLAS_INT lda,
const void *B,
const CBLAS_INT ldb,
521 const void *beta,
void *C,
const CBLAS_INT ldc);
522void cblas_csymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
523 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
524 const void *alpha,
const void *A,
const CBLAS_INT lda,
525 const void *B,
const CBLAS_INT ldb,
const void *beta,
526 void *C,
const CBLAS_INT ldc);
527void cblas_csyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
528 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
529 const void *alpha,
const void *A,
const CBLAS_INT lda,
530 const void *beta,
void *C,
const CBLAS_INT ldc);
531void cblas_csyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
532 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
533 const void *alpha,
const void *A,
const CBLAS_INT lda,
534 const void *B,
const CBLAS_INT ldb,
const void *beta,
535 void *C,
const CBLAS_INT ldc);
536void cblas_ctrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
537 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
538 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
539 const void *alpha,
const void *A,
const CBLAS_INT lda,
540 void *B,
const CBLAS_INT ldb);
541void cblas_ctrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
542 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
543 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
544 const void *alpha,
const void *A,
const CBLAS_INT lda,
545 void *B,
const CBLAS_INT ldb);
547void cblas_zgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
548 CBLAS_TRANSPOSE TransB,
const CBLAS_INT M,
const CBLAS_INT N,
549 const CBLAS_INT K,
const void *alpha,
const void *A,
550 const CBLAS_INT lda,
const void *B,
const CBLAS_INT ldb,
551 const void *beta,
void *C,
const CBLAS_INT ldc);
552void cblas_zsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
553 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
554 const void *alpha,
const void *A,
const CBLAS_INT lda,
555 const void *B,
const CBLAS_INT ldb,
const void *beta,
556 void *C,
const CBLAS_INT ldc);
557void cblas_zsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
558 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
559 const void *alpha,
const void *A,
const CBLAS_INT lda,
560 const void *beta,
void *C,
const CBLAS_INT ldc);
561void cblas_zsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
562 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
563 const void *alpha,
const void *A,
const CBLAS_INT lda,
564 const void *B,
const CBLAS_INT ldb,
const void *beta,
565 void *C,
const CBLAS_INT ldc);
566void cblas_ztrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
567 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
568 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
569 const void *alpha,
const void *A,
const CBLAS_INT lda,
570 void *B,
const CBLAS_INT ldb);
571void cblas_ztrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
572 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
573 CBLAS_DIAG Diag,
const CBLAS_INT M,
const CBLAS_INT N,
574 const void *alpha,
const void *A,
const CBLAS_INT lda,
575 void *B,
const CBLAS_INT ldb);
581void cblas_chemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
582 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
583 const void *alpha,
const void *A,
const CBLAS_INT lda,
584 const void *B,
const CBLAS_INT ldb,
const void *beta,
585 void *C,
const CBLAS_INT ldc);
586void cblas_cherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
587 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
588 const float alpha,
const void *A,
const CBLAS_INT lda,
589 const float beta,
void *C,
const CBLAS_INT ldc);
590void cblas_cher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
591 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
592 const void *alpha,
const void *A,
const CBLAS_INT lda,
593 const void *B,
const CBLAS_INT ldb,
const float beta,
594 void *C,
const CBLAS_INT ldc);
596void cblas_zhemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
597 CBLAS_UPLO Uplo,
const CBLAS_INT M,
const CBLAS_INT N,
598 const void *alpha,
const void *A,
const CBLAS_INT lda,
599 const void *B,
const CBLAS_INT ldb,
const void *beta,
600 void *C,
const CBLAS_INT ldc);
601void cblas_zherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
602 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
603 const double alpha,
const void *A,
const CBLAS_INT lda,
604 const double beta,
void *C,
const CBLAS_INT ldc);
605void cblas_zher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
606 CBLAS_TRANSPOSE Trans,
const CBLAS_INT N,
const CBLAS_INT K,
607 const void *alpha,
const void *A,
const CBLAS_INT lda,
608 const void *B,
const CBLAS_INT ldb,
const double beta,
609 void *C,
const CBLAS_INT ldc);
611void cblas_xerbla(CBLAS_INT p,
const char *rout,
const char *form, ...);