From: 오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 Date: Mon, 17 Sep 2018 02:02:58 +0000 (+0900) Subject: Fix comparison size_t with zero (#2710) X-Git-Tag: 0.2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2d561c389c6661e4e170de44fd39dfa1f0233042;p=platform%2Fcore%2Fml%2Fnnfw.git Fix comparison size_t with zero (#2710) Fix comparison size_t with zero (always true) Compare before casting from int to size_t Signed-off-by: Hyeongseok Oh --- diff --git a/runtimes/pure_arm_compute/src/internal/layers/SimpleEmbeddingLookup.cc b/runtimes/pure_arm_compute/src/internal/layers/SimpleEmbeddingLookup.cc index 45eb207..089c783 100644 --- a/runtimes/pure_arm_compute/src/internal/layers/SimpleEmbeddingLookup.cc +++ b/runtimes/pure_arm_compute/src/internal/layers/SimpleEmbeddingLookup.cc @@ -43,10 +43,10 @@ void SimpleEmbeddingLookup::run() const size_t row_bytes = values_info->total_size() / row_size; for (size_t i = 0; i < lookups_info->dimension(0); ++i) { - size_t idx = lookups_buf[i]; - if (idx >= row_size || idx < 0) + if (lookups_buf[i] < 0 || lookups_buf[i] >= row_size) throw std::runtime_error("Embedding Lookup: index out of bounds."); + size_t idx = lookups_buf[i]; size_t row_offset_by_idx = values_info->offset_element_in_bytes({0, idx}); size_t row_offset_by_i = output_info->offset_element_in_bytes({0, i}); @@ -63,10 +63,10 @@ void SimpleEmbeddingLookup::run() const size_t row_bytes = values_info->total_size() / row_size; for (size_t i = 0; i < lookups_info->dimension(0); ++i) { - size_t idx = lookups_buf[i]; - if (idx >= row_size || idx < 0) + if (lookups_buf[i] < 0 || lookups_buf[i] >= row_size) throw std::runtime_error("Embedding Lookup: index out of bounds."); + size_t idx = lookups_buf[i]; size_t row_offset_by_idx = values_info->offset_element_in_bytes({0, 0, idx}); size_t row_offset_by_i = output_info->offset_element_in_bytes({0, 0, i}); @@ -83,10 +83,10 @@ void SimpleEmbeddingLookup::run() const size_t row_bytes = values_info->total_size() / row_size; for (size_t i = 0; i < lookups_info->dimension(0); ++i) { - size_t idx = lookups_buf[i]; - if (idx >= row_size || idx < 0) + if (lookups_buf[i] < 0 || lookups_buf[i] >= row_size) throw std::runtime_error("Embedding Lookup: index out of bounds."); + size_t idx = lookups_buf[i]; size_t row_offset_by_idx = values_info->offset_element_in_bytes({0, 0, 0, idx}); size_t row_offset_by_i = output_info->offset_element_in_bytes({0, 0, 0, i});