Mercurial > octave-nkf
changeset 9198:3b9aacf07744
optimize accumarray with constant ranges
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Fri, 15 May 2009 07:07:40 +0200 |
parents | 3c27a0340a64 |
children | 399884c9d4a1 |
files | src/ChangeLog src/data.cc |
diffstat | 2 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog Thu May 14 16:03:58 2009 -0700 +++ b/src/ChangeLog Fri May 15 07:07:40 2009 +0200 @@ -1,3 +1,7 @@ +2009-05-12 Jaroslav Hajek <highegg@gmail.com> + + * data.cc (F__accumarray_sum__): Optimize the constant range case. + 2009-05-11 John W. Eaton <jwe@octave.org> * sparse-xdiv.cc (do_rightdiv_sm_dm, do_leftdiv_dm_sm):
--- a/src/data.cc Thu May 14 16:03:58 2009 -0700 +++ b/src/data.cc Fri May 15 07:07:40 2009 +0200 @@ -5879,6 +5879,13 @@ if (! error_state) { octave_value vals = args(1); + if (vals.is_range ()) + { + Range r = vals.range_value (); + if (r.inc () == 0) + vals = r.base (); + } + if (vals.is_single_type ()) { if (vals.is_complex_type ())