diff --git a/runtime/executor/pte_data_map.cpp b/runtime/executor/pte_data_map.cpp index e9b1c3460be..4028c1af4fe 100644 --- a/runtime/executor/pte_data_map.cpp +++ b/runtime/executor/pte_data_map.cpp @@ -13,8 +13,8 @@ namespace executorch { namespace ET_RUNTIME_NAMESPACE { namespace internal { -/* static */ executorch::runtime::Result PteDataMap::create( - executorch::runtime::DataLoader* loader, +/* static */ Result PteDataMap::create( + DataLoader* loader, size_t segment_base_offset, const flatbuffers::FlatbufferNamedData* named_data, const flatbuffers::FlatbufferDataSegment* segments) { @@ -26,22 +26,22 @@ namespace internal { } ET_NODISCARD -executorch::runtime::Result -PteDataMap::get_data(executorch::aten::string_view key) const { +Result PteDataMap::get_data( + executorch::aten::string_view key) const { for (uint32_t i = 0; i < named_data_->size(); i++) { + const auto* named_data_item = named_data_->Get(i); ET_CHECK_OR_RETURN_ERROR( - named_data_->Get(i) != nullptr && named_data_->Get(i)->key() != nullptr, + named_data_item != nullptr && named_data_item->key() != nullptr, InvalidArgument, "Searching for key %.*s: NamedData at index %d is null", static_cast(key.size()), key.data(), i); - if (strncmp( - named_data_->Get(i)->key()->c_str(), - key.data(), - named_data_->Get(i)->key()->size()) == 0) { + const auto* named_data_key = named_data_item->key(); + if (named_data_key->size() == key.size() && + memcmp(named_data_key->data(), key.data(), key.size()) == 0) { // Get the segment index. - size_t segment_index = named_data_->Get(i)->segment_index(); + size_t segment_index = named_data_item->segment_index(); // Get the segment offset and size. ET_CHECK_OR_RETURN_ERROR( @@ -52,25 +52,22 @@ PteDataMap::get_data(executorch::aten::string_view key) const { static_cast(key.size()), key.data(), segments_->size()); - size_t segment_offset = segments_->Get(segment_index)->offset(); - size_t segment_size = segments_->Get(segment_index)->size(); + const auto* segment = segments_->Get(segment_index); return loader_->load( - /*offset=*/segment_base_offset_ + segment_offset, - segment_size, + /*offset=*/segment_base_offset_ + segment->offset(), + segment->size(), DataLoader::SegmentInfo(DataLoader::SegmentInfo::Type::External)); } } return Error::NotFound; } -ET_NODISCARD executorch::runtime::Result PteDataMap::get_num_keys() - const { +ET_NODISCARD Result PteDataMap::get_num_keys() const { return named_data_->size(); } -ET_NODISCARD executorch::runtime::Result PteDataMap::get_key( - uint32_t index) const { +ET_NODISCARD Result PteDataMap::get_key(uint32_t index) const { ET_CHECK_OR_RETURN_ERROR( index < named_data_->size(), InvalidArgument, @@ -78,13 +75,13 @@ ET_NODISCARD executorch::runtime::Result PteDataMap::get_key( named_data_->size(), index); + const auto* item = named_data_->Get(index); ET_CHECK_OR_RETURN_ERROR( - named_data_->Get(index) != nullptr && - named_data_->Get(index)->key() != nullptr, + item != nullptr && item->key() != nullptr, InvalidArgument, "NamedData at index %u is null", index); - return named_data_->Get(index)->key()->c_str(); + return item->key()->c_str(); } } // namespace internal diff --git a/test/size_test.cpp b/test/size_test.cpp index 8f67368f64e..52a693530ea 100644 --- a/test/size_test.cpp +++ b/test/size_test.cpp @@ -96,7 +96,7 @@ int main(int argc, char** argv) { for (const auto i : c10::irange(method->outputs_size())) { auto output_tensor = output_list[i].toTensor(); [[maybe_unused]] auto data_output = output_tensor.const_data_ptr(); - for (const auto j : c10::irange(output_tensor.numel())) { + for ([[maybe_unused]] const auto j : c10::irange(output_tensor.numel())) { ET_LOG(Info, "%f", data_output[j]); } }