84 #if defined(PLASMA_HAVE_WEAK)
85 #pragma weak CORE_dtsqrt = PCORE_dtsqrt
86 #define CORE_dtsqrt PCORE_dtsqrt
87 #define CORE_dtsmqr PCORE_dtsmqr
89 int M1,
int N1,
int M2,
int N2,
int K,
int IB,
94 double *WORK,
int LDWORK);
101 double *
TAU,
double *WORK)
103 static double zone = 1.0;
104 static double zzero = 0.0;
122 if ((LDA2 <
max(1,M)) && (M > 0)) {
128 if ((M == 0) || (N == 0) || (IB == 0))
131 for(ii = 0; ii < N; ii += IB) {
133 for(i = 0; i < sb; i++) {
138 LAPACKE_dlarfg_work(M+1, &A1[LDA1*(ii+i)+ii+i], &A2[LDA2*(ii+i)], 1, &TAU[ii+i]);
144 alpha = -(TAU[ii+i]);
147 &A1[LDA1*(ii+i+1)+(ii+i)], LDA1,
150 LAPACKE_dlacgv_work(sb-i-1, WORK, 1);
155 (zone), &A2[LDA2*(ii+i+1)], LDA2,
159 LAPACKE_dlacgv_work(sb-i-1, WORK, 1 );
164 &A1[LDA1*(ii+i+1)+ii+i], LDA1);
166 LAPACKE_dlacgv_work(sb-i-1, WORK, 1 );
172 &A2[LDA2*(ii+i+1)], LDA2);
180 (alpha), &A2[LDA2*ii], LDA2,
182 (zzero), &T[LDT*(ii+i)], 1);
190 T[LDT*(ii+i)+i] = TAU[ii+i];
195 sb, N-(ii+sb), M, N-(ii+sb), IB, IB,
196 &A1[LDA1*(ii+sb)+ii], LDA1,
197 &A2[LDA2*(ii+sb)], LDA2,
210 int m,
int n,
int ib,
int nb,
211 double *A1,
int lda1,
212 double *A2,
int lda2,
217 sizeof(
int), &m,
VALUE,
218 sizeof(
int), &n,
VALUE,
219 sizeof(
int), &ib,
VALUE,
221 sizeof(
int), &lda1,
VALUE,
223 sizeof(
int), &lda2,
VALUE,
224 sizeof(
double)*ib*nb, T,
OUTPUT,
225 sizeof(
int), &ldt,
VALUE,
226 sizeof(
double)*nb, NULL,
SCRATCH,
227 sizeof(
double)*ib*nb, NULL,
SCRATCH,
234 #if defined(PLASMA_HAVE_WEAK)
235 #pragma weak CORE_dtsqrt_quark = PCORE_dtsqrt_quark
236 #define CORE_dtsqrt_quark PCORE_dtsqrt_quark
252 quark_unpack_args_11(quark, m, n, ib, A1, lda1, A2, lda2, T, ldt, TAU, WORK);
253 CORE_dtsqrt(m, n, ib, A1, lda1, A2, lda2, T, ldt, TAU, WORK);