From abed119e88ab574310bf5e482d7524153d711c73 Mon Sep 17 00:00:00 2001 From: Eunsoo Sheen Date: Mon, 7 Jun 2021 16:23:44 +0900 Subject: [PATCH] [IE CLDNN] fix klocwork issue (#6050) --- .../thirdparty/clDNN/src/gpu/loop_gpu.cpp | 24 +++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/inference-engine/thirdparty/clDNN/src/gpu/loop_gpu.cpp b/inference-engine/thirdparty/clDNN/src/gpu/loop_gpu.cpp index 9232e16006a..ea8965ec427 100644 --- a/inference-engine/thirdparty/clDNN/src/gpu/loop_gpu.cpp +++ b/inference-engine/thirdparty/clDNN/src/gpu/loop_gpu.cpp @@ -137,19 +137,29 @@ struct loop_gpu : typed_primitive_impl { const auto& concatenated_input_mem_mappings = instance.concatenated_input_mem_mappings; const auto& concatenated_output_mem_mappings = instance.concatenated_output_mem_mappings; + + // Set sliced input data + for (size_t i = 0; i < concatenated_input_mem_mappings.size(); ++i) { + const auto& concatenated_input = concatenated_input_mem_mappings.at(i); + memory_impl::ptr mem = concatenated_input.get_sliced_mem(0); + if (mem) { + body_network->set_input_data(concatenated_input.sliced_data_prim->id(), *mem); + } else { + CLDNN_ERROR_MESSAGE(node.id(), "sliced input memory of loop is not allocated properly"); + } + } + std::vector loop_carried_dep(events.begin(), events.end()); while (current_iteration < trip_count && execution_condition) { - // Copy & Set sliced input memory offset - for (size_t i = 0; i < instance.concatenated_input_mem_mappings.size(); ++i) { + // Copy & Set sliced input memory + for (size_t i = 0; i < concatenated_input_mem_mappings.size(); ++i) { const auto& concatenated_input = concatenated_input_mem_mappings.at(i); memory_impl::ptr mem = concatenated_input.get_sliced_mem(current_iteration); - assert(mem.get() != nullptr); - // set input mem - if (current_iteration == 0) { - body_network->set_input_data(concatenated_input.sliced_data_prim->id(), *mem); - } else { + if (mem) { concatenated_input.sliced_data_prim->set_output_memory(*mem); + } else { + CLDNN_ERROR_MESSAGE(node.id(), "sliced input memory of loop is not allocated properly"); } }