PLASMA  2.4.5
PLASMA - Parallel Linear Algebra for Scalable Multi-core Architectures
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
plasma_cf77.c
Go to the documentation of this file.
1 
15 #include <stdlib.h>
16 #include "common.h"
17 #undef REAL
18 #define COMPLEX
19 
20 /*
21  * Lapack interface
22  */
23 #define PLASMA_CGEBRD PLASMA_FNAME(cgebrd, CGEBRD )
24 #define PLASMA_CGEEV PLASMA_FNAME(cgeev, CGEEV )
25 #define PLASMA_CGEHRD PLASMA_FNAME(cgehrd, CGEHRD )
26 #define PLASMA_CGELQF PLASMA_FNAME(cgelqf, CGELQF )
27 #define PLASMA_CGELQS PLASMA_FNAME(cgelqs, CGELQS )
28 #define PLASMA_CGELS PLASMA_FNAME(cgels, CGELS )
29 #define PLASMA_CGEQRF PLASMA_FNAME(cgeqrf, CGEQRF )
30 #define PLASMA_CGEQRS PLASMA_FNAME(cgeqrs, CGEQRS )
31 #define PLASMA_CGESV PLASMA_FNAME(cgesv, CGESV )
32 #define PLASMA_CGESVD PLASMA_FNAME(cgesvd, CGESVD )
33 #define PLASMA_CGETRF PLASMA_FNAME(cgetrf, CGETRF )
34 #define PLASMA_CGETRS PLASMA_FNAME(cgetrs, CGETRS )
35 #define PLASMA_CGESV_INCPIV PLASMA_FNAME(cgesv_incpiv, CGESV_INCPIV )
36 #define PLASMA_CGETRF_INCPIV PLASMA_FNAME(cgetrf_incpiv, CGETRF_INCPIV )
37 #define PLASMA_CGETRS_INCPIV PLASMA_FNAME(cgetrs_incpiv, CGETRS_INCPIV )
38 #define PLASMA_CHEEV PLASMA_FNAME(cheev, CHEEV )
39 #define PLASMA_CHEGV PLASMA_FNAME(chegv, CHEGV )
40 #define PLASMA_CHEGST PLASMA_FNAME(chegst, CHEGST )
41 #define PLASMA_CHETRD PLASMA_FNAME(chetrd, CHETRD )
42 #define PLASMA_CPOSV PLASMA_FNAME(cposv, CPOSV )
43 #define PLASMA_CPOTRF PLASMA_FNAME(cpotrf, CPOTRF )
44 #define PLASMA_CPOTRI PLASMA_FNAME(cpotri, CPOTRI )
45 #define PLASMA_CPOTRS PLASMA_FNAME(cpotrs, CPOTRS )
46 #define PLASMA_CTRSMPL PLASMA_FNAME(ctrsmpl, CTRSMPL)
47 #define PLASMA_CUNGBR PLASMA_FNAME(cungbr, CUNGBR )
48 #define PLASMA_CUNGHR PLASMA_FNAME(cunghr, CUNGHR )
49 #define PLASMA_CUNGLQ PLASMA_FNAME(cunglq, CUNGLQ )
50 #define PLASMA_CUNGQR PLASMA_FNAME(cungqr, CUNGQR )
51 #define PLASMA_CUNGTR PLASMA_FNAME(cungtr, CUNGTR )
52 #define PLASMA_CUNMLQ PLASMA_FNAME(cunmlq, CUNMLQ )
53 #define PLASMA_CUNMQR PLASMA_FNAME(cunmqr, CUNMQR )
54 #define PLASMA_CTRSM PLASMA_FNAME(ctrsm, CTRSM )
55 #define PLASMA_CGEMM PLASMA_FNAME(cgemm, CGEMM )
56 #define PLASMA_CSYMM PLASMA_FNAME(csymm, CSYMM )
57 #define PLASMA_CSYRK PLASMA_FNAME(csyrk, CSYRK )
58 #ifdef COMPLEX
59 #define PLASMA_CHEMM PLASMA_FNAME(chemm, CHEMM )
60 #define PLASMA_CHERK PLASMA_FNAME(cherk, CHERK )
61 #endif
62 
63 /*
64  * Tile interface
65  */
66 #define PLASMA_CGEBRD_TILE PLASMA_TILE_FNAME(cgebrd, CGEBRD )
67 #define PLASMA_CGEEV_TILE PLASMA_TILE_FNAME(cgeev, CGEEV )
68 #define PLASMA_CGEHRD_TILE PLASMA_TILE_FNAME(cgehrd, CGEHRD )
69 #define PLASMA_CGELQF_TILE PLASMA_TILE_FNAME(cgelqf, CGELQF )
70 #define PLASMA_CGELQS_TILE PLASMA_TILE_FNAME(cgelqs, CGELQS )
71 #define PLASMA_CGELS_TILE PLASMA_TILE_FNAME(cgels, CGELS )
72 #define PLASMA_CGEQRF_TILE PLASMA_TILE_FNAME(cgeqrf, CGEQRF )
73 #define PLASMA_CGEQRS_TILE PLASMA_TILE_FNAME(cgeqrs, CGEQRS )
74 #define PLASMA_CGESV_TILE PLASMA_TILE_FNAME(cgesv, CGESV )
75 #define PLASMA_CGESVD_TILE PLASMA_TILE_FNAME(cgesvd, CGESVD )
76 #define PLASMA_CGETRF_TILE PLASMA_TILE_FNAME(cgetrf, CGETRF )
77 #define PLASMA_CGETRS_TILE PLASMA_TILE_FNAME(cgetrs, CGETRS )
78 #define PLASMA_CGESV_INCPIV_TILE PLASMA_TILE_FNAME(cgesv_incpiv, CGESV_INCPIV )
79 #define PLASMA_CGETRF_INCPIV_TILE PLASMA_TILE_FNAME(cgetrf_incpiv, CGETRF_INCPIV )
80 #define PLASMA_CGETRS_INCPIV_TILE PLASMA_TILE_FNAME(cgetrs_incpiv, CGETRS_INCPIV )
81 #define PLASMA_CHEEV_TILE PLASMA_TILE_FNAME(cheev, CHEEV )
82 #define PLASMA_CHEGV_TILE PLASMA_TILE_FNAME(chegv, CHEGV )
83 #define PLASMA_CHEGST_TILE PLASMA_TILE_FNAME(chegst, CHEGST )
84 #define PLASMA_CHETRD_TILE PLASMA_TILE_FNAME(chetrd, CHETRD )
85 #define PLASMA_CPOSV_TILE PLASMA_TILE_FNAME(cposv, CPOSV )
86 #define PLASMA_CPOTRF_TILE PLASMA_TILE_FNAME(cpotrf, CPOTRF )
87 #define PLASMA_CPOTRI_TILE PLASMA_TILE_FNAME(cpotri, CPOTRI )
88 #define PLASMA_CPOTRS_TILE PLASMA_TILE_FNAME(cpotrs, CPOTRS )
89 #define PLASMA_CTRSM_TILE PLASMA_TILE_FNAME(ctrsm, CTRSM )
90 #define PLASMA_CTRSMPL_TILE PLASMA_TILE_FNAME(ctrsmpl, CTRSMPL)
91 #define PLASMA_CUNGBR_TILE PLASMA_TILE_FNAME(cungbr, CUNGBR )
92 #define PLASMA_CUNGHR_TILE PLASMA_TILE_FNAME(cunghr, CUNGHR )
93 #define PLASMA_CUNGLQ_TILE PLASMA_TILE_FNAME(cunglq, CUNGLQ )
94 #define PLASMA_CUNGQR_TILE PLASMA_TILE_FNAME(cungqr, CUNGQR )
95 #define PLASMA_CUNGTR_TILE PLASMA_TILE_FNAME(cungtr, CUNGTR )
96 #define PLASMA_CUNMLQ_TILE PLASMA_TILE_FNAME(cunmlq, CUNMLQ )
97 #define PLASMA_CUNMQR_TILE PLASMA_TILE_FNAME(cunmqr, CUNMQR )
98 #define PLASMA_CGEMM_TILE PLASMA_TILE_FNAME(cgemm, CGEMM )
99 #define PLASMA_CSYMM_TILE PLASMA_TILE_FNAME(csymm, CSYMM )
100 #define PLASMA_CSYRK_TILE PLASMA_TILE_FNAME(csyrk, CSYRK )
101 #ifdef COMPLEX
102 #define PLASMA_CHEMM_TILE PLASMA_TILE_FNAME(chemm, CHEMM )
103 #define PLASMA_CHERK_TILE PLASMA_TILE_FNAME(cherk, CHERK )
104 #endif
105 
106 /*
107  * Workspaces
108  */
109 #define PLASMA_ALLOC_WORKSPACE_CGEBRD PLASMA_WS_FNAME(cgehrd, CGEBRD)
110 #define PLASMA_ALLOC_WORKSPACE_CGEEV PLASMA_WS_FNAME(cgeev, CGEEV )
111 #define PLASMA_ALLOC_WORKSPACE_CGEHRD PLASMA_WS_FNAME(cgehrd, CGEHRD)
112 #define PLASMA_ALLOC_WORKSPACE_CGELQF PLASMA_WS_FNAME(cgelqf, CGELQF)
113 #define PLASMA_ALLOC_WORKSPACE_CGELS PLASMA_WS_FNAME(cgels, CGELS )
114 #define PLASMA_ALLOC_WORKSPACE_CGEQRF PLASMA_WS_FNAME(cgeqrf, CGEQRF)
115 #define PLASMA_ALLOC_WORKSPACE_CGESV_INCPIV PLASMA_WS_FNAME(cgesv_incpiv, CGESV_INCPIV )
116 #define PLASMA_ALLOC_WORKSPACE_CGETRF_INCPIV PLASMA_WS_FNAME(cgetrf_incpiv, CGETRF_INCPIV)
117 #define PLASMA_ALLOC_WORKSPACE_CGESVD PLASMA_WS_FNAME(cgesvd, CGESVD)
118 #define PLASMA_ALLOC_WORKSPACE_CHEEV PLASMA_WS_FNAME(cheev, CHEEV )
119 #define PLASMA_ALLOC_WORKSPACE_CHEGV PLASMA_WS_FNAME(chegv, CHEGV )
120 #define PLASMA_ALLOC_WORKSPACE_CHETRD PLASMA_WS_FNAME(chetrd, CHETRD)
121 
122 /*
123  * Tile Workspaces
124  */
125 #define PLASMA_ALLOC_WORKSPACE_CGELQF_TILE PLASMA_WST_FNAME(cgelqf, CGELQF )
126 #define PLASMA_ALLOC_WORKSPACE_CGELS_TILE PLASMA_WST_FNAME(cgels, CGELS )
127 #define PLASMA_ALLOC_WORKSPACE_CGEQRF_TILE PLASMA_WST_FNAME(cgeqrf, CGEQRF )
128 #define PLASMA_ALLOC_WORKSPACE_CGESV_INCPIV_TILE PLASMA_WST_FNAME(cgesv_incpiv, CGESV_INCPIV )
129 #define PLASMA_ALLOC_WORKSPACE_CGETRF_INCPIV_TILE PLASMA_WST_FNAME(cgetrf_incpiv, CGETRF_INCPIV)
130 
131 #define PLASMA_CLAPACK_TO_TILE PLASMA_FNAME(clapack_to_tile, CLAPACK_TO_TILE)
132 #define PLASMA_CTILE_TO_LAPACK PLASMA_FNAME(ctile_to_lapack, CTILE_TO_LAPACK)
133 
134 #ifdef __cplusplus
135 extern "C" {
136 #endif
137 
138 /***************************************************************************/
141 void PLASMA_CGEBRD(PLASMA_enum *jobu, PLASMA_enum *jobvt, int *M, int *N, PLASMA_Complex32_t *A, int *LDA, float *D, float *E, PLASMA_Complex32_t *U, int *LDU, PLASMA_Complex32_t *VT, int *LDVT, intptr_t *descT, int *INFO)
142 { *INFO = PLASMA_cgebrd(*jobu, *jobvt, *M, *N, A, *LDA, D, E, U, *LDU, VT, *LDVT, (PLASMA_desc *)(*descT)); }
143 
144 void PLASMA_CGELQF(int *M, int *N, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, int *INFO)
145 { *INFO = PLASMA_cgelqf(*M, *N, A, *LDA, *T); }
146 
147 void PLASMA_CGELQS(int *M, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
148 { *INFO = PLASMA_cgelqs(*M, *N, *NRHS, A, *LDA, *T, B, *LDB); }
149 
150 void PLASMA_CGELS(PLASMA_enum *trans, int *M, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
151 { *INFO = PLASMA_cgels(*trans, *M, *N, *NRHS, A, *LDA, *T, B, *LDB); }
152 
153 void PLASMA_CGEQRF(int *M, int *N, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, int *INFO)
154 { *INFO = PLASMA_cgeqrf(*M, *N, A, *LDA, *T); }
155 
156 void PLASMA_CGEQRS(int *M, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
157 { *INFO = PLASMA_cgeqrs(*M, *N, *NRHS, A, *LDA, *T, B, *LDB); }
158 
159 void PLASMA_CGESV(int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, int *IPIV, PLASMA_Complex32_t *B, int *LDB, int *INFO)
160 { *INFO = PLASMA_cgesv(*N, *NRHS, A, *LDA, IPIV, B, *LDB); }
161 
162 void PLASMA_CGESVD(PLASMA_enum *jobu, PLASMA_enum *jobvt, int *M, int *N, PLASMA_Complex32_t *A, int *LDA, float *S, PLASMA_Complex32_t *U, int *LDU, PLASMA_Complex32_t *VT, int *LDVT, intptr_t *T, int *INFO)
163 { *INFO = PLASMA_cgesvd(*jobu, *jobvt, *M, *N, A, *LDA, S, U, *LDU, VT, *LDVT, (PLASMA_desc *)(*T)); }
164 
165 void PLASMA_CGETRF(int *M, int *N, PLASMA_Complex32_t *A, int *LDA, int *IPIV, int *INFO)
166 { *INFO = PLASMA_cgetrf(*M, *N, A, *LDA, IPIV); }
167 
168 void PLASMA_CGETRS(PLASMA_enum *trans, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, int *IPIV, PLASMA_Complex32_t *B, int *LDB, int *INFO)
169 { *INFO = PLASMA_cgetrs(*trans, *N, *NRHS, A, *LDA, IPIV, B, *LDB); }
170 
171 void PLASMA_CGESV_INCPIV(int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **LH, int **IPIVH, PLASMA_Complex32_t *B, int *LDB, int *INFO)
172 { *INFO = PLASMA_cgesv_incpiv(*N, *NRHS, A, *LDA, *LH, *IPIVH, B, *LDB); }
173 
174 void PLASMA_CGETRF_INCPIV(int *M, int *N, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **LH, int **IPIVH, int *INFO)
175 { *INFO = PLASMA_cgetrf_incpiv(*M, *N, A, *LDA, *LH, *IPIVH); }
176 
177 void PLASMA_CGETRS_INCPIV(PLASMA_enum *uplo, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **LH, int **IPIVH, PLASMA_Complex32_t *B, int *LDB, int *INFO)
178 { *INFO = PLASMA_cgetrs_incpiv(*uplo, *N, *NRHS, A, *LDA, *LH, *IPIVH, B, *LDB); }
179 
180 void PLASMA_CHEEV(PLASMA_enum *jobz, PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, float *W, intptr_t *T, PLASMA_Complex32_t *Q, int *LDQ, int *INFO)
181 { *INFO = PLASMA_cheev(*jobz, *uplo, *N, A, *LDA, W, (PLASMA_desc *)(*T), Q, *LDQ); }
182 
183 void PLASMA_CHEGV(PLASMA_enum *itype, PLASMA_enum *jobz, PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, float *W, intptr_t *T, PLASMA_Complex32_t *Q, int *LDQ, int *INFO)
184 { *INFO = PLASMA_chegv(*itype, *jobz, *uplo, *N, A, *LDA, B, *LDB, W, (PLASMA_desc*)(*T), Q, *LDQ); }
185 
186 void PLASMA_CHEGST(PLASMA_enum *itype, PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, int *INFO)
187 { *INFO = PLASMA_chegst(*itype, *uplo, *N, A, *LDA, B, *LDB); }
188 
189 void PLASMA_CHETRD(PLASMA_enum *jobz, PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, float *D, float *E, intptr_t *T, PLASMA_Complex32_t *Q, int *LDQ, int *INFO)
190 { *INFO = PLASMA_chetrd(*jobz, *uplo, *N, A, *LDA, D, E, (PLASMA_desc *)(*T), Q, *LDQ); }
191 
192 void PLASMA_CPOSV(PLASMA_enum *uplo, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, int *INFO)
193 { *INFO = PLASMA_cposv(*uplo, *N, *NRHS, A, *LDA, B, *LDB); }
194 
195 void PLASMA_CPOTRF(PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, int *INFO)
196 { *INFO = PLASMA_cpotrf(*uplo, *N, A, *LDA); }
197 
198 void PLASMA_CPOTRI(PLASMA_enum *uplo, int *N, PLASMA_Complex32_t *A, int *LDA, int *INFO)
199 { *INFO = PLASMA_cpotri(*uplo, *N, A, *LDA); }
200 
201 void PLASMA_CPOTRS(PLASMA_enum *uplo, int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int* LDB, int * INFO)
202 { *INFO = PLASMA_cpotrs(*uplo, *N, *NRHS, A, *LDA, B, *LDB); }
203 
204 void PLASMA_CTRSMPL(int *N, int *NRHS, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **LH, int **IPIVH, PLASMA_Complex32_t *B, int *LDB, int *INFO)
205 { *INFO = PLASMA_ctrsmpl(*N, *NRHS, A, *LDA, *LH, *IPIVH, B, *LDB); }
206 
207 void PLASMA_CUNGLQ(int *M, int *N, int *K, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
208 { *INFO = PLASMA_cunglq(*M, *N, *K, A, *LDA, *T, B, *LDB); }
209 
210 void PLASMA_CUNGQR(int *M, int *N, int *K, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
211 { *INFO = PLASMA_cungqr(*M, *N, *K, A, *LDA, *T, B, *LDB); }
212 
213 void PLASMA_CUNMLQ(PLASMA_enum *side, PLASMA_enum *trans, int *M, int *N, int *K, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
214 { *INFO = PLASMA_cunmlq(*side, *trans, *M, *N, *K, A, *LDA, *T, B, *LDB); }
215 
216 void PLASMA_CUNMQR(PLASMA_enum *side, PLASMA_enum *trans, int *M, int *N, int *K, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t **T, PLASMA_Complex32_t *B, int *LDB, int *INFO)
217 { *INFO = PLASMA_cunmqr(*side, *trans, *M, *N, *K, A, *LDA, *T, B, *LDB); }
218 
219 void PLASMA_CTRSM(PLASMA_enum *side, PLASMA_enum *uplo, PLASMA_enum *transA, PLASMA_enum *diag, int *N, int *NRHS, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, int *INFO)
220 { *INFO = PLASMA_ctrsm(*side, *uplo, *transA, *diag, *N, *NRHS, *alpha, A, *LDA, B, *LDB); }
221 
222 void PLASMA_CGEMM(PLASMA_enum *transA, PLASMA_enum *transB, int *M, int *N, int *K, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, PLASMA_Complex32_t *beta, PLASMA_Complex32_t *C, int *LDC, int *INFO)
223 { *INFO = PLASMA_cgemm(*transA, *transB, *M, *N, *K, *alpha, A, *LDA, B, *LDB, *beta, C, *LDC); }
224 
225 void PLASMA_CSYMM(PLASMA_enum *side, PLASMA_enum *uplo, int *M, int *N, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, PLASMA_Complex32_t *beta, PLASMA_Complex32_t *C, int *LDC, int *INFO)
226 { *INFO = PLASMA_csymm(*side, *uplo, *M, *N, *alpha, A, *LDA, B, *LDB, *beta, C, *LDC); }
227 
228 void PLASMA_CSYRK(PLASMA_enum *uplo, PLASMA_enum *trans, int *N, int *K, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *beta, PLASMA_Complex32_t *C, int *LDC, int *INFO)
229 { *INFO = PLASMA_csyrk(*uplo, *trans, *N, *K, *alpha, A, *LDA, *beta, C, *LDC); }
230 
231 #ifdef COMPLEX
232 void PLASMA_CHEMM(PLASMA_enum *side, PLASMA_enum *uplo, int *M, int *N, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, PLASMA_Complex32_t *B, int *LDB, PLASMA_Complex32_t *beta, PLASMA_Complex32_t *C, int *LDC, int *INFO)
233 { *INFO = PLASMA_chemm(*side, *uplo, *M, *N, *alpha, A, *LDA, B, *LDB, *beta, C, *LDC); }
234 
235 void PLASMA_CHERK(PLASMA_enum *uplo, PLASMA_enum *trans, int *N, int *K, PLASMA_Complex32_t *alpha, PLASMA_Complex32_t *A, int *LDA, float *beta, PLASMA_Complex32_t *C, int *LDC, int *INFO)
236 { *INFO = PLASMA_cherk(*uplo, *trans, *N, *K, *alpha, A, *LDA, *beta, C, *LDC); }
237 #endif
238 
239 /***************************************************************************/
242 void PLASMA_CGEBRD_TILE(PLASMA_enum *jobu, PLASMA_enum *jobvt, intptr_t *A, float *D, float *E, intptr_t *U, intptr_t *VT, intptr_t *T, int *INFO)
243 { *INFO = PLASMA_cgebrd_Tile(*jobu, *jobvt, (PLASMA_desc *)(*A), D, E, (PLASMA_desc *)(*U), (PLASMA_desc *)(*VT), (PLASMA_desc *)(*T)); }
244 
245 void PLASMA_CGELQF_TILE(intptr_t *A, intptr_t *T, int *INFO)
246 { *INFO = PLASMA_cgelqf_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*T)); }
247 
248 void PLASMA_CGELQS_TILE(intptr_t *A, intptr_t *B, intptr_t *T, int *INFO)
249 { *INFO = PLASMA_cgelqs_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*B), (PLASMA_desc *)(*T)); }
250 
251 void PLASMA_CGELS_TILE(PLASMA_enum *trans, intptr_t *A, intptr_t *B, intptr_t *T, int *INFO)
252 { *INFO = PLASMA_cgels_Tile(*trans, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B), (PLASMA_desc *)(*T)); }
253 
254 void PLASMA_CGEQRF_TILE(intptr_t *A, intptr_t *T, int *INFO)
255 { *INFO = PLASMA_cgeqrf_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*T)); }
256 
257 void PLASMA_CGEQRS_TILE(intptr_t *A, intptr_t *B, intptr_t *T, int *INFO)
258 { *INFO = PLASMA_cgeqrs_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*B), (PLASMA_desc *)(*T)); }
259 
260 void PLASMA_CGESV_TILE(intptr_t *A, int *IPIV, intptr_t *B, int *INFO)
261 { *INFO = PLASMA_cgesv_Tile((PLASMA_desc *)(*A), IPIV, (PLASMA_desc *)(*B)); }
262 
263 void PLASMA_CGESVD_TILE(PLASMA_enum *jobu, PLASMA_enum *jobvt, intptr_t *A, float *S, intptr_t *U, intptr_t *VT, intptr_t *T, int *INFO)
264 { *INFO = PLASMA_cgesvd_Tile(*jobu, *jobvt, (PLASMA_desc *)(*A), S, (PLASMA_desc *)(*U), (PLASMA_desc *)(*VT), (PLASMA_desc *)(*T)); }
265 
266 void PLASMA_CGETRF_TILE(intptr_t *A, int *IPIV, int *INFO)
267 { *INFO = PLASMA_cgetrf_Tile((PLASMA_desc *)(*A), IPIV); }
268 
269 void PLASMA_CGETRS_TILE(PLASMA_enum *trans, intptr_t *A, int *IPIV, intptr_t *B, int *INFO)
270 { *INFO = PLASMA_cgetrs_Tile(*trans, (PLASMA_desc *)(*A), IPIV, (PLASMA_desc *)(*B)); }
271 
272 void PLASMA_CGESV_INCPIV_TILE(intptr_t *A, intptr_t *L, int **IPIVH, intptr_t *B, int *INFO)
273 { *INFO = PLASMA_cgesv_incpiv_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*L), *IPIVH, (PLASMA_desc *)(*B)); }
274 
275 void PLASMA_CGETRF_INCPIV_TILE(intptr_t *A, intptr_t *L, int **IPIVH, int *INFO)
276 { *INFO = PLASMA_cgetrf_incpiv_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*L), *IPIVH); }
277 
278 void PLASMA_CGETRS_INCPIV_TILE(intptr_t *A, intptr_t *L, int **IPIVH, intptr_t *B, int *INFO)
279 { *INFO = PLASMA_cgetrs_incpiv_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*L), *IPIVH, (PLASMA_desc *)(*B)); }
280 
281 void PLASMA_CHEEV_TILE(PLASMA_enum *jobz, PLASMA_enum *uplo, intptr_t *A, float *W, intptr_t *T, intptr_t *Q, int *INFO)
282 { *INFO = PLASMA_cheev_Tile(*jobz, *uplo, (PLASMA_desc *)(*A), W, (PLASMA_desc *)(*T), (PLASMA_desc *)(*Q)); }
283 
284 void PLASMA_CHEGV_TILE(PLASMA_enum *itype, PLASMA_enum *jobz, PLASMA_enum *uplo, intptr_t *A, intptr_t *B, float *W, intptr_t *T, intptr_t *Q, int *INFO)
285 { *INFO = PLASMA_chegv_Tile(*itype, *jobz, *uplo, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B), W, (PLASMA_desc *)(*T), (PLASMA_desc *)(*Q)); }
286 
287 void PLASMA_CHEGST_TILE(PLASMA_enum *itype, PLASMA_enum *uplo, intptr_t *A, intptr_t *B, int *INFO)
288 { *INFO = PLASMA_chegst_Tile(*itype, *uplo, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B)); }
289 
290 void PLASMA_CHETRD_TILE(PLASMA_enum *jobz, PLASMA_enum *uplo, intptr_t *A, float *D, float *E, intptr_t *T, intptr_t *Q, int *INFO)
291 { *INFO = PLASMA_chetrd_Tile(*jobz, *uplo, (PLASMA_desc *)(*A), D, E, (PLASMA_desc *)(*T), (PLASMA_desc *)(*Q)); }
292 
293 void PLASMA_CPOSV_TILE(PLASMA_enum *uplo, intptr_t *A, intptr_t *B, int *INFO)
294 { *INFO = PLASMA_cposv_Tile(*uplo, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B)); }
295 
296 void PLASMA_CPOTRF_TILE(PLASMA_enum *uplo, intptr_t *A, int *INFO)
297 { *INFO = PLASMA_cpotrf_Tile(*uplo, (PLASMA_desc *)(*A)); }
298 
299 void PLASMA_CPOTRS_TILE(PLASMA_enum *uplo, intptr_t *A, intptr_t *B, int *INFO)
300 { *INFO = PLASMA_cpotrs_Tile(*uplo, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B)); }
301 
302 void PLASMA_CTRSMPL_TILE(intptr_t *A, intptr_t *L, int **IPIVH, intptr_t *B, int *INFO)
303 { *INFO = PLASMA_ctrsmpl_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*L), *IPIVH, (PLASMA_desc *)(*B)); }
304 
305 void PLASMA_CUNGLQ_TILE(intptr_t *A, intptr_t *T, intptr_t *B, int *INFO)
306 { *INFO = PLASMA_cunglq_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*T), (PLASMA_desc *)(*B)); }
307 
308 void PLASMA_CUNGQR_TILE(intptr_t *A, intptr_t *T, intptr_t *B, int *INFO)
309 { *INFO = PLASMA_cungqr_Tile((PLASMA_desc *)(*A), (PLASMA_desc *)(*T), (PLASMA_desc *)(*B)); }
310 
311 void PLASMA_CUNMLQ_TILE(PLASMA_enum *side, PLASMA_enum *trans, intptr_t *A, intptr_t *T, intptr_t *B, int *INFO)
312 { *INFO = PLASMA_cunmlq_Tile(*side, *trans, (PLASMA_desc *)(*A), (PLASMA_desc *)(*T), (PLASMA_desc *)(*B)); }
313 
314 void PLASMA_CUNMQR_TILE(PLASMA_enum *side, PLASMA_enum *trans, intptr_t *A, intptr_t *T, intptr_t *B, int *INFO)
315 { *INFO = PLASMA_cunmqr_Tile(*side, *trans, (PLASMA_desc *)(*A), (PLASMA_desc *)(*T), (PLASMA_desc *)(*B)); }
316 
317 void PLASMA_CTRSM_TILE(PLASMA_enum *side, PLASMA_enum *uplo, PLASMA_enum *transA, PLASMA_enum *diag, PLASMA_Complex32_t *alpha, intptr_t *A, intptr_t *B, int *INFO)
318 { *INFO = PLASMA_ctrsm_Tile(*side, *uplo, *transA, *diag, *alpha, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B)); }
319 
320 void PLASMA_CGEMM_TILE(PLASMA_enum *transA, PLASMA_enum *transB, int *alpha, intptr_t *A, intptr_t *B, int *beta, intptr_t *C, int *INFO)
321 { *INFO = PLASMA_cgemm_Tile(*transA, *transB, *alpha, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B), *beta, (PLASMA_desc *)(*C)); }
322 
323  void PLASMA_CSYMM_TILE(PLASMA_enum *side, PLASMA_enum *uplo, PLASMA_Complex32_t *alpha, intptr_t *A, intptr_t *B, PLASMA_Complex32_t *beta, intptr_t *C, int *INFO)
324  { *INFO = PLASMA_csymm_Tile(*side, *uplo, *alpha, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B), *beta, (PLASMA_desc *)(*C)); }
325 
326 void PLASMA_CSYRK_TILE(PLASMA_enum *uplo, PLASMA_enum *trans, PLASMA_Complex32_t *alpha, intptr_t *A, PLASMA_Complex32_t *beta, intptr_t *C, int *INFO)
327 { *INFO = PLASMA_csyrk_Tile(*uplo, *trans, *alpha, (PLASMA_desc *)(*A), *beta, (PLASMA_desc *)(*C)); }
328 
329 #ifdef COMPLEX
330 void PLASMA_CHEMM_TILE(PLASMA_enum *side, PLASMA_enum *uplo, PLASMA_Complex32_t *alpha, intptr_t *A, intptr_t *B, PLASMA_Complex32_t *beta, intptr_t *C, int *INFO)
331 { *INFO = PLASMA_chemm_Tile(*side, *uplo, *alpha, (PLASMA_desc *)(*A), (PLASMA_desc *)(*B), *beta, (PLASMA_desc *)(*C)); }
332 
333 void PLASMA_CHERK_TILE(PLASMA_enum *uplo, PLASMA_enum *trans, PLASMA_Complex32_t *alpha, intptr_t *A, float *beta, intptr_t *C, int *INFO)
334 { *INFO = PLASMA_cherk_Tile(*uplo, *trans, *alpha, (PLASMA_desc *)(*A), *beta, (PLASMA_desc *)(*C)); }
335 #endif
336 
337 /***************************************************************************/
340 void PLASMA_ALLOC_WORKSPACE_CGEBRD(int *M, int *N, intptr_t **T, int *INFO)
341 { *INFO = PLASMA_Alloc_Workspace_cgebrd(*M, *N, (PLASMA_desc **)T); }
342 
343 void PLASMA_ALLOC_WORKSPACE_CGELQF(int *M, int *N, PLASMA_Complex32_t **T, int *INFO)
344 { *INFO = PLASMA_Alloc_Workspace_cgelqf(*M, *N, T); }
345 
346 void PLASMA_ALLOC_WORKSPACE_CGELS(int *M, int *N, PLASMA_Complex32_t **T, int *INFO)
347 { *INFO = PLASMA_Alloc_Workspace_cgels(*M, *N, T); }
348 
349 void PLASMA_ALLOC_WORKSPACE_CGEQRF(int *M, int *N, PLASMA_Complex32_t **T, int *INFO)
350 { *INFO = PLASMA_Alloc_Workspace_cgeqrf(*M, *N, T); }
351 
353 { *INFO = PLASMA_Alloc_Workspace_cgesv_incpiv(*N, L, IPIV); }
354 
355 void PLASMA_ALLOC_WORKSPACE_CGESVD(int *M, int *N, intptr_t **T, int *INFO)
356 { *INFO = PLASMA_Alloc_Workspace_cgesvd(*M, *N, (PLASMA_desc **)T); }
357 
358 void PLASMA_ALLOC_WORKSPACE_CGETRF_INCPIV(int *M, int *N, PLASMA_Complex32_t **L, int **IPIV, int *INFO)
359 { *INFO = PLASMA_Alloc_Workspace_cgetrf_incpiv(*M, *N, L, IPIV); }
360 
361 void PLASMA_ALLOC_WORKSPACE_CHEEV(int *M, int *N, intptr_t **T, int *INFO)
362 { *INFO = PLASMA_Alloc_Workspace_cheev(*M, *N, (PLASMA_desc **)T); }
363 
364 void PLASMA_ALLOC_WORKSPACE_CHEGV(int *M, int *N, intptr_t **T, int *INFO)
365 { *INFO = PLASMA_Alloc_Workspace_chegv(*M, *N, (PLASMA_desc **)T); }
366 
367 void PLASMA_ALLOC_WORKSPACE_CHETRD(int *M, int *N, intptr_t **T, int *INFO)
368 { *INFO = PLASMA_Alloc_Workspace_chetrd(*M, *N, (PLASMA_desc **)T); }
369 
370 
371 /***************************************************************************/
374 void PLASMA_ALLOC_WORKSPACE_CGELQF_TILE(int *M, int *N, intptr_t **T, int *INFO)
375 { *INFO = PLASMA_Alloc_Workspace_cgelqf_Tile(*M, *N, (PLASMA_desc **)T); }
376 
377 void PLASMA_ALLOC_WORKSPACE_CGELS_TILE(int *M, int *N, intptr_t **T, int *INFO)
378 { *INFO = PLASMA_Alloc_Workspace_cgels_Tile(*M, *N, (PLASMA_desc **)T); }
379 
380 void PLASMA_ALLOC_WORKSPACE_CGEQRF_TILE(int *M, int *N, intptr_t **T, int *INFO)
381 { *INFO = PLASMA_Alloc_Workspace_cgeqrf_Tile(*M, *N, (PLASMA_desc **)T); }
382 
383 void PLASMA_ALLOC_WORKSPACE_CGESV_INCPIV_TILE(int *N, intptr_t **L, int **IPIV, int *INFO)
384 { *INFO = PLASMA_Alloc_Workspace_cgesv_incpiv_Tile(*N, (PLASMA_desc **)L, IPIV); }
385 
386 void PLASMA_ALLOC_WORKSPACE_CGETRF_INCPIV_TILE(int *N, intptr_t **L, int **IPIV, int *INFO)
387 { *INFO = PLASMA_Alloc_Workspace_cgetrf_incpiv_Tile(*N, (PLASMA_desc **)L, IPIV); }
388 
389 /***************************************************************************/
392 void PLASMA_CLAPACK_TO_TILE(PLASMA_Complex32_t **Af77, int *LDA, intptr_t *A, int *INFO)
393 { *INFO = PLASMA_cLapack_to_Tile( *Af77, *LDA, (PLASMA_desc *)(*A) ); }
394 
395 void PLASMA_CTILE_TO_LAPACK(intptr_t *A, PLASMA_Complex32_t **Af77, int *LDA, int *INFO)
396 { *INFO = PLASMA_cTile_to_Lapack( (PLASMA_desc *)(*A), *Af77, *LDA ); }
397 
398 #ifdef __cplusplus
399 }
400 #endif