diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2018-01-09 23:20:13 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2018-01-09 23:20:13 +0100 |
commit | 1b305b6f01bd0df3fbd655d069f9b24b6a41d842 (patch) | |
tree | f05d16b6b35838d01c1d4079e04487034248bf2c /eval | |
parent | 0a8534171a39c00f7d1938c14eb4ec96a0c02692 (diff) |
Hide the calculation inside the address context.
Diffstat (limited to 'eval')
-rw-r--r-- | eval/src/vespa/eval/tensor/dense/dense_tensor_address_combiner.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor_address_combiner.h b/eval/src/vespa/eval/tensor/dense/dense_tensor_address_combiner.h index 5b7c2cb4cb4..845ec767094 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_tensor_address_combiner.h +++ b/eval/src/vespa/eval/tensor/dense/dense_tensor_address_combiner.h @@ -29,6 +29,7 @@ private: public: AddressContext(const eval::ValueType &type, CellsRef cells); size_type dimSize(uint32_t dim) const { return _type.dimensions()[dim].size; } + size_type wholeDimStep(uint32_t dim) const { return _accumulatedSize[dim] * dimSize(dim); } double cell() const { return cell(index()); } double cell(size_t cellIdx) const { return _cells[cellIdx]; } size_t index() const { @@ -92,7 +93,7 @@ public: rightCellIdx += _rightAddress._accumulatedSize[rdim]; } cindex = 0; - rightCellIdx -= _rightAddress._accumulatedSize[rdim] * _rightAddress.dimSize(rdim); + rightCellIdx -= _rightAddress.wholeDimStep(rdim); curDimension--; } else { if (cindex < _rightAddress.dimSize(rdim)) { @@ -100,7 +101,7 @@ public: rightCellIdx += _rightAddress._accumulatedSize[rdim]; curDimension++; } else { - rightCellIdx -= _rightAddress._accumulatedSize[rdim] * _rightAddress.dimSize(rdim); + rightCellIdx -= _rightAddress.wholeDimStep(rdim); cindex = 0; curDimension--; } |