Mercurial > octave
changeset 32580:324c67c33dbd
mx-inlines.cc: Avoid unnecessary copy of dim_vector for performance (bug #64962)
* mx-inlinces.cc (do_mm_binary_op, do_mm_inplace_op): Use constant reference to
dim_vector of inputs rather than creating copies.
author | Petter .T <petter.vilhelm@gmail.com> |
---|---|
date | Thu, 30 Nov 2023 23:04:15 +0100 |
parents | 19f51c7fa341 |
children | 9c5b8e82bbae |
files | liboctave/operators/mx-inlines.cc |
diffstat | 1 files changed, 4 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/liboctave/operators/mx-inlines.cc Sun Dec 10 18:01:29 2023 +0100 +++ b/liboctave/operators/mx-inlines.cc Thu Nov 30 23:04:15 2023 +0100 @@ -501,8 +501,8 @@ void (*op2) (std::size_t, R *, const X *, Y), const char *opname) { - dim_vector dx = x.dims (); - dim_vector dy = y.dims (); + const dim_vector &dx = x.dims (); + const dim_vector &dy = y.dims (); if (dx == dy) { Array<R> r (dx); @@ -544,8 +544,8 @@ void (*op1) (std::size_t, R *, X), const char *opname) { - dim_vector dr = r.dims (); - dim_vector dx = x.dims (); + const dim_vector &dr = r.dims (); + const dim_vector &dx = x.dims (); if (dr == dx) op (r.numel (), r.fortran_vec (), x.data ()); else if (is_valid_inplace_bsxfun (opname, dr, dx))