Mercurial > hg > octave-nkf
diff liboctave/CColVector.cc @ 9625:cbabf50315ca
optimize Matrix*ColumnVector
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Sun, 06 Sep 2009 11:00:19 +0200 |
parents | 3d6a9aea2aea |
children | f80c566bc751 |
line wrap: on
line diff
--- a/liboctave/CColVector.cc +++ b/liboctave/CColVector.cc @@ -340,20 +340,17 @@ gripe_nonconformant ("operator *", nr, nc, a_len, 1); else { - if (nc == 0 || nr == 0) - retval.resize (nr, 0.0); - else - { - octave_idx_type ld = nr; + retval.clear (nr); + + if (nr != 0) + { + Complex *y = retval.fortran_vec (); - retval.resize (nr); - Complex *y = retval.fortran_vec (); - - F77_XFCN (zgemv, ZGEMV, (F77_CONST_CHAR_ARG2 ("N", 1), - nr, nc, 1.0, m.data (), ld, - a.data (), 1, 0.0, y, 1 - F77_CHAR_ARG_LEN (1))); - } + F77_XFCN (zgemv, ZGEMV, (F77_CONST_CHAR_ARG2 ("N", 1), + nr, nc, 1.0, m.data (), nr, + a.data (), 1, 0.0, y, 1 + F77_CHAR_ARG_LEN (1))); + } } return retval;