113 #if defined(PLASMA_HAVE_WEAK)
114 #pragma weak CORE_dtsmlq_corner = PCORE_dtsmlq_corner
115 #define CORE_dtsmlq_corner PCORE_dtsmlq_corner
116 #define CORE_dtsmlq PCORE_dtsmlq
118 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
119 double *A1,
int LDA1,
120 double *A2,
int LDA2,
123 double *WORK,
int LDWORK);
126 int k,
int ib,
int nb,
127 double *A1,
int lda1,
128 double *A2,
int lda2,
129 double *A3,
int lda3,
132 double *WORK,
int ldwork)
144 for (i = 0; i < m1; i++)
145 for (j = i; j < n1; j++){
146 *(WORK + i + j*ldwork) = *(A1 + i + j*lda1);
148 *(WORK + j + i*ldwork) = ( *(WORK + i + j*ldwork) );
153 for (j = 0; j < n2; j++)
154 for (i = 0; i < m2; i++){
155 *(WORK + j + (i + nb) * ldwork) = ( *(A2 + i + j*lda2) );
163 WORK, ldwork, A2, lda2,
165 WORK+3*nb*ldwork, ldwork);
168 for (i = 0; i < m3; i++)
169 for (j = i; j < n3; j++){
170 *(WORK + i + (j + 2*nb) * ldwork) = *(A3 + i + j*lda3);
172 *(WORK + j + (i + 2*nb) * ldwork) = ( *(WORK + i + (j + 2*nb) * ldwork) );
178 WORK+nb*ldwork, ldwork, WORK+2*nb*ldwork, ldwork,
180 WORK + 3*nb*ldwork, ldwork);
188 WORK, ldwork, WORK+nb*ldwork, ldwork,
190 WORK + 3*nb*ldwork, ldwork);
194 for (i = 0; i < m1; i++)
195 for (j = i; j < n1; j++)
196 *(A1 + i + j*lda1) = *(WORK + i + j*ldwork);
201 A2, lda2, WORK+2*nb*ldwork, ldwork,
203 WORK + 3*nb*ldwork, ldwork);
207 for (i = 0; i < m3; i++)
208 for (j = i; j < n3; j++)
209 *(A3 + i + j*lda3) = *(WORK + i + (j+ 2*nb) * ldwork);
220 int m1,
int n1,
int m2,
int n2,
int m3,
int n3,
int k,
int ib,
int nb,
221 double *A1,
int lda1,
222 double *A2,
int lda2,
223 double *A3,
int lda3,
230 sizeof(
int), &m1,
VALUE,
231 sizeof(
int), &n1,
VALUE,
232 sizeof(
int), &m2,
VALUE,
233 sizeof(
int), &n2,
VALUE,
234 sizeof(
int), &m3,
VALUE,
235 sizeof(
int), &n3,
VALUE,
236 sizeof(
int), &k,
VALUE,
237 sizeof(
int), &ib,
VALUE,
238 sizeof(
int), &nb,
VALUE,
240 sizeof(
int), &lda1,
VALUE,
241 sizeof(
double)*nb*nb, A2,
INOUT,
242 sizeof(
int), &lda2,
VALUE,
244 sizeof(
int), &lda3,
VALUE,
245 sizeof(
double)*nb*nb, V,
INPUT,
246 sizeof(
int), &ldv,
VALUE,
247 sizeof(
double)*ib*nb, T,
INPUT,
248 sizeof(
int), &ldt,
VALUE,
249 sizeof(
double)*4*nb*nb, NULL,
SCRATCH,
250 sizeof(
int), &ldwork,
VALUE,
262 #if defined(PLASMA_HAVE_WEAK)
263 #pragma weak CORE_dtsmlq_corner_quark = PCORE_dtsmlq_corner_quark
264 #define CORE_dtsmlq_corner_quark PCORE_dtsmlq_corner_quark
290 quark_unpack_args_21(quark, m1, n1, m2, n2, m3, n3, k, ib, nb,
291 A1, lda1, A2, lda2, A3, lda3, V, ldv, T, ldt, WORK, ldwork);
294 A1, lda1, A2, lda2, A3, lda3, V, ldv, T, ldt, WORK, ldwork);