14 #define CBLAS_INDEX long
16 #define CBLAS_INDEX int
19 typedef enum {CblasRowMajor=101, CblasColMajor=102} CBLAS_LAYOUT;
20 typedef enum {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113} CBLAS_TRANSPOSE;
21 typedef enum {CblasUpper=121, CblasLower=122} CBLAS_UPLO;
22 typedef enum {CblasNonUnit=131, CblasUnit=132} CBLAS_DIAG;
23 typedef enum {CblasLeft=141, CblasRight=142} CBLAS_SIDE;
25 typedef CBLAS_LAYOUT CBLAS_ORDER;
27 #include "cblas_mangling.h"
35 double cblas_dcabs1(
const void *z);
36 float cblas_scabs1(
const void *c);
38 float cblas_sdsdot(
const int N,
const float alpha,
const float *X,
39 const int incX,
const float *Y,
const int incY);
40 double cblas_dsdot(
const int N,
const float *X,
const int incX,
const float *Y,
42 float cblas_sdot(
const int N,
const float *X,
const int incX,
43 const float *Y,
const int incY);
44 double cblas_ddot(
const int N,
const double *X,
const int incX,
45 const double *Y,
const int incY);
50 void cblas_cdotu_sub(
const int N,
const void *X,
const int incX,
51 const void *Y,
const int incY,
void *dotu);
52 void cblas_cdotc_sub(
const int N,
const void *X,
const int incX,
53 const void *Y,
const int incY,
void *dotc);
55 void cblas_zdotu_sub(
const int N,
const void *X,
const int incX,
56 const void *Y,
const int incY,
void *dotu);
57 void cblas_zdotc_sub(
const int N,
const void *X,
const int incX,
58 const void *Y,
const int incY,
void *dotc);
64 float cblas_snrm2(
const int N,
const float *X,
const int incX);
65 float cblas_sasum(
const int N,
const float *X,
const int incX);
67 double cblas_dnrm2(
const int N,
const double *X,
const int incX);
68 double cblas_dasum(
const int N,
const double *X,
const int incX);
70 float cblas_scnrm2(
const int N,
const void *X,
const int incX);
71 float cblas_scasum(
const int N,
const void *X,
const int incX);
73 double cblas_dznrm2(
const int N,
const void *X,
const int incX);
74 double cblas_dzasum(
const int N,
const void *X,
const int incX);
80 CBLAS_INDEX cblas_isamax(
const int N,
const float *X,
const int incX);
81 CBLAS_INDEX cblas_idamax(
const int N,
const double *X,
const int incX);
82 CBLAS_INDEX cblas_icamax(
const int N,
const void *X,
const int incX);
83 CBLAS_INDEX cblas_izamax(
const int N,
const void *X,
const int incX);
94 void cblas_sswap(
const int N,
float *X,
const int incX,
95 float *Y,
const int incY);
96 void cblas_scopy(
const int N,
const float *X,
const int incX,
97 float *Y,
const int incY);
98 void cblas_saxpy(
const int N,
const float alpha,
const float *X,
99 const int incX,
float *Y,
const int incY);
101 void cblas_dswap(
const int N,
double *X,
const int incX,
102 double *Y,
const int incY);
103 void cblas_dcopy(
const int N,
const double *X,
const int incX,
104 double *Y,
const int incY);
105 void cblas_daxpy(
const int N,
const double alpha,
const double *X,
106 const int incX,
double *Y,
const int incY);
108 void cblas_cswap(
const int N,
void *X,
const int incX,
109 void *Y,
const int incY);
110 void cblas_ccopy(
const int N,
const void *X,
const int incX,
111 void *Y,
const int incY);
112 void cblas_caxpy(
const int N,
const void *alpha,
const void *X,
113 const int incX,
void *Y,
const int incY);
115 void cblas_zswap(
const int N,
void *X,
const int incX,
116 void *Y,
const int incY);
117 void cblas_zcopy(
const int N,
const void *X,
const int incX,
118 void *Y,
const int incY);
119 void cblas_zaxpy(
const int N,
const void *alpha,
const void *X,
120 const int incX,
void *Y,
const int incY);
126 void cblas_srotg(
float *a,
float *b,
float *c,
float *s);
127 void cblas_srotmg(
float *d1,
float *d2,
float *b1,
const float b2,
float *P);
128 void cblas_srot(
const int N,
float *X,
const int incX,
129 float *Y,
const int incY,
const float c,
const float s);
130 void cblas_srotm(
const int N,
float *X,
const int incX,
131 float *Y,
const int incY,
const float *P);
133 void cblas_drotg(
double *a,
double *b,
double *c,
double *s);
134 void cblas_drotmg(
double *d1,
double *d2,
double *b1,
const double b2,
double *P);
135 void cblas_drot(
const int N,
double *X,
const int incX,
136 double *Y,
const int incY,
const double c,
const double s);
137 void cblas_drotm(
const int N,
double *X,
const int incX,
138 double *Y,
const int incY,
const double *P);
144 void cblas_sscal(
const int N,
const float alpha,
float *X,
const int incX);
145 void cblas_dscal(
const int N,
const double alpha,
double *X,
const int incX);
146 void cblas_cscal(
const int N,
const void *alpha,
void *X,
const int incX);
147 void cblas_zscal(
const int N,
const void *alpha,
void *X,
const int incX);
148 void cblas_csscal(
const int N,
const float alpha,
void *X,
const int incX);
149 void cblas_zdscal(
const int N,
const double alpha,
void *X,
const int incX);
160 void cblas_sgemv(
const CBLAS_LAYOUT layout,
161 const CBLAS_TRANSPOSE TransA,
const int M,
const int N,
162 const float alpha,
const float *A,
const int lda,
163 const float *X,
const int incX,
const float beta,
164 float *Y,
const int incY);
165 void cblas_sgbmv(CBLAS_LAYOUT layout,
166 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
167 const int KL,
const int KU,
const float alpha,
168 const float *A,
const int lda,
const float *X,
169 const int incX,
const float beta,
float *Y,
const int incY);
170 void cblas_strmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
171 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
172 const int N,
const float *A,
const int lda,
173 float *X,
const int incX);
174 void cblas_stbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
175 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
176 const int N,
const int K,
const float *A,
const int lda,
177 float *X,
const int incX);
178 void cblas_stpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
179 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
180 const int N,
const float *Ap,
float *X,
const int incX);
181 void cblas_strsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
182 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
183 const int N,
const float *A,
const int lda,
float *X,
185 void cblas_stbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
186 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
187 const int N,
const int K,
const float *A,
const int lda,
188 float *X,
const int incX);
189 void cblas_stpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
190 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
191 const int N,
const float *Ap,
float *X,
const int incX);
193 void cblas_dgemv(CBLAS_LAYOUT layout,
194 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
195 const double alpha,
const double *A,
const int lda,
196 const double *X,
const int incX,
const double beta,
197 double *Y,
const int incY);
198 void cblas_dgbmv(CBLAS_LAYOUT layout,
199 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
200 const int KL,
const int KU,
const double alpha,
201 const double *A,
const int lda,
const double *X,
202 const int incX,
const double beta,
double *Y,
const int incY);
203 void cblas_dtrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
204 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
205 const int N,
const double *A,
const int lda,
206 double *X,
const int incX);
207 void cblas_dtbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
208 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
209 const int N,
const int K,
const double *A,
const int lda,
210 double *X,
const int incX);
211 void cblas_dtpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
212 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
213 const int N,
const double *Ap,
double *X,
const int incX);
214 void cblas_dtrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
215 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
216 const int N,
const double *A,
const int lda,
double *X,
218 void cblas_dtbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
219 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
220 const int N,
const int K,
const double *A,
const int lda,
221 double *X,
const int incX);
222 void cblas_dtpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
223 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
224 const int N,
const double *Ap,
double *X,
const int incX);
226 void cblas_cgemv(CBLAS_LAYOUT layout,
227 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
228 const void *alpha,
const void *A,
const int lda,
229 const void *X,
const int incX,
const void *beta,
230 void *Y,
const int incY);
231 void cblas_cgbmv(CBLAS_LAYOUT layout,
232 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
233 const int KL,
const int KU,
const void *alpha,
234 const void *A,
const int lda,
const void *X,
235 const int incX,
const void *beta,
void *Y,
const int incY);
236 void cblas_ctrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
237 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
238 const int N,
const void *A,
const int lda,
239 void *X,
const int incX);
240 void cblas_ctbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
241 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
242 const int N,
const int K,
const void *A,
const int lda,
243 void *X,
const int incX);
244 void cblas_ctpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
245 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
246 const int N,
const void *Ap,
void *X,
const int incX);
247 void cblas_ctrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
248 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
249 const int N,
const void *A,
const int lda,
void *X,
251 void cblas_ctbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
252 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
253 const int N,
const int K,
const void *A,
const int lda,
254 void *X,
const int incX);
255 void cblas_ctpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
256 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
257 const int N,
const void *Ap,
void *X,
const int incX);
259 void cblas_zgemv(CBLAS_LAYOUT layout,
260 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
261 const void *alpha,
const void *A,
const int lda,
262 const void *X,
const int incX,
const void *beta,
263 void *Y,
const int incY);
264 void cblas_zgbmv(CBLAS_LAYOUT layout,
265 CBLAS_TRANSPOSE TransA,
const int M,
const int N,
266 const int KL,
const int KU,
const void *alpha,
267 const void *A,
const int lda,
const void *X,
268 const int incX,
const void *beta,
void *Y,
const int incY);
269 void cblas_ztrmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
270 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
271 const int N,
const void *A,
const int lda,
272 void *X,
const int incX);
273 void cblas_ztbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
274 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
275 const int N,
const int K,
const void *A,
const int lda,
276 void *X,
const int incX);
277 void cblas_ztpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
278 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
279 const int N,
const void *Ap,
void *X,
const int incX);
280 void cblas_ztrsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
281 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
282 const int N,
const void *A,
const int lda,
void *X,
284 void cblas_ztbsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
285 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
286 const int N,
const int K,
const void *A,
const int lda,
287 void *X,
const int incX);
288 void cblas_ztpsv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
289 CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag,
290 const int N,
const void *Ap,
void *X,
const int incX);
296 void cblas_ssymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
297 const int N,
const float alpha,
const float *A,
298 const int lda,
const float *X,
const int incX,
299 const float beta,
float *Y,
const int incY);
300 void cblas_ssbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
301 const int N,
const int K,
const float alpha,
const float *A,
302 const int lda,
const float *X,
const int incX,
303 const float beta,
float *Y,
const int incY);
304 void cblas_sspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
305 const int N,
const float alpha,
const float *Ap,
306 const float *X,
const int incX,
307 const float beta,
float *Y,
const int incY);
308 void cblas_sger(CBLAS_LAYOUT layout,
const int M,
const int N,
309 const float alpha,
const float *X,
const int incX,
310 const float *Y,
const int incY,
float *A,
const int lda);
311 void cblas_ssyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
312 const int N,
const float alpha,
const float *X,
313 const int incX,
float *A,
const int lda);
314 void cblas_sspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
315 const int N,
const float alpha,
const float *X,
316 const int incX,
float *Ap);
317 void cblas_ssyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
318 const int N,
const float alpha,
const float *X,
319 const int incX,
const float *Y,
const int incY,
float *A,
321 void cblas_sspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
322 const int N,
const float alpha,
const float *X,
323 const int incX,
const float *Y,
const int incY,
float *A);
325 void cblas_dsymv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
326 const int N,
const double alpha,
const double *A,
327 const int lda,
const double *X,
const int incX,
328 const double beta,
double *Y,
const int incY);
329 void cblas_dsbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
330 const int N,
const int K,
const double alpha,
const double *A,
331 const int lda,
const double *X,
const int incX,
332 const double beta,
double *Y,
const int incY);
333 void cblas_dspmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
334 const int N,
const double alpha,
const double *Ap,
335 const double *X,
const int incX,
336 const double beta,
double *Y,
const int incY);
337 void cblas_dger(CBLAS_LAYOUT layout,
const int M,
const int N,
338 const double alpha,
const double *X,
const int incX,
339 const double *Y,
const int incY,
double *A,
const int lda);
340 void cblas_dsyr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
341 const int N,
const double alpha,
const double *X,
342 const int incX,
double *A,
const int lda);
343 void cblas_dspr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
344 const int N,
const double alpha,
const double *X,
345 const int incX,
double *Ap);
346 void cblas_dsyr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
347 const int N,
const double alpha,
const double *X,
348 const int incX,
const double *Y,
const int incY,
double *A,
350 void cblas_dspr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
351 const int N,
const double alpha,
const double *X,
352 const int incX,
const double *Y,
const int incY,
double *A);
358 void cblas_chemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
359 const int N,
const void *alpha,
const void *A,
360 const int lda,
const void *X,
const int incX,
361 const void *beta,
void *Y,
const int incY);
362 void cblas_chbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
363 const int N,
const int K,
const void *alpha,
const void *A,
364 const int lda,
const void *X,
const int incX,
365 const void *beta,
void *Y,
const int incY);
366 void cblas_chpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
367 const int N,
const void *alpha,
const void *Ap,
368 const void *X,
const int incX,
369 const void *beta,
void *Y,
const int incY);
370 void cblas_cgeru(CBLAS_LAYOUT layout,
const int M,
const int N,
371 const void *alpha,
const void *X,
const int incX,
372 const void *Y,
const int incY,
void *A,
const int lda);
373 void cblas_cgerc(CBLAS_LAYOUT layout,
const int M,
const int N,
374 const void *alpha,
const void *X,
const int incX,
375 const void *Y,
const int incY,
void *A,
const int lda);
376 void cblas_cher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
377 const int N,
const float alpha,
const void *X,
const int incX,
378 void *A,
const int lda);
379 void cblas_chpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
380 const int N,
const float alpha,
const void *X,
381 const int incX,
void *A);
382 void cblas_cher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const int N,
383 const void *alpha,
const void *X,
const int incX,
384 const void *Y,
const int incY,
void *A,
const int lda);
385 void cblas_chpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const int N,
386 const void *alpha,
const void *X,
const int incX,
387 const void *Y,
const int incY,
void *Ap);
389 void cblas_zhemv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
390 const int N,
const void *alpha,
const void *A,
391 const int lda,
const void *X,
const int incX,
392 const void *beta,
void *Y,
const int incY);
393 void cblas_zhbmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
394 const int N,
const int K,
const void *alpha,
const void *A,
395 const int lda,
const void *X,
const int incX,
396 const void *beta,
void *Y,
const int incY);
397 void cblas_zhpmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
398 const int N,
const void *alpha,
const void *Ap,
399 const void *X,
const int incX,
400 const void *beta,
void *Y,
const int incY);
401 void cblas_zgeru(CBLAS_LAYOUT layout,
const int M,
const int N,
402 const void *alpha,
const void *X,
const int incX,
403 const void *Y,
const int incY,
void *A,
const int lda);
404 void cblas_zgerc(CBLAS_LAYOUT layout,
const int M,
const int N,
405 const void *alpha,
const void *X,
const int incX,
406 const void *Y,
const int incY,
void *A,
const int lda);
407 void cblas_zher(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
408 const int N,
const double alpha,
const void *X,
const int incX,
409 void *A,
const int lda);
410 void cblas_zhpr(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
411 const int N,
const double alpha,
const void *X,
412 const int incX,
void *A);
413 void cblas_zher2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const int N,
414 const void *alpha,
const void *X,
const int incX,
415 const void *Y,
const int incY,
void *A,
const int lda);
416 void cblas_zhpr2(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
const int N,
417 const void *alpha,
const void *X,
const int incX,
418 const void *Y,
const int incY,
void *Ap);
429 void cblas_sgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
430 CBLAS_TRANSPOSE TransB,
const int M,
const int N,
431 const int K,
const float alpha,
const float *A,
432 const int lda,
const float *B,
const int ldb,
433 const float beta,
float *C,
const int ldc);
434 void cblas_ssymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
435 CBLAS_UPLO Uplo,
const int M,
const int N,
436 const float alpha,
const float *A,
const int lda,
437 const float *B,
const int ldb,
const float beta,
438 float *C,
const int ldc);
439 void cblas_ssyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
440 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
441 const float alpha,
const float *A,
const int lda,
442 const float beta,
float *C,
const int ldc);
443 void cblas_ssyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
444 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
445 const float alpha,
const float *A,
const int lda,
446 const float *B,
const int ldb,
const float beta,
447 float *C,
const int ldc);
448 void cblas_strmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
449 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
450 CBLAS_DIAG Diag,
const int M,
const int N,
451 const float alpha,
const float *A,
const int lda,
452 float *B,
const int ldb);
453 void cblas_strsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
454 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
455 CBLAS_DIAG Diag,
const int M,
const int N,
456 const float alpha,
const float *A,
const int lda,
457 float *B,
const int ldb);
459 void cblas_dgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
460 CBLAS_TRANSPOSE TransB,
const int M,
const int N,
461 const int K,
const double alpha,
const double *A,
462 const int lda,
const double *B,
const int ldb,
463 const double beta,
double *C,
const int ldc);
464 void cblas_dsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
465 CBLAS_UPLO Uplo,
const int M,
const int N,
466 const double alpha,
const double *A,
const int lda,
467 const double *B,
const int ldb,
const double beta,
468 double *C,
const int ldc);
469 void cblas_dsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
470 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
471 const double alpha,
const double *A,
const int lda,
472 const double beta,
double *C,
const int ldc);
473 void cblas_dsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
474 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
475 const double alpha,
const double *A,
const int lda,
476 const double *B,
const int ldb,
const double beta,
477 double *C,
const int ldc);
478 void cblas_dtrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
479 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
480 CBLAS_DIAG Diag,
const int M,
const int N,
481 const double alpha,
const double *A,
const int lda,
482 double *B,
const int ldb);
483 void cblas_dtrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
484 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
485 CBLAS_DIAG Diag,
const int M,
const int N,
486 const double alpha,
const double *A,
const int lda,
487 double *B,
const int ldb);
489 void cblas_cgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
490 CBLAS_TRANSPOSE TransB,
const int M,
const int N,
491 const int K,
const void *alpha,
const void *A,
492 const int lda,
const void *B,
const int ldb,
493 const void *beta,
void *C,
const int ldc);
494 void cblas_csymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
495 CBLAS_UPLO Uplo,
const int M,
const int N,
496 const void *alpha,
const void *A,
const int lda,
497 const void *B,
const int ldb,
const void *beta,
498 void *C,
const int ldc);
499 void cblas_csyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
500 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
501 const void *alpha,
const void *A,
const int lda,
502 const void *beta,
void *C,
const int ldc);
503 void cblas_csyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
504 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
505 const void *alpha,
const void *A,
const int lda,
506 const void *B,
const int ldb,
const void *beta,
507 void *C,
const int ldc);
508 void cblas_ctrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
509 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
510 CBLAS_DIAG Diag,
const int M,
const int N,
511 const void *alpha,
const void *A,
const int lda,
512 void *B,
const int ldb);
513 void cblas_ctrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
514 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
515 CBLAS_DIAG Diag,
const int M,
const int N,
516 const void *alpha,
const void *A,
const int lda,
517 void *B,
const int ldb);
519 void cblas_zgemm(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA,
520 CBLAS_TRANSPOSE TransB,
const int M,
const int N,
521 const int K,
const void *alpha,
const void *A,
522 const int lda,
const void *B,
const int ldb,
523 const void *beta,
void *C,
const int ldc);
524 void cblas_zsymm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
525 CBLAS_UPLO Uplo,
const int M,
const int N,
526 const void *alpha,
const void *A,
const int lda,
527 const void *B,
const int ldb,
const void *beta,
528 void *C,
const int ldc);
529 void cblas_zsyrk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
530 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
531 const void *alpha,
const void *A,
const int lda,
532 const void *beta,
void *C,
const int ldc);
533 void cblas_zsyr2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
534 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
535 const void *alpha,
const void *A,
const int lda,
536 const void *B,
const int ldb,
const void *beta,
537 void *C,
const int ldc);
538 void cblas_ztrmm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
539 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
540 CBLAS_DIAG Diag,
const int M,
const int N,
541 const void *alpha,
const void *A,
const int lda,
542 void *B,
const int ldb);
543 void cblas_ztrsm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
544 CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA,
545 CBLAS_DIAG Diag,
const int M,
const int N,
546 const void *alpha,
const void *A,
const int lda,
547 void *B,
const int ldb);
553 void cblas_chemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
554 CBLAS_UPLO Uplo,
const int M,
const int N,
555 const void *alpha,
const void *A,
const int lda,
556 const void *B,
const int ldb,
const void *beta,
557 void *C,
const int ldc);
558 void cblas_cherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
559 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
560 const float alpha,
const void *A,
const int lda,
561 const float beta,
void *C,
const int ldc);
562 void cblas_cher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
563 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
564 const void *alpha,
const void *A,
const int lda,
565 const void *B,
const int ldb,
const float beta,
566 void *C,
const int ldc);
568 void cblas_zhemm(CBLAS_LAYOUT layout, CBLAS_SIDE Side,
569 CBLAS_UPLO Uplo,
const int M,
const int N,
570 const void *alpha,
const void *A,
const int lda,
571 const void *B,
const int ldb,
const void *beta,
572 void *C,
const int ldc);
573 void cblas_zherk(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
574 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
575 const double alpha,
const void *A,
const int lda,
576 const double beta,
void *C,
const int ldc);
577 void cblas_zher2k(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo,
578 CBLAS_TRANSPOSE Trans,
const int N,
const int K,
579 const void *alpha,
const void *A,
const int lda,
580 const void *B,
const int ldb,
const double beta,
581 void *C,
const int ldc);
583 void cblas_xerbla(
int p,
const char *rout,
const char *form, ...);