Mercurial > octave
diff src/OPERATORS/op-fcm-fcs.cc @ 9546:1beb23d2b892
optimize op= in common cases
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Wed, 19 Aug 2009 13:47:59 +0200 |
parents | eb63fbe60fab |
children | 319e2ab9b8ae |
line wrap: on
line diff
--- a/src/OPERATORS/op-fcm-fcs.cc Mon Aug 17 14:46:18 2009 +0200 +++ b/src/OPERATORS/op-fcm-fcs.cc Wed Aug 19 13:47:59 2009 +0200 @@ -134,6 +134,15 @@ DEFNDASSIGNOP_FN (dbl_assign, complex_matrix, float_complex, complex, assign) +DEFNDASSIGNOP_OP (assign_add, float_complex_matrix, float_complex_scalar, + float_complex, +=) +DEFNDASSIGNOP_OP (assign_sub, float_complex_matrix, float_complex_scalar, + float_complex, -=) +DEFNDASSIGNOP_OP (assign_mul, float_complex_matrix, float_complex_scalar, + float_complex, *=) +DEFNDASSIGNOP_OP (assign_div, float_complex_matrix, float_complex_scalar, + float_complex, /=) + void install_fcm_fcs_ops (void) { @@ -176,6 +185,15 @@ octave_float_complex, assign); INSTALL_ASSIGNOP (op_asn_eq, octave_complex_matrix, octave_float_complex, dbl_assign); + + INSTALL_ASSIGNOP (op_add_eq, octave_float_complex_matrix, + octave_float_complex_scalar, assign_add); + INSTALL_ASSIGNOP (op_sub_eq, octave_float_complex_matrix, + octave_float_complex_scalar, assign_sub); + INSTALL_ASSIGNOP (op_mul_eq, octave_float_complex_matrix, + octave_float_complex_scalar, assign_mul); + INSTALL_ASSIGNOP (op_div_eq, octave_float_complex_matrix, + octave_float_complex_scalar, assign_div); } /*