comparison liboctave/ChangeLog @ 9546:1beb23d2b892

optimize op= in common cases
author Jaroslav Hajek <highegg@gmail.com>
date Wed, 19 Aug 2009 13:47:59 +0200
parents baeecd69fd44
children e5f7aee2ab8c
comparison
equal deleted inserted replaced
9545:8670e55078fd 9546:1beb23d2b892
1 2009-08-19 Jaroslav Hajek <highegg@gmail.com>
2
3 * Array.cc (Array<T>::clear): New method.
4 * Array.h: Declare it.
5 * MArray-decl.h (MARRAY_OP_ASSIGN_DECLS1, MARRAY_OP_ASSIGN_FWD_DECLS1,
6 MARRAY_OP_ASSIGN_FRIENDS1, MARRAY_OP_ASSIGN_FWD_DEFS1): New macros.
7 (MARRAY_OPS_FORWARD_DECLS, MARRAY_OPS_FRIEND_DECLS): Use them.
8 * MArray-defs.h (MARRAY_OP_ASSIGN_DEFS1): New macro.
9 (INSTANTIATE_MARRAY_FRIENDS): Use it.
10 (INSTANTIATE_MARRAY2_FRIENDS): Use it.
11 (INSTANTIATE_MARRAYN_FRIENDS): Use it.
12 * MArray.cc (operator+=, operator-=):
13 Operate out-of-place when this is shared copy.
14 (operator*=, operator/=): New operator overloads.
15 * MArray2.cc: Ditto.
16 * MArrayN.cc: Ditto.
17 * CNDArray.cc (operator *= (ComplexNDArray&, double),
18 operator /= (ComplexNDArray&, double)): New operators.
19 * CNDArray.h: Declare them.
20 * fCNDArray.cc (operator *= (FloatComplexNDArray&, double),
21 operator /= (FloatComplexNDArray&, double)): New operators.
22 * fCNDArray.h: Declare them.
23
1 2009-08-17 John W. Eaton <jwe@octave.org> 24 2009-08-17 John W. Eaton <jwe@octave.org>
2 25
3 * Makefile.in (LINK_DEPS): List LIBS last. 26 * Makefile.in (LINK_DEPS): List LIBS last.
4 27
5 2009-08-16 Jaroslav Hajek <highegg@gmail.com> 28 2009-08-16 Jaroslav Hajek <highegg@gmail.com>