int P_dgesvd( const char *jobu, const char *jobvt, int M, int N, double *A, int LDA, double *S, double *U, int LDU, double *VT, int LDVT ) { PLASMA_enum ju, jvt; PLASMA_desc *descT; int info; /* if (*jobu != 'N') { return(-1); } if (*jobvt != 'N') { return(-2); } */ ju = PlasmaNoVec; jvt = PlasmaNoVec; PLASMA_Alloc_Workspace_dgesvd(M, N, &descT); info = PLASMA_dgesvd(ju, jvt, M, N, A, LDA, S, descT, U, LDU, VT, LDVT); PLASMA_Dealloc_Handle_Tile(&descT); return(info); }
void PLASMA_ALLOC_WORKSPACE_DGESVD(int *M, int *N, intptr_t **T, int *INFO) { *INFO = PLASMA_Alloc_Workspace_dgesvd(*M, *N, (PLASMA_desc **)T); }