| @@ -43,6 +43,7 @@ lapack_int LAPACKE_ztpmqrt( int matrix_layout, char side, char trans, | |||||
| { | { | ||||
| lapack_int ncols_a, nrows_a; | lapack_int ncols_a, nrows_a; | ||||
| lapack_int nrows_v; | lapack_int nrows_v; | ||||
| lapack_int lwork; | |||||
| lapack_int info = 0; | lapack_int info = 0; | ||||
| lapack_complex_double* work = NULL; | lapack_complex_double* work = NULL; | ||||
| if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) { | if( matrix_layout != LAPACK_COL_MAJOR && matrix_layout != LAPACK_ROW_MAJOR ) { | ||||
| @@ -71,8 +72,10 @@ lapack_int LAPACKE_ztpmqrt( int matrix_layout, char side, char trans, | |||||
| } | } | ||||
| #endif | #endif | ||||
| /* Allocate memory for working array(s) */ | /* Allocate memory for working array(s) */ | ||||
| lwork = LAPACKE_lsame( side, 'L' ) ? MAX(1,nb) * MAX(1,n) : | |||||
| ( LAPACKE_lsame( side, 'R' ) ? MAX(1,m) * MAX(1,nb) : 0 ); | |||||
| work = (lapack_complex_double*) | work = (lapack_complex_double*) | ||||
| LAPACKE_malloc( sizeof(lapack_complex_double) * MAX(1,m) * MAX(1,nb) ); | |||||
| LAPACKE_malloc( sizeof(lapack_complex_double) * lwork ); | |||||
| if( work == NULL ) { | if( work == NULL ) { | ||||
| info = LAPACK_WORK_MEMORY_ERROR; | info = LAPACK_WORK_MEMORY_ERROR; | ||||
| goto exit_level_0; | goto exit_level_0; | ||||