PLASMA  2.6.0
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
 All Data Structures Functions Variables Groups
core_cblas.h
1 
18 #ifndef _PLASMA_CORE_CBLAS_H_
19 #define _PLASMA_CORE_CBLAS_H_
20 
21 #define COMPLEX
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
30 void CORE_scasum(int storev, PLASMA_enum uplo, int M, int N,
31  const PLASMA_Complex32_t *A, int lda, float *work);
32 void CORE_cbrdalg1( PLASMA_enum uplo,
33  int n,
34  int nb,
35  PLASMA_Complex32_t *A,
36  int lda,
37  PLASMA_Complex32_t *VQ,
38  PLASMA_Complex32_t *TAUQ,
39  PLASMA_Complex32_t *VP,
40  PLASMA_Complex32_t *TAUP,
41  int Vblksiz, int wantz,
42  int i, int sweepid, int m, int grsiz,
43  PLASMA_Complex32_t *work);
44 int CORE_cgbelr(PLASMA_enum uplo, int N,
45  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
46  int st, int ed, int eltsize);
47 int CORE_cgbrce(PLASMA_enum uplo, int N,
48  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
49  int st, int ed, int eltsize);
50 int CORE_cgblrx(PLASMA_enum uplo, int N,
51  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
52  int st, int ed, int eltsize);
53 int CORE_cgeadd(int M, int N, PLASMA_Complex32_t alpha,
54  const PLASMA_Complex32_t *A, int LDA,
55  PLASMA_Complex32_t *B, int LDB);
56 int CORE_cgelqt(int M, int N, int IB,
57  PLASMA_Complex32_t *A, int LDA,
58  PLASMA_Complex32_t *T, int LDT,
59  PLASMA_Complex32_t *TAU,
60  PLASMA_Complex32_t *WORK);
61 void CORE_cgemm(PLASMA_enum transA, PLASMA_enum transB,
62  int M, int N, int K,
63  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
64  const PLASMA_Complex32_t *B, int LDB,
65  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC);
66 void CORE_cgemv(PLASMA_enum trans, int M, int N,
67  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
68  const PLASMA_Complex32_t *x, int incx,
69  PLASMA_Complex32_t beta, PLASMA_Complex32_t *y, int incy);
70 void CORE_cgeqp3_init( int n, int *jpvt );
71 void CORE_cgeqp3_larfg( PLASMA_desc A, int ii, int jj, int i, int j,
72  PLASMA_Complex32_t *tau, PLASMA_Complex32_t *beta );
73 void CORE_cgeqp3_norms( PLASMA_desc A, int ioff, int joff, float *norms1, float *norms2 );
74 void CORE_cgeqp3_pivot( PLASMA_desc A, PLASMA_Complex32_t *F, int ldf,
75  int jj, int k, int *jpvt,
76  float *norms1, float *norms2, int *info );
77 int CORE_cgeqp3_tntpiv(int m, int n,
78  PLASMA_Complex32_t *A, int lda,
79  int *IPIV, PLASMA_Complex32_t *tau,
80  int *iwork);
81 void CORE_cgeqp3_update( const PLASMA_Complex32_t *Ajj, int lda1,
82  PLASMA_Complex32_t *Ajk, int lda2,
83  const PLASMA_Complex32_t *Fk, int ldf,
84  int joff, int k, int koff, int nb,
85  float *norms1, float *norms2,
86  int *info );
87 int CORE_cgeqrt(int M, int N, int IB,
88  PLASMA_Complex32_t *A, int LDA,
89  PLASMA_Complex32_t *T, int LDT,
90  PLASMA_Complex32_t *TAU, PLASMA_Complex32_t *WORK);
91 int CORE_cgessm(int M, int N, int K, int IB,
92  const int *IPIV,
93  const PLASMA_Complex32_t *L, int LDL,
94  PLASMA_Complex32_t *A, int LDA);
95 int CORE_cgessq(int M, int N,
96  const PLASMA_Complex32_t *A, int LDA,
97  float *scale, float *sumsq);
98 int CORE_cgetf2_nopiv(int m, int n,
99  PLASMA_Complex32_t *A, int lda);
100 int CORE_cgetrf(int M, int N,
101  PLASMA_Complex32_t *A, int LDA,
102  int *IPIV, int *INFO);
103 int CORE_cgetrf_incpiv(int M, int N, int IB,
104  PLASMA_Complex32_t *A, int LDA,
105  int *IPIV, int *INFO);
106 int CORE_cgetrf_nopiv(int m, int n, int ib,
107  PLASMA_Complex32_t *A, int lda);
108 int CORE_cgetrf_reclap(int M, int N,
109  PLASMA_Complex32_t *A, int LDA,
110  int *IPIV, int *info);
111 void CORE_cgetrf_reclap_init(void);
112 int CORE_cgetrf_rectil(const PLASMA_desc A, int *IPIV, int *info);
113 void CORE_cgetrf_rectil_init(void);
114 void CORE_cgetrip(int m, int n, PLASMA_Complex32_t *A,
115  PLASMA_Complex32_t *work);
116 int CORE_chbelr(PLASMA_enum uplo, int N,
117  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
118  int st, int ed, int eltsize);
119 int CORE_chblrx(PLASMA_enum uplo, int N,
120  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
121  int st, int ed, int eltsize);
122 int CORE_chbrce(PLASMA_enum uplo, int N,
123  PLASMA_desc *A, PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
124  int st, int ed, int eltsize);
125 void CORE_chbtype1cb(int N, int NB,
126  PLASMA_Complex32_t *A, int LDA,
127  PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
128  int st, int ed, int sweep, int Vblksiz, int WANTZ,
129  PLASMA_Complex32_t *WORK);
130 void CORE_chbtype2cb(int N, int NB,
131  PLASMA_Complex32_t *A, int LDA,
132  PLASMA_Complex32_t *V, PLASMA_Complex32_t *TAU,
133  int st, int ed, int sweep, int Vblksiz, int WANTZ,
134  PLASMA_Complex32_t *WORK);
135 void CORE_chbtype3cb(int N, int NB,
136  PLASMA_Complex32_t *A, int LDA,
137  const PLASMA_Complex32_t *V, const PLASMA_Complex32_t *TAU,
138  int st, int ed, int sweep, int Vblksiz, int WANTZ,
139  PLASMA_Complex32_t *WORK);
140 void CORE_cgbtype1cb(PLASMA_enum uplo, int N, int NB,
141  PLASMA_Complex32_t *A, int LDA,
142  PLASMA_Complex32_t *VQ, PLASMA_Complex32_t *TAUQ,
143  PLASMA_Complex32_t *VP, PLASMA_Complex32_t *TAUP,
144  int st, int ed, int sweep, int Vblksiz, int WANTZ,
145  PLASMA_Complex32_t *WORK);
146 void CORE_cgbtype2cb(PLASMA_enum uplo, int N, int NB,
147  PLASMA_Complex32_t *A, int LDA,
148  PLASMA_Complex32_t *VQ, PLASMA_Complex32_t *TAUQ,
149  PLASMA_Complex32_t *VP, PLASMA_Complex32_t *TAUP,
150  int st, int ed, int sweep, int Vblksiz, int WANTZ,
151  PLASMA_Complex32_t *WORK);
152 void CORE_cgbtype3cb(PLASMA_enum uplo, int N, int NB,
153  PLASMA_Complex32_t *A, int LDA,
154  PLASMA_Complex32_t *VQ, PLASMA_Complex32_t *TAUQ,
155  PLASMA_Complex32_t *VP, PLASMA_Complex32_t *TAUP,
156  int st, int ed, int sweep, int Vblksiz, int WANTZ,
157  PLASMA_Complex32_t *WORK);
158 void CORE_chegst(int itype, PLASMA_enum uplo, int N,
159  PLASMA_Complex32_t *A, int LDA,
160  PLASMA_Complex32_t *B, int LDB, int *INFO);
161 #ifdef COMPLEX
162 void CORE_chemm(PLASMA_enum side, PLASMA_enum uplo,
163  int M, int N,
164  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
165  const PLASMA_Complex32_t *B, int LDB,
166  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC);
167 void CORE_cherk(PLASMA_enum uplo, PLASMA_enum trans,
168  int N, int K,
169  float alpha, const PLASMA_Complex32_t *A, int LDA,
170  float beta, PLASMA_Complex32_t *C, int LDC);
171 void CORE_cher2k(PLASMA_enum uplo, PLASMA_enum trans,
172  int N, int K,
173  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
174  const PLASMA_Complex32_t *B, int LDB,
175  float beta, PLASMA_Complex32_t *C, int LDC);
176 int CORE_chessq(PLASMA_enum uplo, int N,
177  const PLASMA_Complex32_t *A, int LDA,
178  float *scale, float *sumsq);
179 #endif
180 int CORE_cherfb(PLASMA_enum uplo, int N, int K, int IB, int NB,
181  const PLASMA_Complex32_t *A, int LDA,
182  const PLASMA_Complex32_t *T, int LDT,
183  PLASMA_Complex32_t *C, int LDC,
184  PLASMA_Complex32_t *WORK, int LDWORK);
185 void CORE_clacpy(PLASMA_enum uplo, int M, int N,
186  const PLASMA_Complex32_t *A, int LDA,
187  PLASMA_Complex32_t *B, int LDB);
188 int CORE_clacpy_pivot( const PLASMA_desc descA,
189  PLASMA_enum direct,
190  int k1, int k2, const int *ipiv,
191  int *rankin, int *rankout,
192  PLASMA_Complex32_t *A, int lda,
193  int init);
194 void CORE_clange(int norm, int M, int N,
195  const PLASMA_Complex32_t *A, int LDA,
196  float *work, float *normA);
197 #ifdef COMPLEX
198 void CORE_clanhe(int norm, PLASMA_enum uplo, int N,
199  const PLASMA_Complex32_t *A, int LDA,
200  float *work, float *normA);
201 #endif
202 void CORE_clansy(int norm, PLASMA_enum uplo, int N,
203  const PLASMA_Complex32_t *A, int LDA,
204  float *work, float *normA);
205 int CORE_clarfb_gemm(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
206  int M, int N, int K,
207  const PLASMA_Complex32_t *V, int LDV,
208  const PLASMA_Complex32_t *T, int LDT,
209  PLASMA_Complex32_t *C, int LDC,
210  PLASMA_Complex32_t *WORK, int LDWORK);
211 int CORE_clarfx2(PLASMA_enum side, int N,
212  PLASMA_Complex32_t V,
213  PLASMA_Complex32_t TAU,
214  PLASMA_Complex32_t *C1, int LDC1,
215  PLASMA_Complex32_t *C2, int LDC2);
216 int CORE_clarfx2c(PLASMA_enum uplo,
217  PLASMA_Complex32_t V,
218  PLASMA_Complex32_t TAU,
219  PLASMA_Complex32_t *C1,
220  PLASMA_Complex32_t *C2,
221  PLASMA_Complex32_t *C3);
222 int CORE_clarfx2ce(PLASMA_enum uplo,
223  PLASMA_Complex32_t *V,
224  PLASMA_Complex32_t *TAU,
225  PLASMA_Complex32_t *C1,
226  PLASMA_Complex32_t *C2,
227  PLASMA_Complex32_t *C3);
228 void CORE_clarfy(int N,
229  PLASMA_Complex32_t *A, int LDA,
230  const PLASMA_Complex32_t *V,
231  const PLASMA_Complex32_t *TAU,
232  PLASMA_Complex32_t *WORK);
233 void CORE_claset(PLASMA_enum uplo, int n1, int n2,
234  PLASMA_Complex32_t alpha, PLASMA_Complex32_t beta,
235  PLASMA_Complex32_t *tileA, int ldtilea);
236 void CORE_claset2(PLASMA_enum uplo, int n1, int n2, PLASMA_Complex32_t alpha,
237  PLASMA_Complex32_t *tileA, int ldtilea);
238 void CORE_claswp(int N, PLASMA_Complex32_t *A, int LDA,
239  int I1, int I2, const int *IPIV, int INC);
240 int CORE_claswp_ontile( PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
241 int CORE_claswpc_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc);
242 int CORE_clatro(PLASMA_enum uplo, PLASMA_enum trans,
243  int M, int N,
244  const PLASMA_Complex32_t *A, int LDA,
245  PLASMA_Complex32_t *B, int LDB);
246 void CORE_clauum(PLASMA_enum uplo, int N, PLASMA_Complex32_t *A, int LDA);
247 int CORE_cpamm(int op, PLASMA_enum side, PLASMA_enum storev,
248  int M, int N, int K, int L,
249  const PLASMA_Complex32_t *A1, int LDA1,
250  PLASMA_Complex32_t *A2, int LDA2,
251  const PLASMA_Complex32_t *V, int LDV,
252  PLASMA_Complex32_t *W, int LDW);
253 int CORE_cparfb(PLASMA_enum side, PLASMA_enum trans, PLASMA_enum direct, PLASMA_enum storev,
254  int M1, int N1, int M2, int N2, int K, int L,
255  PLASMA_Complex32_t *A1, int LDA1,
256  PLASMA_Complex32_t *A2, int LDA2,
257  const PLASMA_Complex32_t *V, int LDV,
258  const PLASMA_Complex32_t *T, int LDT,
259  PLASMA_Complex32_t *WORK, int LDWORK);
260 int CORE_cpemv(PLASMA_enum trans, PLASMA_enum storev,
261  int M, int N, int L,
262  PLASMA_Complex32_t ALPHA,
263  const PLASMA_Complex32_t *A, int LDA,
264  const PLASMA_Complex32_t *X, int INCX,
265  PLASMA_Complex32_t BETA,
266  PLASMA_Complex32_t *Y, int INCY,
267  PLASMA_Complex32_t *WORK);
268 void CORE_cplghe(float bump, int m, int n, PLASMA_Complex32_t *A, int lda,
269  int bigM, int m0, int n0, unsigned long long int seed );
270 void CORE_cplgsy(PLASMA_Complex32_t bump, int m, int n, PLASMA_Complex32_t *A, int lda,
271  int bigM, int m0, int n0, unsigned long long int seed );
272 void CORE_cplrnt(int m, int n, PLASMA_Complex32_t *A, int lda,
273  int bigM, int m0, int n0, unsigned long long int seed );
274 int CORE_cpltmg(PLASMA_enum mtxtype, int m, int n, PLASMA_Complex32_t *A, int lda,
275  int gM, int gN, int m0, int n0, unsigned long long int seed );
276 int CORE_cpltmg_chebvand( int M, int N, PLASMA_Complex32_t *A, int LDA,
277  int gN, int m0, int n0,
278  PLASMA_Complex32_t *W );
279 int CORE_cpltmg_circul( int M, int N, PLASMA_Complex32_t *A, int LDA,
280  int gM, int m0, int n0,
281  const PLASMA_Complex32_t *V );
282 void CORE_cpltmg_condexq( int M, int N, PLASMA_Complex32_t *Q, int LDQ );
283 void CORE_cpltmg_fiedler(int m, int n,
284  const PLASMA_Complex32_t *X, int incX,
285  const PLASMA_Complex32_t *Y, int incY,
286  PLASMA_Complex32_t *A, int lda);
287 int CORE_cpltmg_hankel( PLASMA_enum uplo, int M, int N, PLASMA_Complex32_t *A, int LDA,
288  int m0, int n0, int nb,
289  const PLASMA_Complex32_t *V1,
290  const PLASMA_Complex32_t *V2 );
291 void CORE_cpltmg_toeppd1( int gM, int m0, int M, PLASMA_Complex32_t *W,
292  unsigned long long int seed );
293 void CORE_cpltmg_toeppd2( int M, int N, int K, int m0, int n0,
294  const PLASMA_Complex32_t *W,
295  PLASMA_Complex32_t *A, int LDA );
296 void CORE_cpotrf(PLASMA_enum uplo, int N, PLASMA_Complex32_t *A, int LDA, int *INFO);
297 void CORE_csetvar(const PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *x);
298 void CORE_cshift(int s, int m, int n, int L,
299  PLASMA_Complex32_t *A);
300 void CORE_cshiftw(int s, int cl, int m, int n, int L,
301  PLASMA_Complex32_t *A, PLASMA_Complex32_t *W);
302 int CORE_cssssm(int M1, int N1, int M2, int N2, int K, int IB,
303  PLASMA_Complex32_t *A1, int LDA1,
304  PLASMA_Complex32_t *A2, int LDA2,
305  const PLASMA_Complex32_t *L1, int LDL1,
306  const PLASMA_Complex32_t *L2, int LDL2,
307  const int *IPIV);
308 void CORE_csymm(PLASMA_enum side, PLASMA_enum uplo,
309  int M, int N,
310  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
311  const PLASMA_Complex32_t *B, int LDB,
312  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC);
313 void CORE_csyrk(PLASMA_enum uplo, PLASMA_enum trans,
314  int N, int K,
315  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
316  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC);
317 void CORE_csyr2k(PLASMA_enum uplo, PLASMA_enum trans,
318  int N, int K,
319  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
320  const PLASMA_Complex32_t *B, int LDB,
321  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int LDC);
322 int CORE_csyssq(PLASMA_enum uplo, int N,
323  const PLASMA_Complex32_t *A, int LDA,
324  float *scale, float *sumsq);
325 void CORE_cswpab(int i, int n1, int n2,
326  PLASMA_Complex32_t *A, PLASMA_Complex32_t *work);
327 int CORE_cswptr_ontile(PLASMA_desc descA, int i1, int i2, const int *ipiv, int inc,
328  const PLASMA_Complex32_t *Akk, int ldak);
329 void CORE_ctrdalg1(int n,
330  int nb,
331  PLASMA_Complex32_t *A,
332  int lda,
333  PLASMA_Complex32_t *V,
334  PLASMA_Complex32_t *TAU,
335  int Vblksiz, int wantz,
336  int i, int sweepid, int m, int grsiz,
337  PLASMA_Complex32_t *work);
338 void CORE_ctrmm(PLASMA_enum side, PLASMA_enum uplo,
339  PLASMA_enum transA, PLASMA_enum diag,
340  int M, int N,
341  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
342  PLASMA_Complex32_t *B, int LDB);
343 void CORE_ctrsm(PLASMA_enum side, PLASMA_enum uplo,
344  PLASMA_enum transA, PLASMA_enum diag,
345  int M, int N,
346  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int LDA,
347  PLASMA_Complex32_t *B, int LDB);
348 void CORE_ctrtri(PLASMA_enum uplo, PLASMA_enum diag, int N,
349  PLASMA_Complex32_t *A, int LDA, int *info);
350 int CORE_ctslqt(int M, int N, int IB,
351  PLASMA_Complex32_t *A1, int LDA1,
352  PLASMA_Complex32_t *A2, int LDA2,
353  PLASMA_Complex32_t *T, int LDT,
354  PLASMA_Complex32_t *TAU, PLASMA_Complex32_t *WORK);
355 int CORE_ctsmlq(PLASMA_enum side, PLASMA_enum trans,
356  int M1, int N1, int M2, int N2, int K, int IB,
357  PLASMA_Complex32_t *A1, int LDA1,
358  PLASMA_Complex32_t *A2, int LDA2,
359  const PLASMA_Complex32_t *V, int LDV,
360  const PLASMA_Complex32_t *T, int LDT,
361  PLASMA_Complex32_t *WORK, int LDWORK);
362 int CORE_ctsmlq_corner( int m1, int n1, int m2, int n2, int m3, int n3,
363  int k, int ib, int nb,
364  PLASMA_Complex32_t *A1, int lda1,
365  PLASMA_Complex32_t *A2, int lda2,
366  PLASMA_Complex32_t *A3, int lda3,
367  const PLASMA_Complex32_t *V, int ldv,
368  const PLASMA_Complex32_t *T, int ldt,
369  PLASMA_Complex32_t *WORK, int ldwork);
370 int CORE_ctsmlq_hetra1( PLASMA_enum side, PLASMA_enum trans,
371  int m1, int n1, int m2, int n2,
372  int k, int ib,
373  PLASMA_Complex32_t *A1, int lda1,
374  PLASMA_Complex32_t *A2, int lda2,
375  const PLASMA_Complex32_t *V, int ldv,
376  const PLASMA_Complex32_t *T, int ldt,
377  PLASMA_Complex32_t *WORK, int ldwork);
378 int CORE_ctsmqr(PLASMA_enum side, PLASMA_enum trans,
379  int M1, int N1, int M2, int N2, int K, int IB,
380  PLASMA_Complex32_t *A1, int LDA1,
381  PLASMA_Complex32_t *A2, int LDA2,
382  const PLASMA_Complex32_t *V, int LDV,
383  const PLASMA_Complex32_t *T, int LDT,
384  PLASMA_Complex32_t *WORK, int LDWORK);
385 int CORE_ctsmqr_corner( int m1, int n1, int m2, int n2, int m3, int n3,
386  int k, int ib, int nb,
387  PLASMA_Complex32_t *A1, int lda1,
388  PLASMA_Complex32_t *A2, int lda2,
389  PLASMA_Complex32_t *A3, int lda3,
390  const PLASMA_Complex32_t *V, int ldv,
391  const PLASMA_Complex32_t *T, int ldt,
392  PLASMA_Complex32_t *WORK, int ldwork);
393 int CORE_ctsmqr_hetra1( PLASMA_enum side, PLASMA_enum trans,
394  int m1, int n1, int m2, int n2,
395  int k, int ib,
396  PLASMA_Complex32_t *A1, int lda1,
397  PLASMA_Complex32_t *A2, int lda2,
398  const PLASMA_Complex32_t *V, int ldv,
399  const PLASMA_Complex32_t *T, int ldt,
400  PLASMA_Complex32_t *WORK, int ldwork);
401 int CORE_ctsqrt(int M, int N, int IB,
402  PLASMA_Complex32_t *A1, int LDA1,
403  PLASMA_Complex32_t *A2, int LDA2,
404  PLASMA_Complex32_t *T, int LDT,
405  PLASMA_Complex32_t *TAU, PLASMA_Complex32_t *WORK);
406 int CORE_ctstrf(int M, int N, int IB, int NB,
407  PLASMA_Complex32_t *U, int LDU,
408  PLASMA_Complex32_t *A, int LDA,
409  PLASMA_Complex32_t *L, int LDL,
410  int *IPIV, PLASMA_Complex32_t *WORK,
411  int LDWORK, int *INFO);
412 int CORE_cttmqr(PLASMA_enum side, PLASMA_enum trans,
413  int M1, int N1, int M2, int N2, int K, int IB,
414  PLASMA_Complex32_t *A1, int LDA1,
415  PLASMA_Complex32_t *A2, int LDA2,
416  const PLASMA_Complex32_t *V, int LDV,
417  const PLASMA_Complex32_t *T, int LDT,
418  PLASMA_Complex32_t *WORK, int LDWORK);
419 int CORE_cttqrt(int M, int N, int IB,
420  PLASMA_Complex32_t *A1, int LDA1,
421  PLASMA_Complex32_t *A2, int LDA2,
422  PLASMA_Complex32_t *T, int LDT,
423  PLASMA_Complex32_t *TAU,
424  PLASMA_Complex32_t *WORK);
425 int CORE_cttmlq(PLASMA_enum side, PLASMA_enum trans,
426  int M1, int N1, int M2, int N2, int K, int IB,
427  PLASMA_Complex32_t *A1, int LDA1,
428  PLASMA_Complex32_t *A2, int LDA2,
429  const PLASMA_Complex32_t *V, int LDV,
430  const PLASMA_Complex32_t *T, int LDT,
431  PLASMA_Complex32_t *WORK, int LDWORK);
432 int CORE_cttlqt(int M, int N, int IB,
433  PLASMA_Complex32_t *A1, int LDA1,
434  PLASMA_Complex32_t *A2, int LDA2,
435  PLASMA_Complex32_t *T, int LDT,
436  PLASMA_Complex32_t *TAU,
437  PLASMA_Complex32_t *WORK);
438 int CORE_cunmlq(PLASMA_enum side, PLASMA_enum trans,
439  int M, int N, int IB, int K,
440  const PLASMA_Complex32_t *V, int LDV,
441  const PLASMA_Complex32_t *T, int LDT,
442  PLASMA_Complex32_t *C, int LDC,
443  PLASMA_Complex32_t *WORK, int LDWORK);
444 int CORE_cunmqr(PLASMA_enum side, PLASMA_enum trans,
445  int M, int N, int K, int IB,
446  const PLASMA_Complex32_t *V, int LDV,
447  const PLASMA_Complex32_t *T, int LDT,
448  PLASMA_Complex32_t *C, int LDC,
449  PLASMA_Complex32_t *WORK, int LDWORK);
450 
451 #if defined(QUARK_H)
452 
455 void QUARK_CORE_scasum(Quark *quark, Quark_Task_Flags *task_flags,
456  PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
457  const PLASMA_Complex32_t *A, int lda, int szeA,
458  float *work, int szeW);
459 void QUARK_CORE_scasum_f1(Quark *quark, Quark_Task_Flags *task_flags,
460  PLASMA_enum storev, PLASMA_enum uplo, int m, int n,
461  const PLASMA_Complex32_t *A, int lda, int szeA,
462  float *work, int szeW,
463  float *fake, int szeF);
464 void QUARK_CORE_cgeadd(Quark *quark, Quark_Task_Flags *task_flags,
465  int m, int n, int nb, PLASMA_Complex32_t alpha,
466  const PLASMA_Complex32_t *A, int lda,
467  PLASMA_Complex32_t *B, int ldb);
468 void QUARK_CORE_cbrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
469  PLASMA_enum uplo,
470  int n, int nb,
471  PLASMA_Complex32_t *A,
472  int lda,
473  PLASMA_Complex32_t *VQ,
474  PLASMA_Complex32_t *TAUQ,
475  PLASMA_Complex32_t *VP,
476  PLASMA_Complex32_t *TAUP,
477  int Vblksiz, int wantz,
478  int i, int sweepid, int m, int grsiz,
479  int *PCOL, int *ACOL, int *MCOL);
480 void QUARK_CORE_cgelqt(Quark *quark, Quark_Task_Flags *task_flags,
481  int m, int n, int ib, int nb,
482  PLASMA_Complex32_t *A, int lda,
483  PLASMA_Complex32_t *T, int ldt);
484 void QUARK_CORE_cgemm(Quark *quark, Quark_Task_Flags *task_flags,
485  PLASMA_enum transA, PLASMA_enum transB,
486  int m, int n, int k, int nb,
487  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
488  const PLASMA_Complex32_t *B, int ldb,
489  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
490 void QUARK_CORE_cgemm2( Quark *quark, Quark_Task_Flags *task_flags,
491  PLASMA_enum transA, PLASMA_enum transB,
492  int m, int n, int k, int nb,
493  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
494  const PLASMA_Complex32_t *B, int ldb,
495  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
496 void QUARK_CORE_cgemm_f2(Quark *quark, Quark_Task_Flags *task_flags,
497  PLASMA_enum transA, PLASMA_enum transB,
498  int m, int n, int k, int nb,
499  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
500  const PLASMA_Complex32_t *B, int ldb,
501  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc,
502  PLASMA_Complex32_t *fake1, int szefake1, int flag1,
503  PLASMA_Complex32_t *fake2, int szefake2, int flag2);
504 void QUARK_CORE_cgemm_p2(Quark *quark, Quark_Task_Flags *task_flags,
505  PLASMA_enum transA, PLASMA_enum transB,
506  int m, int n, int k, int nb,
507  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
508  const PLASMA_Complex32_t **B, int ldb,
509  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
510 void QUARK_CORE_cgemm_p2f1(Quark *quark, Quark_Task_Flags *task_flags,
511  PLASMA_enum transA, PLASMA_enum transB,
512  int m, int n, int k, int nb,
513  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
514  const PLASMA_Complex32_t **B, int ldb,
515  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc,
516  PLASMA_Complex32_t *fake1, int szefake1, int flag1);
517 void QUARK_CORE_cgemm_p3(Quark *quark, Quark_Task_Flags *task_flags,
518  PLASMA_enum transA, PLASMA_enum transB,
519  int m, int n, int k, int nb,
520  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
521  const PLASMA_Complex32_t *B, int ldb,
522  PLASMA_Complex32_t beta, PLASMA_Complex32_t **C, int ldc);
523 void QUARK_CORE_cgemm_tile(Quark *quark, Quark_Task_Flags *task_flags,
524  PLASMA_enum transA, PLASMA_enum transB,
525  int m, int n, int k, int nb,
526  const PLASMA_Complex32_t *alpha, const PLASMA_Complex32_t *A, int lda,
527  const PLASMA_Complex32_t *B, int ldb,
528  const PLASMA_Complex32_t *beta, PLASMA_Complex32_t *C, int ldc,
529  const PLASMA_Complex32_t *Alock,
530  const PLASMA_Complex32_t *Block,
531  const PLASMA_Complex32_t *Clock);
532 void QUARK_CORE_cgemv(Quark *quark, Quark_Task_Flags *task_flags,
533  PLASMA_enum trans, int m, int n,
534  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
535  const PLASMA_Complex32_t *x, int incx,
536  PLASMA_Complex32_t beta, PLASMA_Complex32_t *y, int incy);
537 void QUARK_CORE_cgemv_tile(Quark *quark, Quark_Task_Flags *task_flags,
538  PLASMA_enum trans,
539  int m, int n,
540  const PLASMA_Complex32_t *alpha, const PLASMA_Complex32_t *A, int lda,
541  const PLASMA_Complex32_t *x, int incx,
542  const PLASMA_Complex32_t *beta, PLASMA_Complex32_t *y, int incy,
543  const PLASMA_Complex32_t *Alock,
544  const PLASMA_Complex32_t *xlock,
545  const PLASMA_Complex32_t *ylock);
546 void QUARK_CORE_cgeqp3_init( Quark *quark, Quark_Task_Flags *task_flags,
547  int n, int *jpvt );
548 void QUARK_CORE_cgeqp3_larfg(Quark *quark, Quark_Task_Flags *task_flags,
549  PLASMA_desc A, int ii, int jj, int i, int j,
550  PLASMA_Complex32_t *tau, PLASMA_Complex32_t *beta );
551 void QUARK_CORE_cgeqp3_norms( Quark *quark, Quark_Task_Flags *task_flags,
552  PLASMA_desc A, int ioff, int joff, float *norms1, float *norms2 );
553 void QUARK_CORE_cgeqp3_pivot( Quark *quark, Quark_Task_Flags *task_flags,
554  PLASMA_desc A,
555  PLASMA_Complex32_t *F, int ldf,
556  int jj, int k, int *jpvt,
557  float *norms1, float *norms2, int *info );
558 void QUARK_CORE_cgeqp3_tntpiv(Quark *quark, Quark_Task_Flags *task_flags,
559  int m, int n, int nb,
560  PLASMA_Complex32_t *A, int lda,
561  int *IPIV,
562  PLASMA_sequence *sequence, PLASMA_request *request,
563  PLASMA_bool check_info, int iinfo);
564 void QUARK_CORE_cgeqp3_update( Quark *quark, Quark_Task_Flags *task_flags,
565  PLASMA_Complex32_t *Ajj, int lda1,
566  PLASMA_Complex32_t *Ajk, int lda2,
567  PLASMA_Complex32_t *Fk, int ldf,
568  int joff, int k, int koff, int nb,
569  float *norms1, float *norms2, int *info );
570 void QUARK_CORE_cgeqrt(Quark *quark, Quark_Task_Flags *task_flags,
571  int m, int n, int ib, int nb,
572  PLASMA_Complex32_t *A, int lda,
573  PLASMA_Complex32_t *T, int ldt);
574 void QUARK_CORE_cgessm(Quark *quark, Quark_Task_Flags *task_flags,
575  int m, int n, int k, int ib, int nb,
576  const int *IPIV,
577  const PLASMA_Complex32_t *L, int ldl,
578  PLASMA_Complex32_t *A, int lda);
579 void QUARK_CORE_cgessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
580  int m, int n, const PLASMA_Complex32_t *A, int lda,
581  float *scale, float *sumsq,
582  float *fake, int szeF, int paramF );
583 void QUARK_CORE_cgetrf(Quark *quark, Quark_Task_Flags *task_flags,
584  int m, int n, int nb,
585  PLASMA_Complex32_t *A, int lda,
586  int *IPIV,
587  PLASMA_sequence *sequence, PLASMA_request *request,
588  PLASMA_bool check_info, int iinfo);
589 void QUARK_CORE_cgetrf_incpiv(Quark *quark, Quark_Task_Flags *task_flags,
590  int m, int n, int ib, int nb,
591  PLASMA_Complex32_t *A, int lda,
592  int *IPIV,
593  PLASMA_sequence *sequence, PLASMA_request *request,
594  PLASMA_bool check_info, int iinfo);
595 void QUARK_CORE_cgetrf_nopiv(Quark *quark, Quark_Task_Flags *task_flags,
596  int m, int n, int ib, int nb,
597  PLASMA_Complex32_t *A, int lda,
598  PLASMA_sequence *sequence, PLASMA_request *request,
599  int iinfo);
600 void QUARK_CORE_cgetrf_reclap(Quark *quark, Quark_Task_Flags *task_flags,
601  int m, int n, int nb,
602  PLASMA_Complex32_t *A, int lda,
603  int *IPIV,
604  PLASMA_sequence *sequence, PLASMA_request *request,
605  PLASMA_bool check_info, int iinfo,
606  int nbthread);
607 void QUARK_CORE_cgetrf_rectil(Quark *quark, Quark_Task_Flags *task_flags,
608  PLASMA_desc A, PLASMA_Complex32_t *Amn, int size,
609  int *IPIV,
610  PLASMA_sequence *sequence, PLASMA_request *request,
611  PLASMA_bool check_info, int iinfo,
612  int nbthread);
613 void QUARK_CORE_cgetrip(Quark *quark, Quark_Task_Flags *task_flags,
614  int m, int n, PLASMA_Complex32_t *A, int szeA);
615 void QUARK_CORE_cgetrip_f1(Quark *quark, Quark_Task_Flags *task_flags,
616  int m, int n, PLASMA_Complex32_t *A, int szeA,
617  PLASMA_Complex32_t *fake, int szeF, int paramF);
618 void QUARK_CORE_cgetrip_f2(Quark *quark, Quark_Task_Flags *task_flags,
619  int m, int n, PLASMA_Complex32_t *A, int szeA,
620  PLASMA_Complex32_t *fake1, int szeF1, int paramF1,
621  PLASMA_Complex32_t *fake2, int szeF2, int paramF2);
622 void QUARK_CORE_chemm(Quark *quark, Quark_Task_Flags *task_flags,
623  PLASMA_enum side, PLASMA_enum uplo,
624  int m, int n, int nb,
625  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
626  const PLASMA_Complex32_t *B, int ldb,
627  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
628 void QUARK_CORE_chegst(Quark *quark, Quark_Task_Flags *task_flags,
629  int itype, PLASMA_enum uplo, int N,
630  PLASMA_Complex32_t *A, int LDA,
631  PLASMA_Complex32_t *B, int LDB,
632  PLASMA_sequence *sequence, PLASMA_request *request,
633  int iinfo);
634 void QUARK_CORE_cherk(Quark *quark, Quark_Task_Flags *task_flags,
635  PLASMA_enum uplo, PLASMA_enum trans,
636  int n, int k, int nb,
637  float alpha, const PLASMA_Complex32_t *A, int lda,
638  float beta, PLASMA_Complex32_t *C, int ldc);
639 void QUARK_CORE_cher2k(Quark *quark, Quark_Task_Flags *task_flags,
640  PLASMA_enum uplo, PLASMA_enum trans,
641  int n, int k, int nb,
642  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
643  const PLASMA_Complex32_t *B, int LDB,
644  float beta, PLASMA_Complex32_t *C, int ldc);
645 void QUARK_CORE_cherfb(Quark *quark, Quark_Task_Flags *task_flags,
646  PLASMA_enum uplo,
647  int n, int k, int ib, int nb,
648  const PLASMA_Complex32_t *A, int lda,
649  const PLASMA_Complex32_t *T, int ldt,
650  PLASMA_Complex32_t *C, int ldc);
651 void QUARK_CORE_chessq_f1( Quark *quark, Quark_Task_Flags *task_flags,
652  PLASMA_enum uplo, int n, const PLASMA_Complex32_t *A, int lda,
653  float *scale, float *sumsq,
654  float *fake, int szeF, int paramF );
655 void QUARK_CORE_clacpy(Quark *quark, Quark_Task_Flags *task_flags,
656  PLASMA_enum uplo, int m, int n, int mb,
657  const PLASMA_Complex32_t *A, int lda,
658  PLASMA_Complex32_t *B, int ldb);
659 void QUARK_CORE_clacpy_f1(Quark *quark, Quark_Task_Flags *task_flags,
660  PLASMA_enum uplo, int m, int n, int nb,
661  const PLASMA_Complex32_t *A, int lda,
662  PLASMA_Complex32_t *B, int ldb,
663  PLASMA_Complex32_t *fake1, int szefake1, int flag1);
664 void QUARK_CORE_clacpy_pivot(Quark *quark, Quark_Task_Flags *task_flags,
665  const PLASMA_desc descA,
666  PLASMA_enum direct,
667  int k1, int k2, const int *ipiv,
668  int *rankin, int *rankout,
669  PLASMA_Complex32_t *A, int lda,
670  int pos, int init);
671 void QUARK_CORE_clange(Quark *quark, Quark_Task_Flags *task_flags,
672  int norm, int M, int N,
673  const PLASMA_Complex32_t *A, int LDA, int szeA,
674  int szeW, float *result);
675 void QUARK_CORE_clange_f1(Quark *quark, Quark_Task_Flags *task_flags,
676  int norm, int M, int N,
677  const PLASMA_Complex32_t *A, int LDA, int szeA,
678  int szeW, float *result,
679  float *fake, int szeF);
680 #ifdef COMPLEX
681 void QUARK_CORE_clanhe(Quark *quark, Quark_Task_Flags *task_flags,
682  int norm, PLASMA_enum uplo, int N,
683  const PLASMA_Complex32_t *A, int LDA, int szeA,
684  int szeW, float *result);
685 void QUARK_CORE_clanhe_f1(Quark *quark, Quark_Task_Flags *task_flags,
686  int norm, PLASMA_enum uplo, int N,
687  const PLASMA_Complex32_t *A, int LDA, int szeA,
688  int szeW, float *result,
689  float *fake, int szeF);
690 #endif
691 void QUARK_CORE_clansy(Quark *quark, Quark_Task_Flags *task_flags,
692  int norm, PLASMA_enum uplo, int N,
693  const PLASMA_Complex32_t *A, int LDA, int szeA,
694  int szeW, float *result);
695 void QUARK_CORE_clansy_f1(Quark *quark, Quark_Task_Flags *task_flags,
696  int norm, PLASMA_enum uplo, int N,
697  const PLASMA_Complex32_t *A, int LDA, int szeA,
698  int szeW, float *result,
699  float *fake, int szeF);
700 void QUARK_CORE_claset(Quark *quark, Quark_Task_Flags *task_flags,
701  PLASMA_enum uplo, int n1, int n2, PLASMA_Complex32_t alpha,
702  PLASMA_Complex32_t beta, PLASMA_Complex32_t *tileA, int ldtilea);
703 void QUARK_CORE_claset2(Quark *quark, Quark_Task_Flags *task_flags,
704  PLASMA_enum uplo, int n1, int n2, PLASMA_Complex32_t alpha,
705  PLASMA_Complex32_t *tileA, int ldtilea);
706 void QUARK_CORE_claswp(Quark *quark, Quark_Task_Flags *task_flags,
707  int n, PLASMA_Complex32_t *A, int lda,
708  int i1, int i2, const int *ipiv, int inc);
709 void QUARK_CORE_claswp_f2(Quark *quark, Quark_Task_Flags *task_flags,
710  int n, PLASMA_Complex32_t *A, int lda,
711  int i1, int i2, const int *ipiv, int inc,
712  PLASMA_Complex32_t *fake1, int szefake1, int flag1,
713  PLASMA_Complex32_t *fake2, int szefake2, int flag2);
714 void QUARK_CORE_claswp_ontile(Quark *quark, Quark_Task_Flags *task_flags,
715  PLASMA_desc descA, PLASMA_Complex32_t *A,
716  int i1, int i2, const int *ipiv, int inc, PLASMA_Complex32_t *fakepanel);
717 void QUARK_CORE_claswp_ontile_f2(Quark *quark, Quark_Task_Flags *task_flags,
718  PLASMA_desc descA, PLASMA_Complex32_t *A,
719  int i1, int i2, const int *ipiv, int inc,
720  PLASMA_Complex32_t *fake1, int szefake1, int flag1,
721  PLASMA_Complex32_t *fake2, int szefake2, int flag2);
722 void QUARK_CORE_claswpc_ontile(Quark *quark, Quark_Task_Flags *task_flags,
723  PLASMA_desc descA, PLASMA_Complex32_t *A,
724  int i1, int i2, const int *ipiv, int inc, PLASMA_Complex32_t *fakepanel);
725 void QUARK_CORE_clatro(Quark *quark, Quark_Task_Flags *task_flags,
726  PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int mb,
727  const PLASMA_Complex32_t *A, int lda,
728  PLASMA_Complex32_t *B, int ldb);
729 void QUARK_CORE_clatro_f1(Quark *quark, Quark_Task_Flags *task_flags,
730  PLASMA_enum uplo, PLASMA_enum trans, int m, int n, int mb,
731  const PLASMA_Complex32_t *A, int lda,
732  PLASMA_Complex32_t *B, int ldb,
733  PLASMA_Complex32_t *fake1, int szefake1, int flag1);
734 void QUARK_CORE_clauum(Quark *quark, Quark_Task_Flags *task_flags,
735  PLASMA_enum uplo, int n, int nb,
736  PLASMA_Complex32_t *A, int lda);
737 void QUARK_CORE_cplghe(Quark *quark, Quark_Task_Flags *task_flags,
738  float bump, int m, int n, PLASMA_Complex32_t *A, int lda,
739  int bigM, int m0, int n0, unsigned long long int seed );
740 void QUARK_CORE_cplgsy(Quark *quark, Quark_Task_Flags *task_flags,
741  PLASMA_Complex32_t bump, int m, int n, PLASMA_Complex32_t *A, int lda,
742  int bigM, int m0, int n0, unsigned long long int seed );
743 void QUARK_CORE_cplrnt(Quark *quark, Quark_Task_Flags *task_flags,
744  int m, int n, PLASMA_Complex32_t *A, int lda,
745  int bigM, int m0, int n0, unsigned long long int seed );
746 void QUARK_CORE_cpltmg(Quark *quark, Quark_Task_Flags *task_flags,
747  PLASMA_enum mtxtype, int m, int n, PLASMA_Complex32_t *A, int lda,
748  int gM, int gN, int m0, int n0, unsigned long long int seed );
749 void QUARK_CORE_cpltmg_chebvand( Quark *quark, Quark_Task_Flags *task_flags,
750  int M, int N, PLASMA_Complex32_t *A, int LDA,
751  int gN, int m0, int n0,
752  PLASMA_Complex32_t *W );
753 void QUARK_CORE_cpltmg_circul( Quark *quark, Quark_Task_Flags *task_flags,
754  int M, int N, PLASMA_Complex32_t *A, int LDA,
755  int gM, int m0, int n0,
756  const PLASMA_Complex32_t *W );
757 void QUARK_CORE_cpltmg_fiedler(Quark *quark, Quark_Task_Flags *task_flags,
758  int m, int n,
759  const PLASMA_Complex32_t *X, int incX,
760  const PLASMA_Complex32_t *Y, int incY,
761  PLASMA_Complex32_t *A, int lda);
762 void QUARK_CORE_cpltmg_hankel( Quark *quark, Quark_Task_Flags *task_flags,
763  PLASMA_enum uplo, int M, int N, PLASMA_Complex32_t *A, int LDA,
764  int m0, int n0, int nb,
765  const PLASMA_Complex32_t *V1,
766  const PLASMA_Complex32_t *V2);
767 void QUARK_CORE_cpltmg_toeppd1(Quark *quark, Quark_Task_Flags *task_flags,
768  int gM, int m0, int M,
769  PLASMA_Complex32_t *W,
770  unsigned long long int seed);
771 void QUARK_CORE_cpltmg_toeppd2(Quark *quark, Quark_Task_Flags *task_flags,
772  int M, int N, int K, int m0, int n0,
773  const PLASMA_Complex32_t *W,
774  PLASMA_Complex32_t *A, int LDA );
775 void QUARK_CORE_cpotrf(Quark *quark, Quark_Task_Flags *task_flags,
776  PLASMA_enum uplo, int n, int nb,
777  PLASMA_Complex32_t *A, int lda,
778  PLASMA_sequence *sequence, PLASMA_request *request,
779  int iinfo);
780 void QUARK_CORE_csetvar(Quark *quark, Quark_Task_Flags *task_flags,
781  const PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *x,
782  PLASMA_Complex32_t *Alock);
783 void QUARK_CORE_cshift( Quark *quark, Quark_Task_Flags *task_flags,
784  int s, int m, int n, int L,
785  PLASMA_Complex32_t *A);
786 void QUARK_CORE_cshiftw(Quark *quark, Quark_Task_Flags *task_flags,
787  int s, int cl, int m, int n, int L,
788  PLASMA_Complex32_t *A, PLASMA_Complex32_t *W);
789 void QUARK_CORE_cssssm(Quark *quark, Quark_Task_Flags *task_flags,
790  int m1, int n1, int m2, int n2, int k, int ib, int nb,
791  PLASMA_Complex32_t *A1, int lda1,
792  PLASMA_Complex32_t *A2, int lda2,
793  const PLASMA_Complex32_t *L1, int ldl1,
794  const PLASMA_Complex32_t *L2, int ldl2,
795  const int *IPIV);
796 void QUARK_CORE_csymm(Quark *quark, Quark_Task_Flags *task_flags,
797  PLASMA_enum side, PLASMA_enum uplo,
798  int m, int n, int nb,
799  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
800  const PLASMA_Complex32_t *B, int ldb,
801  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
802 void QUARK_CORE_csyrk(Quark *quark, Quark_Task_Flags *task_flags,
803  PLASMA_enum uplo, PLASMA_enum trans,
804  int n, int k, int nb,
805  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
806  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
807 void QUARK_CORE_csyr2k(Quark *quark, Quark_Task_Flags *task_flags,
808  PLASMA_enum uplo, PLASMA_enum trans,
809  int n, int k, int nb,
810  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
811  const PLASMA_Complex32_t *B, int LDB,
812  PLASMA_Complex32_t beta, PLASMA_Complex32_t *C, int ldc);
813 void QUARK_CORE_csyssq_f1( Quark *quark, Quark_Task_Flags *task_flags,
814  PLASMA_enum uplo, int n, const PLASMA_Complex32_t *A, int lda,
815  float *scale, float *sumsq,
816  float *fake, int szeF, int paramF );
817 void QUARK_CORE_cswpab(Quark *quark, Quark_Task_Flags *task_flags,
818  int i, int n1, int n2,
819  PLASMA_Complex32_t *A, int szeA);
820 void QUARK_CORE_cswptr_ontile(Quark *quark, Quark_Task_Flags *task_flags,
821  PLASMA_desc descA, PLASMA_Complex32_t *Aij,
822  int i1, int i2, const int *ipiv, int inc,
823  const PLASMA_Complex32_t *Akk, int ldak);
824 void QUARK_CORE_ctrdalg1(Quark *quark, Quark_Task_Flags *task_flags,
825  int n,
826  int nb,
827  PLASMA_Complex32_t *A,
828  int lda,
829  PLASMA_Complex32_t *V,
830  PLASMA_Complex32_t *TAU,
831  int Vblksiz, int wantz,
832  int i, int sweepid, int m, int grsiz,
833  int *PCOL, int *ACOL, int *MCOL);
834 void QUARK_CORE_ctrmm(Quark *quark, Quark_Task_Flags *task_flags,
835  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
836  int m, int n, int nb,
837  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
838  PLASMA_Complex32_t *B, int ldb);
839 void QUARK_CORE_ctrmm_p2(Quark *quark, Quark_Task_Flags *task_flags,
840  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
841  int m, int n, int nb,
842  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
843  PLASMA_Complex32_t **B, int ldb);
844 void QUARK_CORE_ctrsm(Quark *quark, Quark_Task_Flags *task_flags,
845  PLASMA_enum side, PLASMA_enum uplo, PLASMA_enum transA, PLASMA_enum diag,
846  int m, int n, int nb,
847  PLASMA_Complex32_t alpha, const PLASMA_Complex32_t *A, int lda,
848  PLASMA_Complex32_t *B, int ldb);
849 void QUARK_CORE_ctrtri(Quark *quark, Quark_Task_Flags *task_flags,
850  PLASMA_enum uplo, PLASMA_enum diag, int n, int nb,
851  PLASMA_Complex32_t *A, int lda,
852  PLASMA_sequence *sequence, PLASMA_request *request,
853  int iinfo);
854 void QUARK_CORE_ctslqt(Quark *quark, Quark_Task_Flags *task_flags,
855  int m, int n, int ib, int nb,
856  PLASMA_Complex32_t *A1, int lda1,
857  PLASMA_Complex32_t *A2, int lda2,
858  PLASMA_Complex32_t *T, int ldt);
859 void QUARK_CORE_ctsmlq(Quark *quark, Quark_Task_Flags *task_flags,
860  PLASMA_enum side, PLASMA_enum trans,
861  int m1, int n1, int m2, int n2, int k, int ib, int nb,
862  PLASMA_Complex32_t *A1, int lda1,
863  PLASMA_Complex32_t *A2, int lda2,
864  const PLASMA_Complex32_t *V, int ldv,
865  const PLASMA_Complex32_t *T, int ldt);
866 void QUARK_CORE_ctsmlq_hetra1(Quark *quark, Quark_Task_Flags *task_flags,
867  PLASMA_enum side, PLASMA_enum trans,
868  int m1, int n1, int m2, int n2, int k, int ib, int nb,
869  PLASMA_Complex32_t *A1, int lda1,
870  PLASMA_Complex32_t *A2, int lda2,
871  const PLASMA_Complex32_t *V, int ldv,
872  const PLASMA_Complex32_t *T, int ldt);
873 void QUARK_CORE_ctsmlq_corner(Quark *quark, Quark_Task_Flags *task_flags,
874  int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
875  PLASMA_Complex32_t *A1, int lda1,
876  PLASMA_Complex32_t *A2, int lda2,
877  PLASMA_Complex32_t *A3, int lda3,
878  const PLASMA_Complex32_t *V, int ldv,
879  const PLASMA_Complex32_t *T, int ldt);
880 void QUARK_CORE_ctsmqr(Quark *quark, Quark_Task_Flags *task_flags,
881  PLASMA_enum side, PLASMA_enum trans,
882  int m1, int n1, int m2, int n2, int k, int ib, int nb,
883  PLASMA_Complex32_t *A1, int lda1,
884  PLASMA_Complex32_t *A2, int lda2,
885  const PLASMA_Complex32_t *V, int ldv,
886  const PLASMA_Complex32_t *T, int ldt);
887 void QUARK_CORE_ctsmqr_hetra1(Quark *quark, Quark_Task_Flags *task_flags,
888  PLASMA_enum side, PLASMA_enum trans,
889  int m1, int n1, int m2, int n2, int k, int ib, int nb,
890  PLASMA_Complex32_t *A1, int lda1,
891  PLASMA_Complex32_t *A2, int lda2,
892  const PLASMA_Complex32_t *V, int ldv,
893  const PLASMA_Complex32_t *T, int ldt);
894 void QUARK_CORE_ctsmqr_corner(Quark *quark, Quark_Task_Flags *task_flags,
895  int m1, int n1, int m2, int n2, int m3, int n3, int k, int ib, int nb,
896  PLASMA_Complex32_t *A1, int lda1,
897  PLASMA_Complex32_t *A2, int lda2,
898  PLASMA_Complex32_t *A3, int lda3,
899  const PLASMA_Complex32_t *V, int ldv,
900  const PLASMA_Complex32_t *T, int ldt);
901 void QUARK_CORE_ctsqrt(Quark *quark, Quark_Task_Flags *task_flags,
902  int m, int n, int ib, int nb,
903  PLASMA_Complex32_t *A1, int lda1,
904  PLASMA_Complex32_t *A2, int lda2,
905  PLASMA_Complex32_t *T, int ldt);
906 void QUARK_CORE_ctstrf(Quark *quark, Quark_Task_Flags *task_flags,
907  int m, int n, int ib, int nb,
908  PLASMA_Complex32_t *U, int ldu,
909  PLASMA_Complex32_t *A, int lda,
910  PLASMA_Complex32_t *L, int ldl,
911  int *IPIV,
912  PLASMA_sequence *sequence, PLASMA_request *request,
913  PLASMA_bool check_info, int iinfo);
914 void QUARK_CORE_cttmqr(Quark *quark, Quark_Task_Flags *task_flags,
915  PLASMA_enum side, PLASMA_enum trans,
916  int m1, int n1, int m2, int n2, int k, int ib, int nb,
917  PLASMA_Complex32_t *A1, int lda1,
918  PLASMA_Complex32_t *A2, int lda2,
919  const PLASMA_Complex32_t *V, int ldv,
920  const PLASMA_Complex32_t *T, int ldt);
921 void QUARK_CORE_cttqrt(Quark *quark, Quark_Task_Flags *task_flags,
922  int m, int n, int ib, int nb,
923  PLASMA_Complex32_t *A1, int lda1,
924  PLASMA_Complex32_t *A2, int lda2,
925  PLASMA_Complex32_t *T, int ldt);
926 void QUARK_CORE_cttmlq(Quark *quark, Quark_Task_Flags *task_flags,
927  PLASMA_enum side, PLASMA_enum trans,
928  int m1, int n1, int m2, int n2, int k, int ib, int nb,
929  PLASMA_Complex32_t *A1, int lda1,
930  PLASMA_Complex32_t *A2, int lda2,
931  const PLASMA_Complex32_t *V, int ldv,
932  const PLASMA_Complex32_t *T, int ldt);
933 void QUARK_CORE_cttlqt(Quark *quark, Quark_Task_Flags *task_flags,
934  int m, int n, int ib, int nb,
935  PLASMA_Complex32_t *A1, int lda1,
936  PLASMA_Complex32_t *A2, int lda2,
937  PLASMA_Complex32_t *T, int ldt);
938 void QUARK_CORE_cpamm(Quark *quark, Quark_Task_Flags *task_flags,
939  int op, PLASMA_enum side, PLASMA_enum storev,
940  int m, int n, int k, int l,
941  const PLASMA_Complex32_t *A1, int lda1,
942  PLASMA_Complex32_t *A2, int lda2,
943  const PLASMA_Complex32_t *V, int ldv,
944  PLASMA_Complex32_t *W, int ldw);
945 void QUARK_CORE_cplssq( Quark *quark, Quark_Task_Flags *task_flags,
946  int m, const float *A, float *result );
947 void QUARK_CORE_cunmlq(Quark *quark, Quark_Task_Flags *task_flags,
948  PLASMA_enum side, PLASMA_enum trans,
949  int m, int n, int ib, int nb, int k,
950  const PLASMA_Complex32_t *A, int lda,
951  const PLASMA_Complex32_t *T, int ldt,
952  PLASMA_Complex32_t *C, int ldc);
953 void QUARK_CORE_cunmqr(Quark *quark, Quark_Task_Flags *task_flags,
954  PLASMA_enum side, PLASMA_enum trans,
955  int m, int n, int k, int ib, int nb,
956  const PLASMA_Complex32_t *A, int lda,
957  const PLASMA_Complex32_t *T, int ldt,
958  PLASMA_Complex32_t *C, int ldc);
959 
963 void CORE_scasum_quark(Quark *quark);
964 void CORE_scasum_f1_quark(Quark *quark);
965 void CORE_cgeadd_quark(Quark *quark);
966 void CORE_cbrdalg1_quark(Quark *quark);
967 void CORE_cgelqt_quark(Quark *quark);
968 void CORE_cgemm_quark(Quark *quark);
969 void CORE_cgemm_tile_quark(Quark *quark);
970 void CORE_cgemv_quark(Quark *quark);
971 void CORE_cgemv_tile_quark(Quark *quark);
972 void CORE_cgeqp3_init_quark(Quark *quark);
973 void CORE_cgeqp3_larfg_quark(Quark *quark);
974 void CORE_cgeqp3_norms_quark(Quark *quark);
975 void CORE_cgeqp3_pivot_quark(Quark *quark);
976 void CORE_cgeqp3_tntpiv_quark(Quark *quark);
977 void CORE_cgeqp3_update_quark(Quark *quark);
978 void CORE_cgeqrt_quark(Quark *quark);
979 void CORE_cgessm_quark(Quark *quark);
980 void CORE_cgessq_quark(Quark *quark);
981 void CORE_cgessq_f1_quark(Quark *quark);
982 void CORE_cgetrf_quark(Quark *quark);
983 void CORE_cgetrf_incpiv_quark(Quark *quark);
984 void CORE_cgetrf_nopiv_quark(Quark* quark);
985 void CORE_cgetrf_reclap_quark(Quark *quark);
986 void CORE_cgetrf_rectil_quark(Quark* quark);
987 void CORE_cgetrip_quark(Quark *quark);
988 void CORE_cgetrip_f1_quark(Quark *quark);
989 void CORE_cgetrip_f2_quark(Quark *quark);
990 #ifdef COMPLEX
991 void CORE_chemm_quark(Quark *quark);
992 void CORE_cherk_quark(Quark *quark);
993 void CORE_cher2k_quark(Quark *quark);
994 #endif
995 void CORE_chegst_quark(Quark *quark);
996 void CORE_cherfb_quark(Quark *quark);
997 void CORE_chessq_quark(Quark *quark);
998 void CORE_chessq_f1_quark(Quark *quark);
999 void CORE_clacpy_quark(Quark *quark);
1000 void CORE_clacpy_f1_quark(Quark *quark);
1001 void CORE_clacpy_pivot_quark(Quark *quark);
1002 void CORE_clatro_quark(Quark *quark);
1003 void CORE_clatro_f1_quark(Quark *quark);
1004 void CORE_clange_quark(Quark *quark);
1005 void CORE_clange_f1_quark(Quark *quark);
1006 #ifdef COMPLEX
1007 void CORE_clanhe_quark(Quark *quark);
1008 void CORE_clanhe_f1_quark(Quark *quark);
1009 #endif
1010 void CORE_clansy_quark(Quark *quark);
1011 void CORE_clansy_f1_quark(Quark *quark);
1012 void CORE_claset_quark(Quark *quark);
1013 void CORE_claset2_quark(Quark *quark);
1014 void CORE_clatro_quark(Quark *quark);
1015 void CORE_clauum_quark(Quark *quark);
1016 void CORE_cpamm_quark(Quark *quark);
1017 void CORE_cplghe_quark(Quark *quark);
1018 void CORE_cplgsy_quark(Quark *quark);
1019 void CORE_cplrnt_quark(Quark *quark);
1020 void CORE_cpltmg_quark(Quark *quark);
1021 void CORE_cplssq_quark(Quark *quark);
1022 void CORE_cpotrf_quark(Quark *quark);
1023 void CORE_csetvar_quark(Quark *quark);
1024 void CORE_cshift_quark(Quark *quark);
1025 void CORE_cshiftw_quark(Quark *quark);
1026 void CORE_cssssm_quark(Quark *quark);
1027 void CORE_csymm_quark(Quark *quark);
1028 void CORE_csyrk_quark(Quark *quark);
1029 void CORE_csyr2k_quark(Quark *quark);
1030 void CORE_csyssq_quark(Quark *quark);
1031 void CORE_csyssq_f1_quark(Quark *quark);
1032 void CORE_cswpab_quark(Quark *quark);
1033 void CORE_cswptr_ontile_quark(Quark *quark);
1034 void CORE_ctrdalg1_quark(Quark *quark);
1035 void CORE_ctrmm_quark(Quark *quark);
1036 void CORE_ctrsm_quark(Quark *quark);
1037 void CORE_ctrtri_quark(Quark *quark);
1038 void CORE_ctslqt_quark(Quark *quark);
1039 void CORE_ctsmlq_quark(Quark *quark);
1040 void CORE_ctsmlq_hetra1_quark(Quark *quark);
1041 void CORE_ctsmlq_corner_quark(Quark *quark);
1042 void CORE_ctsmqr_quark(Quark *quark);
1043 void CORE_ctsmqr_hetra1_quark(Quark *quark);
1044 void CORE_ctsmqr_corner_quark(Quark *quark);
1045 void CORE_ctsqrt_quark(Quark *quark);
1046 void CORE_ctstrf_quark(Quark *quark);
1047 void CORE_cttmqr_quark(Quark *quark);
1048 void CORE_cttqrt_quark(Quark *quark);
1049 void CORE_cttmlq_quark(Quark *quark);
1050 void CORE_cttlqt_quark(Quark *quark);
1051 void CORE_cunmlq_quark(Quark *quark);
1052 void CORE_cunmqr_quark(Quark *quark);
1053 void CORE_claswp_quark(Quark* quark);
1054 void CORE_claswp_f2_quark(Quark* quark);
1055 void CORE_claswp_ontile_quark(Quark *quark);
1056 void CORE_claswp_ontile_f2_quark(Quark *quark);
1057 void CORE_claswpc_ontile_quark(Quark *quark);
1058 void CORE_ctrmm_p2_quark(Quark* quark);
1059 void CORE_cgemm_f2_quark(Quark* quark);
1060 void CORE_cgemm_p2_quark(Quark* quark);
1061 void CORE_cgemm_p2f1_quark(Quark* quark);
1062 void CORE_cgemm_p3_quark(Quark* quark);
1063 
1064 #endif /* defined(QUARK_H) */
1065 
1066 #ifdef __cplusplus
1067 }
1068 #endif
1069 
1070 #undef COMPLEX
1071 
1072 #endif