aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2016-09-11 15:00:38 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2016-09-11 15:00:38 +0000
commit1262673ffcc013191dd7d9f08c9bc03f52b58ef6 (patch)
tree38249aa252abe01306ce86494579e59376331c8a
parentfe723e684f6bff17d698131806d3ae11688b9e17 (diff)
Split out tensor and llvm part of eval to avoid bringing in llvm everywhere where it is not needed.
-rw-r--r--searchcommon/CMakeLists.txt1
-rw-r--r--searchlib/CMakeLists.txt2
-rw-r--r--searchlib/src/apps/vespa-ranking-expression-analyzer/vespa-ranking-expression-analyzer.cpp8
-rw-r--r--searchlib/src/vespa/searchlib/features/element_similarity_feature.cpp4
-rw-r--r--searchlib/src/vespa/searchlib/features/rankingexpressionfeature.cpp70
-rw-r--r--searchlib/src/vespa/searchlib/features/rankingexpressionfeature.h60
-rw-r--r--staging_vespalib/src/tests/benchmark/CMakeLists.txt1
-rw-r--r--storage/CMakeLists.txt1
-rw-r--r--vespalib/CMakeLists.txt4
-rw-r--r--vespalib/src/apps/eval_expr/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/eval/compile_cache/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/eval/compile_cache/compile_cache_test.cpp2
-rw-r--r--vespalib/src/tests/eval/compiled_function/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/eval/compiled_function/compiled_function_test.cpp2
-rw-r--r--vespalib/src/tests/eval/function_speed/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/eval/function_speed/function_speed_test.cpp2
-rw-r--r--vespalib/src/tests/eval/gbdt/CMakeLists.txt2
-rw-r--r--vespalib/src/tests/eval/gbdt/gbdt_benchmark.cpp8
-rw-r--r--vespalib/src/tests/eval/gbdt/gbdt_test.cpp8
-rw-r--r--vespalib/src/tests/eval/tensor/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/compact_tensor_builder/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/compact_tensor_v2_builder/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/dense_tensor_builder/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/dense_tensor_operations/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/join_tensor_addresses/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/simple_tensor_builder/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_address/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_address_element_iterator/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_conformance/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_function/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_mapper/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_operations/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_performance/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_serialization/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_slime_serialization/CMakeLists.txt1
-rw-r--r--vespalib/src/tests/tensor/tensor_type/CMakeLists.txt1
-rw-r--r--vespalib/src/vespa/vespalib/eval/CMakeLists.txt7
-rw-r--r--vespalib/src/vespa/vespalib/eval/delete_node.cpp1
-rw-r--r--vespalib/src/vespa/vespalib/eval/function.h2
-rw-r--r--vespalib/src/vespa/vespalib/eval/key_gen.cpp2
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/CMakeLists.txt12
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/compile_cache.cpp (renamed from vespalib/src/vespa/vespalib/eval/compile_cache.cpp)2
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/compile_cache.h (renamed from vespalib/src/vespa/vespalib/eval/compile_cache.h)0
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/compiled_function.cpp (renamed from vespalib/src/vespa/vespalib/eval/compiled_function.cpp)0
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/compiled_function.h (renamed from vespalib/src/vespa/vespalib/eval/compiled_function.h)4
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.cpp (renamed from vespalib/src/vespa/vespalib/eval/deinline_forest.cpp)0
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.h (renamed from vespalib/src/vespa/vespalib/eval/deinline_forest.h)0
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/gbdt.cpp (renamed from vespalib/src/vespa/vespalib/eval/gbdt.cpp)6
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/gbdt.h (renamed from vespalib/src/vespa/vespalib/eval/gbdt.h)0
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.cpp (renamed from vespalib/src/vespa/vespalib/eval/llvm_wrapper.cpp)6
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.h (renamed from vespalib/src/vespa/vespalib/eval/llvm_wrapper.h)2
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/vm_forest.cpp (renamed from vespalib/src/vespa/vespalib/eval/vm_forest.cpp)6
-rw-r--r--vespalib/src/vespa/vespalib/eval/llvm/vm_forest.h (renamed from vespalib/src/vespa/vespalib/eval/vm_forest.h)0
-rw-r--r--vespalib/src/vespa/vespalib/tensor/tensor_type.cpp12
-rw-r--r--vespalib/src/vespa/vespalib/tensor/tensor_type.h4
56 files changed, 136 insertions, 127 deletions
diff --git a/searchcommon/CMakeLists.txt b/searchcommon/CMakeLists.txt
index 8418f32e736..d4b3d4beb73 100644
--- a/searchcommon/CMakeLists.txt
+++ b/searchcommon/CMakeLists.txt
@@ -4,6 +4,7 @@ vespa_define_module(
fastos
vespalog
vespalib
+ vespalib_vespalib_tensor
config_cloudconfig
configdefinitions
diff --git a/searchlib/CMakeLists.txt b/searchlib/CMakeLists.txt
index c99c3c36bd1..c03969bc928 100644
--- a/searchlib/CMakeLists.txt
+++ b/searchlib/CMakeLists.txt
@@ -4,6 +4,7 @@ vespa_define_module(
fastos
vespalog
vespalib
+ vespalib_vespalib_eval_llvm
staging_vespalib
fnet
configdefinitions
@@ -16,6 +17,7 @@ vespa_define_module(
EXTERNAL_DEPENDS
icui18n
+ rt
LIBS
src/vespa/searchlib
diff --git a/searchlib/src/apps/vespa-ranking-expression-analyzer/vespa-ranking-expression-analyzer.cpp b/searchlib/src/apps/vespa-ranking-expression-analyzer/vespa-ranking-expression-analyzer.cpp
index 50de984e392..0766bac2465 100644
--- a/searchlib/src/apps/vespa-ranking-expression-analyzer/vespa-ranking-expression-analyzer.cpp
+++ b/searchlib/src/apps/vespa-ranking-expression-analyzer/vespa-ranking-expression-analyzer.cpp
@@ -4,16 +4,16 @@
#include <map>
#include <vespa/searchlib/features/rankingexpression/feature_name_extractor.h>
#include <vector>
-#include <vespa/vespalib/eval/compiled_function.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
#include <vespa/vespalib/eval/function.h>
#include <vespa/vespalib/eval/interpreted_function.h>
#include <vespa/vespalib/eval/basic_nodes.h>
#include <vespa/vespalib/eval/call_nodes.h>
#include <vespa/vespalib/eval/operator_nodes.h>
#include <vespa/vespalib/util/benchmark_timer.h>
-#include <vespa/vespalib/eval/gbdt.h>
-#include <vespa/vespalib/eval/vm_forest.h>
-#include <vespa/vespalib/eval/deinline_forest.h>
+#include <vespa/vespalib/eval/llvm/gbdt.h>
+#include <vespa/vespalib/eval/llvm/vm_forest.h>
+#include <vespa/vespalib/eval/llvm/deinline_forest.h>
#include <vespa/vespalib/tensor/default_tensor_engine.h>
#include <cmath>
diff --git a/searchlib/src/vespa/searchlib/features/element_similarity_feature.cpp b/searchlib/src/vespa/searchlib/features/element_similarity_feature.cpp
index a0b294d390e..8597184dcaf 100644
--- a/searchlib/src/vespa/searchlib/features/element_similarity_feature.cpp
+++ b/searchlib/src/vespa/searchlib/features/element_similarity_feature.cpp
@@ -4,8 +4,8 @@
#include <vespa/log/log.h>
LOG_SETUP(".features.elementsimilarity");
#include "element_similarity_feature.h"
-#include <vespa/vespalib/eval/compiled_function.h>
-#include <vespa/vespalib/eval/compile_cache.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
+#include <vespa/vespalib/eval/llvm/compile_cache.h>
namespace search {
namespace features {
diff --git a/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.cpp b/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.cpp
index 80724d2d3ba..6c90d6d4148 100644
--- a/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.cpp
+++ b/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.cpp
@@ -8,8 +8,9 @@ LOG_SETUP(".features.rankingexpression");
#include <vespa/searchlib/features/rankingexpression/feature_name_extractor.h>
#include <vespa/vespalib/util/stringfmt.h>
#include <vespa/vespalib/eval/function.h>
-#include <vespa/vespalib/eval/compiled_function.h>
-#include <vespa/vespalib/eval/compile_cache.h>
+#include <vespa/vespalib/eval/interpreted_function.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
+#include <vespa/vespalib/eval/llvm/compile_cache.h>
#include <vespa/vespalib/eval/node_types.h>
#include "rankingexpressionfeature.h"
#include "utils.h"
@@ -33,14 +34,47 @@ namespace features {
//-----------------------------------------------------------------------------
-CompiledRankingExpressionExecutor::CompiledRankingExpressionExecutor(const vespalib::eval::CompiledFunction &compiled_function)
+/**
+ * Implements the executor for compiled ranking expressions
+ **/
+class CompiledRankingExpressionExecutor : public fef::FeatureExecutor
+{
+private:
+ typedef double (*arr_function)(const double *);
+ arr_function _ranking_function;
+ std::vector<double> _params;
+
+public:
+ CompiledRankingExpressionExecutor(const CompiledFunction &compiled_function);
+ void execute(fef::MatchData &data) override;
+};
+
+//-----------------------------------------------------------------------------
+
+/**
+ * Implements the executor for interpreted ranking expressions (with tensor support)
+ **/
+class InterpretedRankingExpressionExecutor : public fef::FeatureExecutor
+{
+private:
+ InterpretedFunction::Context _context;
+ const InterpretedFunction &_function;
+
+public:
+ InterpretedRankingExpressionExecutor(const InterpretedFunction &function);
+ void execute(fef::MatchData &data) override;
+};
+
+//-----------------------------------------------------------------------------
+
+CompiledRankingExpressionExecutor::CompiledRankingExpressionExecutor(const CompiledFunction &compiled_function)
: _ranking_function(compiled_function.get_function()),
_params(compiled_function.num_params(), 0.0)
{
}
void
-CompiledRankingExpressionExecutor::execute(search::fef::MatchData &data)
+CompiledRankingExpressionExecutor::execute(fef::MatchData &data)
{
for (size_t i = 0; i < _params.size(); ++i) {
_params[i] = *data.resolveFeature(inputs()[i]);
@@ -50,14 +84,14 @@ CompiledRankingExpressionExecutor::execute(search::fef::MatchData &data)
//-----------------------------------------------------------------------------
-InterpretedRankingExpressionExecutor::InterpretedRankingExpressionExecutor(const vespalib::eval::InterpretedFunction &function)
+InterpretedRankingExpressionExecutor::InterpretedRankingExpressionExecutor(const InterpretedFunction &function)
: _context(),
_function(function)
{
}
void
-InterpretedRankingExpressionExecutor::execute(search::fef::MatchData &data)
+InterpretedRankingExpressionExecutor::execute(fef::MatchData &data)
{
_context.clear_params();
for (size_t i = 0; i < _function.num_params(); ++i) {
@@ -73,26 +107,26 @@ InterpretedRankingExpressionExecutor::execute(search::fef::MatchData &data)
//-----------------------------------------------------------------------------
RankingExpressionBlueprint::RankingExpressionBlueprint()
- : search::fef::Blueprint("rankingExpression"),
+ : fef::Blueprint("rankingExpression"),
_interpreted_function(),
_compile_token()
{
}
void
-RankingExpressionBlueprint::visitDumpFeatures(const search::fef::IIndexEnvironment &,
- search::fef::IDumpFeatureVisitor &) const
+RankingExpressionBlueprint::visitDumpFeatures(const fef::IIndexEnvironment &,
+ fef::IDumpFeatureVisitor &) const
{
// empty
}
bool
-RankingExpressionBlueprint::setup(const search::fef::IIndexEnvironment &env,
- const search::fef::ParameterList &params)
+RankingExpressionBlueprint::setup(const fef::IIndexEnvironment &env,
+ const fef::ParameterList &params)
{
// Retrieve and concatenate whatever config is available.
vespalib::string script = "";
- search::fef::Property property = env.getProperties().lookup(getName(), "rankingScript");
+ fef::Property property = env.getProperties().lookup(getName(), "rankingScript");
if (property.size() > 0) {
for (uint32_t i = 0; i < property.size(); ++i) {
script.append(property.getAt(i));
@@ -148,20 +182,20 @@ RankingExpressionBlueprint::setup(const search::fef::IIndexEnvironment &env,
return true;
}
-search::fef::Blueprint::UP
+fef::Blueprint::UP
RankingExpressionBlueprint::createInstance() const
{
- return search::fef::Blueprint::UP(new RankingExpressionBlueprint());
+ return fef::Blueprint::UP(new RankingExpressionBlueprint());
}
-search::fef::FeatureExecutor::LP
-RankingExpressionBlueprint::createExecutor(const search::fef::IQueryEnvironment &) const
+fef::FeatureExecutor::LP
+RankingExpressionBlueprint::createExecutor(const fef::IQueryEnvironment &) const
{
if (_interpreted_function) {
- return search::fef::FeatureExecutor::LP(new InterpretedRankingExpressionExecutor(*_interpreted_function));
+ return fef::FeatureExecutor::LP(new InterpretedRankingExpressionExecutor(*_interpreted_function));
}
assert(_compile_token.get() != nullptr); // will be nullptr for VERIFY_SETUP feature motivation
- return search::fef::FeatureExecutor::LP(new CompiledRankingExpressionExecutor(_compile_token->get()));
+ return fef::FeatureExecutor::LP(new CompiledRankingExpressionExecutor(_compile_token->get()));
}
//-----------------------------------------------------------------------------
diff --git a/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.h b/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.h
index af60c0de456..0451795b1c8 100644
--- a/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.h
+++ b/searchlib/src/vespa/searchlib/features/rankingexpressionfeature.h
@@ -3,9 +3,8 @@
#include <vespa/searchlib/fef/blueprint.h>
#include <vespa/searchlib/fef/featureexecutor.h>
-#include <vespa/vespalib/eval/compiled_function.h>
#include <vespa/vespalib/eval/interpreted_function.h>
-#include <vespa/vespalib/eval/compile_cache.h>
+#include <vespa/vespalib/eval/llvm/compile_cache.h>
namespace search {
namespace features {
@@ -13,42 +12,9 @@ namespace features {
//-----------------------------------------------------------------------------
/**
- * Implements the executor for compiled ranking expressions
- **/
-class CompiledRankingExpressionExecutor : public search::fef::FeatureExecutor
-{
-private:
- typedef double (*arr_function)(const double *);
- arr_function _ranking_function;
- std::vector<double> _params;
-
-public:
- CompiledRankingExpressionExecutor(const vespalib::eval::CompiledFunction &compiled_function);
- virtual void execute(search::fef::MatchData &data);
-};
-
-//-----------------------------------------------------------------------------
-
-/**
- * Implements the executor for interpreted ranking expressions (with tensor support)
- **/
-class InterpretedRankingExpressionExecutor : public search::fef::FeatureExecutor
-{
-private:
- vespalib::eval::InterpretedFunction::Context _context;
- const vespalib::eval::InterpretedFunction &_function;
-
-public:
- InterpretedRankingExpressionExecutor(const vespalib::eval::InterpretedFunction &function);
- virtual void execute(search::fef::MatchData &data);
-};
-
-//-----------------------------------------------------------------------------
-
-/**
* Implements the blueprint for ranking expression.
*/
-class RankingExpressionBlueprint : public search::fef::Blueprint
+class RankingExpressionBlueprint : public fef::Blueprint
{
private:
vespalib::eval::InterpretedFunction::UP _interpreted_function;
@@ -60,26 +26,16 @@ public:
*/
RankingExpressionBlueprint();
- // Inherit doc from Blueprint.
- virtual void visitDumpFeatures(const search::fef::IIndexEnvironment &env,
- search::fef::IDumpFeatureVisitor &visitor) const;
-
- // Inherit doc from Blueprint.
- virtual search::fef::Blueprint::UP createInstance() const;
-
- // Inherit doc from Blueprint.
- virtual search::fef::ParameterDescriptions getDescriptions() const {
- return search::fef::ParameterDescriptions().
+ void visitDumpFeatures(const fef::IIndexEnvironment &env, fef::IDumpFeatureVisitor &visitor) const override;
+ fef::Blueprint::UP createInstance() const override;
+ fef::ParameterDescriptions getDescriptions() const override {
+ return fef::ParameterDescriptions().
desc().
desc().string();
}
- // Inherit doc from Blueprint.
- virtual bool setup(const search::fef::IIndexEnvironment & env,
- const search::fef::ParameterList & params);
-
- // Inherit doc from Blueprint.
- virtual search::fef::FeatureExecutor::LP createExecutor(const search::fef::IQueryEnvironment &env) const;
+ bool setup(const fef::IIndexEnvironment & env, const fef::ParameterList & params) override;
+ fef::FeatureExecutor::LP createExecutor(const fef::IQueryEnvironment &env) const override;
};
//-----------------------------------------------------------------------------
diff --git a/staging_vespalib/src/tests/benchmark/CMakeLists.txt b/staging_vespalib/src/tests/benchmark/CMakeLists.txt
index 088cec756cf..f44d9326f25 100644
--- a/staging_vespalib/src/tests/benchmark/CMakeLists.txt
+++ b/staging_vespalib/src/tests/benchmark/CMakeLists.txt
@@ -5,6 +5,7 @@ vespa_add_executable(staging_vespalib_benchmark_test_app
testbase.cpp
DEPENDS
staging_vespalib
+ rt
)
vespa_add_test(NAME staging_vespalib_benchmark_test NO_VALGRIND COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_test.sh BENCHMARK
DEPENDS staging_vespalib_benchmark_test_app)
diff --git a/storage/CMakeLists.txt b/storage/CMakeLists.txt
index 8f5c12a39a1..bada6980b89 100644
--- a/storage/CMakeLists.txt
+++ b/storage/CMakeLists.txt
@@ -19,6 +19,7 @@ vespa_define_module(
EXTERNAL_DEPENDS
Judy
+ rt
LIBS
src/vespa/storage
diff --git a/vespalib/CMakeLists.txt b/vespalib/CMakeLists.txt
index 2114afc2266..cfd8cc87d90 100644
--- a/vespalib/CMakeLists.txt
+++ b/vespalib/CMakeLists.txt
@@ -4,9 +4,6 @@ vespa_define_module(
fastos
vespalog
- EXTERNAL_DEPENDS
- LLVM-3.4
-
APPS
src/apps/eval_expr
src/apps/make_fixture_macros
@@ -129,6 +126,7 @@ vespa_define_module(
src/vespa/vespalib/eval
src/vespa/vespalib/eval/test
src/vespa/vespalib/eval/value_cache
+ src/vespa/vespalib/eval/llvm
src/vespa/vespalib/geo
src/vespa/vespalib/io
src/vespa/vespalib/net
diff --git a/vespalib/src/apps/eval_expr/CMakeLists.txt b/vespalib/src/apps/eval_expr/CMakeLists.txt
index 41f6b34c9d6..f576295717a 100644
--- a/vespalib/src/apps/eval_expr/CMakeLists.txt
+++ b/vespalib/src/apps/eval_expr/CMakeLists.txt
@@ -5,4 +5,5 @@ vespa_add_executable(vespalib_eval_expr_app
INSTALL bin
DEPENDS
vespalib
+# vespalib_vespalib_eval
)
diff --git a/vespalib/src/tests/eval/compile_cache/CMakeLists.txt b/vespalib/src/tests/eval/compile_cache/CMakeLists.txt
index 21edf07e638..5484ee9580b 100644
--- a/vespalib/src/tests/eval/compile_cache/CMakeLists.txt
+++ b/vespalib/src/tests/eval/compile_cache/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_compile_cache_test_app TEST
compile_cache_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_eval_llvm
)
vespa_add_test(NAME vespalib_compile_cache_test_app COMMAND vespalib_compile_cache_test_app)
diff --git a/vespalib/src/tests/eval/compile_cache/compile_cache_test.cpp b/vespalib/src/tests/eval/compile_cache/compile_cache_test.cpp
index f6a125b3b25..1bbe9d2fa0b 100644
--- a/vespalib/src/tests/eval/compile_cache/compile_cache_test.cpp
+++ b/vespalib/src/tests/eval/compile_cache/compile_cache_test.cpp
@@ -1,6 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/vespalib/testkit/test_kit.h>
-#include <vespa/vespalib/eval/compile_cache.h>
+#include <vespa/vespalib/eval/llvm/compile_cache.h>
#include <vespa/vespalib/eval/key_gen.h>
#include <vespa/vespalib/eval/test/eval_spec.h>
#include <set>
diff --git a/vespalib/src/tests/eval/compiled_function/CMakeLists.txt b/vespalib/src/tests/eval/compiled_function/CMakeLists.txt
index ca947ab6fd3..c362811c93e 100644
--- a/vespalib/src/tests/eval/compiled_function/CMakeLists.txt
+++ b/vespalib/src/tests/eval/compiled_function/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_compiled_function_test_app TEST
compiled_function_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_eval_llvm
)
vespa_add_test(NAME vespalib_compiled_function_test_app COMMAND vespalib_compiled_function_test_app)
diff --git a/vespalib/src/tests/eval/compiled_function/compiled_function_test.cpp b/vespalib/src/tests/eval/compiled_function/compiled_function_test.cpp
index c9b33e8c54b..014682f802a 100644
--- a/vespalib/src/tests/eval/compiled_function/compiled_function_test.cpp
+++ b/vespalib/src/tests/eval/compiled_function/compiled_function_test.cpp
@@ -1,7 +1,7 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/vespalib/testkit/test_kit.h>
#include <vespa/vespalib/eval/function.h>
-#include <vespa/vespalib/eval/compiled_function.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
#include <vespa/vespalib/eval/test/eval_spec.h>
#include <vespa/vespalib/eval/basic_nodes.h>
#include <vespa/vespalib/util/stringfmt.h>
diff --git a/vespalib/src/tests/eval/function_speed/CMakeLists.txt b/vespalib/src/tests/eval/function_speed/CMakeLists.txt
index 629d3dad483..310de28cf43 100644
--- a/vespalib/src/tests/eval/function_speed/CMakeLists.txt
+++ b/vespalib/src/tests/eval/function_speed/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_function_speed_test_app TEST
function_speed_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_eval_llvm
)
vespa_add_test(NAME vespalib_function_speed_test_app NO_VALGRIND COMMAND vespalib_function_speed_test_app)
diff --git a/vespalib/src/tests/eval/function_speed/function_speed_test.cpp b/vespalib/src/tests/eval/function_speed/function_speed_test.cpp
index 784cfb157df..888d4c6cab8 100644
--- a/vespalib/src/tests/eval/function_speed/function_speed_test.cpp
+++ b/vespalib/src/tests/eval/function_speed/function_speed_test.cpp
@@ -1,7 +1,7 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/vespalib/testkit/test_kit.h>
#include <vespa/vespalib/eval/function.h>
-#include <vespa/vespalib/eval/compiled_function.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
#include <vespa/vespalib/util/benchmark_timer.h>
#include <vespa/vespalib/eval/interpreted_function.h>
diff --git a/vespalib/src/tests/eval/gbdt/CMakeLists.txt b/vespalib/src/tests/eval/gbdt/CMakeLists.txt
index c68614a5911..d6fc1c12e10 100644
--- a/vespalib/src/tests/eval/gbdt/CMakeLists.txt
+++ b/vespalib/src/tests/eval/gbdt/CMakeLists.txt
@@ -4,6 +4,7 @@ vespa_add_executable(vespalib_gbdt_test_app TEST
gbdt_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_eval_llvm
)
vespa_add_test(NAME vespalib_gbdt_test_app COMMAND vespalib_gbdt_test_app)
vespa_add_executable(vespalib_gbdt_benchmark_app
@@ -11,5 +12,6 @@ vespa_add_executable(vespalib_gbdt_benchmark_app
gbdt_benchmark.cpp
DEPENDS
vespalib
+ vespalib_vespalib_eval_llvm
)
vespa_add_test(NAME vespalib_gbdt_benchmark_app COMMAND vespalib_gbdt_benchmark_app BENCHMARK)
diff --git a/vespalib/src/tests/eval/gbdt/gbdt_benchmark.cpp b/vespalib/src/tests/eval/gbdt/gbdt_benchmark.cpp
index d1dacc39813..4c30135961e 100644
--- a/vespalib/src/tests/eval/gbdt/gbdt_benchmark.cpp
+++ b/vespalib/src/tests/eval/gbdt/gbdt_benchmark.cpp
@@ -1,10 +1,10 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/vespalib/testkit/test_kit.h>
-#include <vespa/vespalib/eval/gbdt.h>
-#include <vespa/vespalib/eval/vm_forest.h>
-#include <vespa/vespalib/eval/deinline_forest.h>
+#include <vespa/vespalib/eval/llvm/gbdt.h>
+#include <vespa/vespalib/eval/llvm/vm_forest.h>
+#include <vespa/vespalib/eval/llvm/deinline_forest.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
#include <vespa/vespalib/eval/function.h>
-#include <vespa/vespalib/eval/compiled_function.h>
#include <vespa/vespalib/util/benchmark_timer.h>
#include <vespa/vespalib/util/stringfmt.h>
#include "model.cpp"
diff --git a/vespalib/src/tests/eval/gbdt/gbdt_test.cpp b/vespalib/src/tests/eval/gbdt/gbdt_test.cpp
index c5643abfd85..d8fb2dfc281 100644
--- a/vespalib/src/tests/eval/gbdt/gbdt_test.cpp
+++ b/vespalib/src/tests/eval/gbdt/gbdt_test.cpp
@@ -1,11 +1,11 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/vespalib/testkit/test_kit.h>
-#include <vespa/vespalib/eval/gbdt.h>
-#include <vespa/vespalib/eval/vm_forest.h>
-#include <vespa/vespalib/eval/deinline_forest.h>
+#include <vespa/vespalib/eval/llvm/gbdt.h>
+#include <vespa/vespalib/eval/llvm/vm_forest.h>
+#include <vespa/vespalib/eval/llvm/deinline_forest.h>
#include <vespa/vespalib/eval/function.h>
+#include <vespa/vespalib/eval/llvm/compiled_function.h>
#include <vespa/vespalib/eval/interpreted_function.h>
-#include <vespa/vespalib/eval/compiled_function.h>
#include <vespa/vespalib/util/stringfmt.h>
#include "model.cpp"
diff --git a/vespalib/src/tests/eval/tensor/CMakeLists.txt b/vespalib/src/tests/eval/tensor/CMakeLists.txt
index 5a84d73f3a3..07d961385ee 100644
--- a/vespalib/src/tests/eval/tensor/CMakeLists.txt
+++ b/vespalib/src/tests/eval/tensor/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_eval_tensor_test_app TEST
eval_tensor_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_eval_tensor_test_app COMMAND vespalib_eval_tensor_test_app)
diff --git a/vespalib/src/tests/tensor/compact_tensor_builder/CMakeLists.txt b/vespalib/src/tests/tensor/compact_tensor_builder/CMakeLists.txt
index b19fdf2f296..c9cd5c0387d 100644
--- a/vespalib/src/tests/tensor/compact_tensor_builder/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/compact_tensor_builder/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_compact_tensor_builder_test_app TEST
compact_tensor_builder_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_compact_tensor_builder_test_app COMMAND vespalib_compact_tensor_builder_test_app)
diff --git a/vespalib/src/tests/tensor/compact_tensor_v2_builder/CMakeLists.txt b/vespalib/src/tests/tensor/compact_tensor_v2_builder/CMakeLists.txt
index 978e2f9142a..2bddcd3f021 100644
--- a/vespalib/src/tests/tensor/compact_tensor_v2_builder/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/compact_tensor_v2_builder/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_compact_tensor_v2_builder_test_app TEST
compact_tensor_v2_builder_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_compact_tensor_v2_builder_test_app COMMAND vespalib_compact_tensor_v2_builder_test_app)
diff --git a/vespalib/src/tests/tensor/dense_tensor_builder/CMakeLists.txt b/vespalib/src/tests/tensor/dense_tensor_builder/CMakeLists.txt
index ffccbf52ec6..9028138ab87 100644
--- a/vespalib/src/tests/tensor/dense_tensor_builder/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/dense_tensor_builder/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_dense_tensor_builder_test_app TEST
dense_tensor_builder_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_dense_tensor_builder_test_app COMMAND vespalib_dense_tensor_builder_test_app)
diff --git a/vespalib/src/tests/tensor/dense_tensor_operations/CMakeLists.txt b/vespalib/src/tests/tensor/dense_tensor_operations/CMakeLists.txt
index 2b23b2d5120..4805b8dcf22 100644
--- a/vespalib/src/tests/tensor/dense_tensor_operations/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/dense_tensor_operations/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_dense_tensor_operations_test_app TEST
dense_tensor_operations_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_dense_tensor_operations_test_app COMMAND vespalib_dense_tensor_operations_test_app)
diff --git a/vespalib/src/tests/tensor/join_tensor_addresses/CMakeLists.txt b/vespalib/src/tests/tensor/join_tensor_addresses/CMakeLists.txt
index 9b59c1de09a..6923cbc1133 100644
--- a/vespalib/src/tests/tensor/join_tensor_addresses/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/join_tensor_addresses/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_join_tensor_addresses_test_app TEST
join_tensor_addresses_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_join_tensor_addresses_test_app COMMAND vespalib_join_tensor_addresses_test_app)
diff --git a/vespalib/src/tests/tensor/simple_tensor_builder/CMakeLists.txt b/vespalib/src/tests/tensor/simple_tensor_builder/CMakeLists.txt
index 986492a8d37..cd67231d418 100644
--- a/vespalib/src/tests/tensor/simple_tensor_builder/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/simple_tensor_builder/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_simple_tensor_builder_test_app TEST
simple_tensor_builder_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_simple_tensor_builder_test_app COMMAND vespalib_simple_tensor_builder_test_app)
diff --git a/vespalib/src/tests/tensor/tensor/CMakeLists.txt b/vespalib/src/tests/tensor/tensor/CMakeLists.txt
index b6d2ae2f5ee..bf902d3a71d 100644
--- a/vespalib/src/tests/tensor/tensor/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_test_app TEST
tensor_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_test_app COMMAND vespalib_tensor_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_address/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_address/CMakeLists.txt
index 7ea369549da..43c45f913a5 100644
--- a/vespalib/src/tests/tensor/tensor_address/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_address/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_address_test_app TEST
tensor_address_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_address_test_app COMMAND vespalib_tensor_address_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_address_element_iterator/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_address_element_iterator/CMakeLists.txt
index 59a07942600..dad69af7ba3 100644
--- a/vespalib/src/tests/tensor/tensor_address_element_iterator/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_address_element_iterator/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_address_element_iterator_test_app TEST
tensor_address_element_iterator_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_address_element_iterator_test_app COMMAND vespalib_tensor_address_element_iterator_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_conformance/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_conformance/CMakeLists.txt
index 21a0469de64..0aaddb481cc 100644
--- a/vespalib/src/tests/tensor/tensor_conformance/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_conformance/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_tensor_conformance_test_app TEST
tensor_conformance_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_tensor_conformance_test_app COMMAND vespalib_tensor_tensor_conformance_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_function/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_function/CMakeLists.txt
index f849258d900..cca15f932c9 100644
--- a/vespalib/src/tests/tensor/tensor_function/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_function/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_function_test_app TEST
tensor_function_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_function_test_app COMMAND vespalib_tensor_function_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_mapper/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_mapper/CMakeLists.txt
index 91e0a185a3a..fb18883f7ef 100644
--- a/vespalib/src/tests/tensor/tensor_mapper/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_mapper/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_mapper_test_app TEST
tensor_mapper_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_mapper_test_app COMMAND vespalib_tensor_mapper_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_operations/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_operations/CMakeLists.txt
index 7bf856d388e..9b18e5384e6 100644
--- a/vespalib/src/tests/tensor/tensor_operations/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_operations/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_operations_test_app TEST
tensor_operations_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_operations_test_app COMMAND vespalib_tensor_operations_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_performance/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_performance/CMakeLists.txt
index 8dd2bc72d61..a2f041db265 100644
--- a/vespalib/src/tests/tensor/tensor_performance/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_performance/CMakeLists.txt
@@ -4,6 +4,7 @@ vespa_add_executable(vespalib_tensor_performance_test_app TEST
tensor_performance_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(
NAME vespalib_tensor_performance_test_app
diff --git a/vespalib/src/tests/tensor/tensor_serialization/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_serialization/CMakeLists.txt
index e0e64b12e7f..2fdf47d4738 100644
--- a/vespalib/src/tests/tensor/tensor_serialization/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_serialization/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_serialization_test_app TEST
tensor_serialization_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_serialization_test_app COMMAND vespalib_tensor_serialization_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_slime_serialization/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_slime_serialization/CMakeLists.txt
index e002450f280..a0323928fd3 100644
--- a/vespalib/src/tests/tensor/tensor_slime_serialization/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_slime_serialization/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_slime_serialization_test_app TEST
tensor_slime_serialization_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_slime_serialization_test_app COMMAND vespalib_tensor_slime_serialization_test_app)
diff --git a/vespalib/src/tests/tensor/tensor_type/CMakeLists.txt b/vespalib/src/tests/tensor/tensor_type/CMakeLists.txt
index feaa7a20c3c..e09801f3c79 100644
--- a/vespalib/src/tests/tensor/tensor_type/CMakeLists.txt
+++ b/vespalib/src/tests/tensor/tensor_type/CMakeLists.txt
@@ -4,5 +4,6 @@ vespa_add_executable(vespalib_tensor_type_test_app TEST
tensor_type_test.cpp
DEPENDS
vespalib
+ vespalib_vespalib_tensor
)
vespa_add_test(NAME vespalib_tensor_type_test_app COMMAND vespalib_tensor_type_test_app)
diff --git a/vespalib/src/vespa/vespalib/eval/CMakeLists.txt b/vespalib/src/vespa/vespalib/eval/CMakeLists.txt
index 3a94cff26c7..a3b4c39fbaa 100644
--- a/vespalib/src/vespa/vespalib/eval/CMakeLists.txt
+++ b/vespalib/src/vespa/vespalib/eval/CMakeLists.txt
@@ -3,15 +3,10 @@ vespa_add_library(vespalib_vespalib_eval OBJECT
SOURCES
basic_nodes.cpp
call_nodes.cpp
- compile_cache.cpp
- compiled_function.cpp
- deinline_forest.cpp
delete_node.cpp
function.cpp
- gbdt.cpp
interpreted_function.cpp
key_gen.cpp
- llvm_wrapper.cpp
node_types.cpp
operation.cpp
operator_nodes.cpp
@@ -24,6 +19,4 @@ vespa_add_library(vespalib_vespalib_eval OBJECT
value.cpp
value_type.cpp
value_type_spec.cpp
- vm_forest.cpp
- DEPENDS
)
diff --git a/vespalib/src/vespa/vespalib/eval/delete_node.cpp b/vespalib/src/vespa/vespalib/eval/delete_node.cpp
index c36c5864876..61204c890b2 100644
--- a/vespalib/src/vespa/vespalib/eval/delete_node.cpp
+++ b/vespalib/src/vespa/vespalib/eval/delete_node.cpp
@@ -4,7 +4,6 @@
#include "key_gen.h"
#include "node_visitor.h"
#include "node_traverser.h"
-#include "compiled_function.h"
namespace vespalib {
namespace eval {
diff --git a/vespalib/src/vespa/vespalib/eval/function.h b/vespalib/src/vespa/vespalib/eval/function.h
index ac097afb22e..6896be6b46b 100644
--- a/vespalib/src/vespa/vespalib/eval/function.h
+++ b/vespalib/src/vespa/vespalib/eval/function.h
@@ -14,6 +14,8 @@
namespace vespalib {
namespace eval {
+enum class PassParams { SEPARATE, ARRAY };
+
/**
* Interface used to perform custom symbol extraction. This is
* typically used by the ranking framework to extend what will be
diff --git a/vespalib/src/vespa/vespalib/eval/key_gen.cpp b/vespalib/src/vespa/vespalib/eval/key_gen.cpp
index 13795486142..d259eed791a 100644
--- a/vespalib/src/vespa/vespalib/eval/key_gen.cpp
+++ b/vespalib/src/vespa/vespalib/eval/key_gen.cpp
@@ -4,7 +4,7 @@
#include "key_gen.h"
#include "node_visitor.h"
#include "node_traverser.h"
-#include "compiled_function.h"
+#include "function.h"
namespace vespalib {
namespace eval {
diff --git a/vespalib/src/vespa/vespalib/eval/llvm/CMakeLists.txt b/vespalib/src/vespa/vespalib/eval/llvm/CMakeLists.txt
new file mode 100644
index 00000000000..73f2ffecf0b
--- /dev/null
+++ b/vespalib/src/vespa/vespalib/eval/llvm/CMakeLists.txt
@@ -0,0 +1,12 @@
+# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+vespa_add_library(vespalib_vespalib_eval_llvm
+ SOURCES
+ compile_cache.cpp
+ compiled_function.cpp
+ deinline_forest.cpp
+ gbdt.cpp
+ llvm_wrapper.cpp
+ vm_forest.cpp
+ DEPENDS
+ LLVM-3.4
+)
diff --git a/vespalib/src/vespa/vespalib/eval/compile_cache.cpp b/vespalib/src/vespa/vespalib/eval/llvm/compile_cache.cpp
index 2a104f87f84..1f7731da403 100644
--- a/vespalib/src/vespa/vespalib/eval/compile_cache.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/compile_cache.cpp
@@ -2,7 +2,7 @@
#include <vespa/fastos/fastos.h>
#include "compile_cache.h"
-#include "key_gen.h"
+#include <vespa/vespalib/eval/key_gen.h>
#include <thread>
namespace vespalib {
diff --git a/vespalib/src/vespa/vespalib/eval/compile_cache.h b/vespalib/src/vespa/vespalib/eval/llvm/compile_cache.h
index f137b37ba85..f137b37ba85 100644
--- a/vespalib/src/vespa/vespalib/eval/compile_cache.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/compile_cache.h
diff --git a/vespalib/src/vespa/vespalib/eval/compiled_function.cpp b/vespalib/src/vespa/vespalib/eval/llvm/compiled_function.cpp
index 957df7503c3..957df7503c3 100644
--- a/vespalib/src/vespa/vespalib/eval/compiled_function.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/compiled_function.cpp
diff --git a/vespalib/src/vespa/vespalib/eval/compiled_function.h b/vespalib/src/vespa/vespalib/eval/llvm/compiled_function.h
index 0c9e9a4a8fc..412c4c673cb 100644
--- a/vespalib/src/vespa/vespalib/eval/compiled_function.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/compiled_function.h
@@ -2,15 +2,13 @@
#pragma once
-#include "function.h"
+#include <vespa/vespalib/eval/function.h>
#include "gbdt.h"
#include "llvm_wrapper.h"
namespace vespalib {
namespace eval {
-enum class PassParams { SEPARATE, ARRAY };
-
/**
* A Function that has been compiled to machine code using LLVM. Note
* that tensors are currently not supported for compiled functions.
diff --git a/vespalib/src/vespa/vespalib/eval/deinline_forest.cpp b/vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.cpp
index ffe0f1c2eaf..ffe0f1c2eaf 100644
--- a/vespalib/src/vespa/vespalib/eval/deinline_forest.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.cpp
diff --git a/vespalib/src/vespa/vespalib/eval/deinline_forest.h b/vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.h
index 883720d47d0..883720d47d0 100644
--- a/vespalib/src/vespa/vespalib/eval/deinline_forest.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/deinline_forest.h
diff --git a/vespalib/src/vespa/vespalib/eval/gbdt.cpp b/vespalib/src/vespa/vespalib/eval/llvm/gbdt.cpp
index 66ae096bac6..f3851db5a92 100644
--- a/vespalib/src/vespa/vespalib/eval/gbdt.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/gbdt.cpp
@@ -2,9 +2,9 @@
#include <vespa/fastos/fastos.h>
#include "gbdt.h"
-#include "basic_nodes.h"
-#include "call_nodes.h"
-#include "operator_nodes.h"
+#include <vespa/vespalib/eval/basic_nodes.h>
+#include <vespa/vespalib/eval/call_nodes.h>
+#include <vespa/vespalib/eval/operator_nodes.h>
#include "vm_forest.h"
#include "deinline_forest.h"
diff --git a/vespalib/src/vespa/vespalib/eval/gbdt.h b/vespalib/src/vespa/vespalib/eval/llvm/gbdt.h
index c7ec59b603c..c7ec59b603c 100644
--- a/vespalib/src/vespa/vespalib/eval/gbdt.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/gbdt.h
diff --git a/vespalib/src/vespa/vespalib/eval/llvm_wrapper.cpp b/vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.cpp
index e21511de4f9..bafade984ff 100644
--- a/vespalib/src/vespa/vespalib/eval/llvm_wrapper.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.cpp
@@ -3,8 +3,8 @@
#include <vespa/fastos/fastos.h>
#include <cmath>
#include "llvm_wrapper.h"
-#include "node_visitor.h"
-#include "node_traverser.h"
+#include <vespa/vespalib/eval/node_visitor.h>
+#include <vespa/vespalib/eval/node_traverser.h>
#include <llvm/Analysis/Verifier.h>
#include <llvm/IR/IRBuilder.h>
#include <llvm/IR/Intrinsics.h>
@@ -15,7 +15,7 @@
#include <llvm/LinkAllPasses.h>
#include <llvm/Transforms/IPO/PassManagerBuilder.h>
#include "gbdt.h"
-#include "check_type.h"
+#include <vespa/vespalib/eval/check_type.h>
#include <vespa/vespalib/stllike/hash_set.h>
#include <vespa/vespalib/util/approx.h>
diff --git a/vespalib/src/vespa/vespalib/eval/llvm_wrapper.h b/vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.h
index dc9c4d8b71b..34c74909765 100644
--- a/vespalib/src/vespa/vespalib/eval/llvm_wrapper.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/llvm_wrapper.h
@@ -2,7 +2,7 @@
#pragma once
-#include "function.h"
+#include <vespa/vespalib/eval/function.h>
#include "gbdt.h"
#include <llvm/IR/LLVMContext.h>
diff --git a/vespalib/src/vespa/vespalib/eval/vm_forest.cpp b/vespalib/src/vespa/vespalib/eval/llvm/vm_forest.cpp
index d9e9106065b..5c7164bab73 100644
--- a/vespalib/src/vespa/vespalib/eval/vm_forest.cpp
+++ b/vespalib/src/vespa/vespalib/eval/llvm/vm_forest.cpp
@@ -3,9 +3,9 @@
#include <vespa/fastos/fastos.h>
#include "gbdt.h"
#include "vm_forest.h"
-#include "basic_nodes.h"
-#include "call_nodes.h"
-#include "operator_nodes.h"
+#include <vespa/vespalib/eval/basic_nodes.h>
+#include <vespa/vespalib/eval/call_nodes.h>
+#include <vespa/vespalib/eval/operator_nodes.h>
namespace vespalib {
namespace eval {
diff --git a/vespalib/src/vespa/vespalib/eval/vm_forest.h b/vespalib/src/vespa/vespalib/eval/llvm/vm_forest.h
index 48e2bdf9cf6..48e2bdf9cf6 100644
--- a/vespalib/src/vespa/vespalib/eval/vm_forest.h
+++ b/vespalib/src/vespa/vespalib/eval/llvm/vm_forest.h
diff --git a/vespalib/src/vespa/vespalib/tensor/tensor_type.cpp b/vespalib/src/vespa/vespalib/tensor/tensor_type.cpp
index 2aacd579aa2..608902325ec 100644
--- a/vespalib/src/vespa/vespalib/tensor/tensor_type.cpp
+++ b/vespalib/src/vespa/vespalib/tensor/tensor_type.cpp
@@ -127,18 +127,6 @@ TensorType::as_value_type() const
}
TensorType
-TensorType::invalid()
-{
- return TensorType(Type::INVALID);
-}
-
-TensorType
-TensorType::number()
-{
- return TensorType(Type::NUMBER);
-}
-
-TensorType
TensorType::sparse(const std::vector<vespalib::string> &dimensions_in)
{
std::vector<Dimension> dimensions;
diff --git a/vespalib/src/vespa/vespalib/tensor/tensor_type.h b/vespalib/src/vespa/vespalib/tensor/tensor_type.h
index 1ff5fea758b..1cc0b70beb8 100644
--- a/vespalib/src/vespa/vespalib/tensor/tensor_type.h
+++ b/vespalib/src/vespa/vespalib/tensor/tensor_type.h
@@ -73,8 +73,8 @@ public:
eval::ValueType as_value_type() const;
- static TensorType invalid();
- static TensorType number();
+ static TensorType invalid() { return TensorType(Type::INVALID); }
+ static TensorType number() { return TensorType(Type::NUMBER); }
static TensorType sparse(const std::vector<vespalib::string> &dimensions_in);
static TensorType dense(std::vector<Dimension> dimensions_in);
static TensorType fromSpec(const vespalib::string &str);