aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne H Juul <arnej27959@users.noreply.github.com>2018-03-02 22:37:43 +0100
committerGitHub <noreply@github.com>2018-03-02 22:37:43 +0100
commit1e8517519b692850cbb1365b563ef8cb6ea1fbb6 (patch)
tree64c6d0f9dbe9cd0fbdeb328ba4f3636c814c8eac
parent1295c05a17b50a3841ed79a4b4a8d1c96e80f770 (diff)
parent51ae60d41ddd496b10ad61e9af350064643ec749 (diff)
Merge pull request #5198 from vespa-engine/arnej/mark-xw-product-as-mutable
mark output from XW product as mutable
-rw-r--r--eval/src/tests/tensor/dense_xw_product_function/dense_xw_product_function_test.cpp1
-rw-r--r--eval/src/vespa/eval/tensor/dense/dense_xw_product_function.h2
2 files changed, 3 insertions, 0 deletions
diff --git a/eval/src/tests/tensor/dense_xw_product_function/dense_xw_product_function_test.cpp b/eval/src/tests/tensor/dense_xw_product_function/dense_xw_product_function_test.cpp
index 01abad343ae..536dd95de9c 100644
--- a/eval/src/tests/tensor/dense_xw_product_function/dense_xw_product_function_test.cpp
+++ b/eval/src/tests/tensor/dense_xw_product_function/dense_xw_product_function_test.cpp
@@ -63,6 +63,7 @@ void verify_optimized(const vespalib::string &expr, size_t vec_size, size_t res_
EXPECT_EQUAL(fixture.result(), EvalFixture::ref(expr, param_repo));
auto info = fixture.find_all<DenseXWProductFunction>();
ASSERT_EQUAL(info.size(), 1u);
+ EXPECT_TRUE(info[0]->result_is_mutable());
EXPECT_EQUAL(info[0]->vectorSize(), vec_size);
EXPECT_EQUAL(info[0]->resultSize(), res_size);
EXPECT_EQUAL(info[0]->matrixHasCommonDimensionInnermost(), happy);
diff --git a/eval/src/vespa/eval/tensor/dense/dense_xw_product_function.h b/eval/src/vespa/eval/tensor/dense/dense_xw_product_function.h
index 221c3891775..100d5c4e247 100644
--- a/eval/src/vespa/eval/tensor/dense/dense_xw_product_function.h
+++ b/eval/src/vespa/eval/tensor/dense/dense_xw_product_function.h
@@ -43,6 +43,8 @@ public:
~DenseXWProductFunction() {}
+ bool result_is_mutable() const override { return true; }
+
size_t vectorSize() const { return _vectorSize; }
size_t resultSize() const { return _resultSize; }