aboutsummaryrefslogtreecommitdiff
path: root/src/graph/detail/ExecutionHelpers.cpp
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2018-07-03 12:06:23 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:54:10 +0000
commit12be7ab4876f77fecfab903df70791623219b3da (patch)
tree1cfa6852e60948bee9db0831a9f3abc97a2031c8 /src/graph/detail/ExecutionHelpers.cpp
parente39334c15c7fd141bb8173d5017ea5ca157fca2c (diff)
downloadComputeLibrary-12be7ab4876f77fecfab903df70791623219b3da.tar.gz
COMPMID-1310: Create graph validation executables.
Change-Id: I9e0b57b1b83fe5a95777cdaeddba6ecef650bafc Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/138697 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/graph/detail/ExecutionHelpers.cpp')
-rw-r--r--src/graph/detail/ExecutionHelpers.cpp25
1 files changed, 11 insertions, 14 deletions
diff --git a/src/graph/detail/ExecutionHelpers.cpp b/src/graph/detail/ExecutionHelpers.cpp
index d68092a2e7..6df67fcfec 100644
--- a/src/graph/detail/ExecutionHelpers.cpp
+++ b/src/graph/detail/ExecutionHelpers.cpp
@@ -206,15 +206,12 @@ void call_all_const_node_accessors(Graph &g)
}
}
-void call_all_input_node_accessors(ExecutionWorkload &workload)
+bool call_all_input_node_accessors(ExecutionWorkload &workload)
{
- for(auto &input : workload.inputs)
+ return !std::any_of(std::begin(workload.inputs), std::end(workload.inputs), [](Tensor * input_tensor)
{
- if(input != nullptr)
- {
- input->call_accessor();
- }
- }
+ return (input_tensor == nullptr) || !input_tensor->call_accessor();
+ });
}
void prepare_all_tasks(ExecutionWorkload &workload)
@@ -256,15 +253,15 @@ void call_all_tasks(ExecutionWorkload &workload)
}
}
-void call_all_output_node_accessors(ExecutionWorkload &workload)
+bool call_all_output_node_accessors(ExecutionWorkload &workload)
{
- for(auto &output : workload.outputs)
+ bool is_valid = true;
+ std::for_each(std::begin(workload.outputs), std::end(workload.outputs), [&](Tensor * output_tensor)
{
- if(output != nullptr)
- {
- output->call_accessor();
- }
- }
+ is_valid = is_valid && (output_tensor != nullptr) && output_tensor->call_accessor();
+ });
+
+ return is_valid;
}
} // namespace detail
} // namespace graph