Mercurial > hg > octave-nkf
diff src/OPERATORS/op-m-m.cc @ 9546:1beb23d2b892
optimize op= in common cases
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Wed, 19 Aug 2009 13:47:59 +0200 |
parents | 6769599e3458 |
children | 3a1dd361f978 |
line wrap: on
line diff
--- a/src/OPERATORS/op-m-m.cc +++ b/src/OPERATORS/op-m-m.cc @@ -138,6 +138,9 @@ DEFNULLASSIGNOP_FN (null_assign, matrix, delete_elements) +DEFNDASSIGNOP_OP (assign_add, matrix, matrix, array, +=) +DEFNDASSIGNOP_OP (assign_sub, matrix, matrix, array, -=) + CONVDECL (matrix_to_float_matrix) { CAST_CONV_ARG (const octave_matrix&); @@ -193,6 +196,9 @@ INSTALL_ASSIGNOP (op_asn_eq, octave_matrix, octave_null_str, null_assign); INSTALL_ASSIGNOP (op_asn_eq, octave_matrix, octave_null_sq_str, null_assign); + INSTALL_ASSIGNOP (op_add_eq, octave_matrix, octave_matrix, assign_add); + INSTALL_ASSIGNOP (op_sub_eq, octave_matrix, octave_matrix, assign_sub); + INSTALL_CONVOP (octave_matrix, octave_float_matrix, matrix_to_float_matrix); }