diff --git a/src/base/blas.rs b/src/base/blas.rs index beb83c4b..1875e734 100644 --- a/src/base/blas.rs +++ b/src/base/blas.rs @@ -565,6 +565,7 @@ where ); if ncols2 == 0 { + self.fill(N::zero()); return; } @@ -1006,6 +1007,12 @@ where N: Scalar + Zero + ClosedAdd + ClosedMul "gemm: dimensions mismatch for addition." ); + + if a.ncols() == 0 { + self.fill(N::zero()); + return; + } + // We assume large matrices will be Dynamic but small matrices static. // We could use matrixmultiply for large statically-sized matrices but the performance // threshold to activate it would be different from SMALL_DIM because our code optimizes