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 diff
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -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
+++ b/src/data.cc
@@ -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 ())