90 int NB, IB, IBNB, Am, MT, KT;
115 plasma_error(
"PLASMA_zunmqr",
"illegal value of trans");
126 if ( (K < 0) || (K > Am) ) {
130 if ( LDA <
max(1, Am) ) {
134 if (LDB <
max(1, M)) {
140 if (
min(M,
min(N, K)) == 0)
154 MT = (Am%NB==0) ? (Am/NB) : (Am/NB+1);
155 KT = (K%NB==0) ? (K /NB) : (K /NB+1);
163 MT*IB, KT*NB, 0, 0, MT*IB, KT*NB);
170 MT*IB, 2*KT*NB, 0, 0, MT*IB, 2*KT*NB);
175 plasma_zooplap2tile( descA, A, NB, NB, LDA, K, 0, 0, Am, K,
plasma_desc_mat_free(&(descA)) );
176 plasma_zooplap2tile( descB, B, NB, NB, LDB, N, 0, 0, M, N,
plasma_desc_mat_free(&(descA));
plasma_desc_mat_free(&(descB)));
184 side, trans, &descA, &descT, &descB, sequence, &request);
197 status = sequence->
status;
259 if (plasma == NULL) {
266 status = sequence->
status;
308 if (plasma == NULL) {
312 if (sequence == NULL) {
316 if (request == NULL) {
328 plasma_error(
"PLASMA_zunmqr_Tile",
"invalid first descriptor");
332 plasma_error(
"PLASMA_zunmqr_Tile",
"invalid second descriptor");
336 plasma_error(
"PLASMA_zunmqr_Tile",
"invalid third descriptor");
340 if (descA.
nb != descA.
mb || descB.
nb != descB.
mb) {
341 plasma_error(
"PLASMA_zunmqr_Tile",
"only square tiles supported");