Skip to content

Commit

Permalink
Modify GEMM to handle m=0, n=0, and k=0 cases.
Browse files Browse the repository at this point in the history
  • Loading branch information
eamartin committed Jul 12, 2015
1 parent 6b48a21 commit 3bb0726
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions blas/level3_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,18 @@ int EIGEN_BLAS_FUNC(gemm)(char *opa, char *opb, int *m, int *n, int *k, RealScal
if(info)
return xerbla_(SCALAR_SUFFIX_UP"GEMM ",&info,6);

if (*m == 0 || *n == 0)
return 0;

if(beta!=Scalar(1))
{
if(beta==Scalar(0)) matrix(c, *m, *n, *ldc).setZero();
else matrix(c, *m, *n, *ldc) *= beta;
}

if(*k == 0)
return 0;

internal::gemm_blocking_space<ColMajor,Scalar,Scalar,Dynamic,Dynamic,Dynamic> blocking(*m,*n,*k,1,true);

int code = OP(*opa) | (OP(*opb) << 2);
Expand Down

0 comments on commit 3bb0726

Please sign in to comment.