Lines Matching refs:buffer

338 static bool WriteBuffer(int fd, const uint8_t* buffer, size_t byte_count) {  in WriteBuffer()  argument
340 int bytes_written = TEMP_FAILURE_RETRY(write(fd, buffer, byte_count)); in WriteBuffer()
345 buffer += bytes_written; // Move the buffer forward. in WriteBuffer()
351 static void AddStringToBuffer(std::vector<uint8_t>* buffer, const std::string& value) { in AddStringToBuffer() argument
352 buffer->insert(buffer->end(), value.begin(), value.end()); in AddStringToBuffer()
357 static void AddUintToBuffer(std::vector<uint8_t>* buffer, T value) { in AddUintToBuffer() argument
359 buffer->push_back((value >> (i * kBitsPerByte)) & 0xff); in AddUintToBuffer()
395 std::vector<uint8_t> buffer; in Save() local
404 WriteProfileIndex(&buffer, static_cast<ProfileIndexType>(info_.size())); in Save()
426 AddUintToBuffer(&buffer, required_capacity); in Save()
427 if (!WriteBuffer(fd, buffer.data(), buffer.size())) { in Save()
432 buffer.reserve(required_capacity); in Save()
433 buffer.clear(); in Save()
451 AddUintToBuffer(&buffer, static_cast<uint16_t>(dex_data.profile_key.size())); in Save()
452 AddUintToBuffer(&buffer, static_cast<uint16_t>(dex_data.class_set.size())); in Save()
453 AddUintToBuffer(&buffer, methods_region_size); // uint32_t in Save()
454 AddUintToBuffer(&buffer, dex_data.checksum); // uint32_t in Save()
455 AddUintToBuffer(&buffer, dex_data.num_method_ids); // uint32_t in Save()
457 AddStringToBuffer(&buffer, dex_data.profile_key); in Save()
473 AddUintToBuffer(&buffer, diff_with_last_method_index); in Save()
474 AddInlineCacheToBuffer(&buffer, method_it.second); in Save()
484 AddUintToBuffer(&buffer, diff_with_last_class_index); in Save()
487 buffer.insert(buffer.end(), in Save()
493 std::unique_ptr<uint8_t[]> compressed_buffer = DeflateBuffer(buffer.data(), in Save()
503 buffer.clear(); in Save()
504 AddUintToBuffer(&buffer, output_size); in Save()
506 if (!WriteBuffer(fd, buffer.data(), buffer.size())) { in Save()
521 void ProfileCompilationInfo::AddInlineCacheToBuffer(std::vector<uint8_t>* buffer, in AddInlineCacheToBuffer() argument
524 AddUintToBuffer(buffer, static_cast<uint16_t>(inline_cache_map.size())); in AddInlineCacheToBuffer()
534 AddUintToBuffer(buffer, dex_pc); in AddInlineCacheToBuffer()
544 AddUintToBuffer(buffer, kIsMissingTypesEncoding); in AddInlineCacheToBuffer()
548 AddUintToBuffer(buffer, kIsMegamorphicEncoding); in AddInlineCacheToBuffer()
561 AddUintToBuffer(buffer, static_cast<uint8_t>(dex_to_classes_map.size())); in AddInlineCacheToBuffer()
566 WriteProfileIndex(buffer, dex_profile_index); in AddInlineCacheToBuffer()
568 AddUintToBuffer(buffer, static_cast<uint8_t>(dex_classes.size())); in AddInlineCacheToBuffer()
571 AddUintToBuffer(buffer, dex_classes[i].index_); in AddInlineCacheToBuffer()
758 #define READ_UINT(type, buffer, dest, error) \ argument
760 if (!(buffer).ReadUintAndAdvance<type>(&(dest))) { \
768 SafeBuffer& buffer, in ReadInlineCache() argument
774 READ_UINT(uint16_t, buffer, inline_cache_size, error); in ReadInlineCache()
778 READ_UINT(uint16_t, buffer, dex_pc, error); in ReadInlineCache()
779 READ_UINT(uint8_t, buffer, dex_to_classes_map_size, error); in ReadInlineCache()
792 if (!ReadProfileIndex(buffer, &dex_profile_index)) { in ReadInlineCache()
796 READ_UINT(uint8_t, buffer, dex_classes_size, error); in ReadInlineCache()
804 READ_UINT(uint16_t, buffer, type_index, error); in ReadInlineCache()
820 SafeBuffer& buffer, in ReadMethods() argument
825 uint32_t unread_bytes_before_operation = buffer.CountUnreadBytes(); in ReadMethods()
830 size_t expected_unread_bytes_after_operation = buffer.CountUnreadBytes() in ReadMethods()
833 while (buffer.CountUnreadBytes() > expected_unread_bytes_after_operation) { in ReadMethods()
838 READ_UINT(uint16_t, buffer, diff_with_last_method_index, error); in ReadMethods()
845 if (!ReadInlineCache(buffer, in ReadMethods()
853 uint32_t total_bytes_read = unread_bytes_before_operation - buffer.CountUnreadBytes(); in ReadMethods()
861 bool ProfileCompilationInfo::ReadClasses(SafeBuffer& buffer, in ReadClasses() argument
864 size_t unread_bytes_before_op = buffer.CountUnreadBytes(); in ReadClasses()
873 READ_UINT(uint16_t, buffer, diff_with_last_class_index, error); in ReadClasses()
885 size_t total_bytes_read = unread_bytes_before_op - buffer.CountUnreadBytes(); in ReadClasses()
900 uint8_t buffer[1]; in testEOF() local
901 return TEMP_FAILURE_RETRY(read(fd, buffer, 1)); in testEOF()
935 uint8_t* buffer = ptr_current_; in Fill() local
936 return source.Read(buffer, byte_count, debug_stage, error); in Fill()
1009 bool ProfileCompilationInfo::ReadProfileLineHeaderElements(SafeBuffer& buffer, in ReadProfileLineHeaderElements() argument
1013 READ_UINT(uint16_t, buffer, *profile_key_size, error); in ReadProfileLineHeaderElements()
1014 READ_UINT(uint16_t, buffer, line_header->class_set_size, error); in ReadProfileLineHeaderElements()
1015 READ_UINT(uint32_t, buffer, line_header->method_region_size_bytes, error); in ReadProfileLineHeaderElements()
1016 READ_UINT(uint32_t, buffer, line_header->checksum, error); in ReadProfileLineHeaderElements()
1017 READ_UINT(uint32_t, buffer, line_header->num_method_ids, error); in ReadProfileLineHeaderElements()
1022 SafeBuffer& buffer, in ReadProfileLineHeader() argument
1025 if (buffer.CountUnreadBytes() < kLineHeaderSize) { in ReadProfileLineHeader()
1031 if (!ReadProfileLineHeaderElements(buffer, &profile_key_size, line_header, error)) { in ReadProfileLineHeader()
1041 if (buffer.CountUnreadBytes() < profile_key_size) { in ReadProfileLineHeader()
1045 const uint8_t* base_ptr = buffer.GetCurrentPtr(); in ReadProfileLineHeader()
1048 buffer.Advance(profile_key_size); in ReadProfileLineHeader()
1053 SafeBuffer& buffer, in ReadProfileLine() argument
1068 if (!ReadMethods(buffer, number_of_dex_files, line_header, dex_profile_index_remap, error)) { in ReadProfileLine()
1073 if (!ReadClasses(buffer, line_header, error)) { in ReadProfileLine()
1080 if (buffer.CountUnreadBytes() < bytes) { in ReadProfileLine()
1084 const uint8_t* base_ptr = buffer.GetCurrentPtr(); in ReadProfileLine()
1086 buffer.Advance(bytes); in ReadProfileLine()
1243 uint8_t* buffer, in Read() argument
1252 buffer[i] = *(mem_map_.Begin() + mem_map_cur_); in Read()
1257 int bytes_read = TEMP_FAILURE_RETRY(read(fd_, buffer, byte_count));; in Read()
1266 buffer += bytes_read; in Read()
2157 uint8_t buffer[sizeof(kProfileMagic)]; in IsProfileFile() local
2158 if (!android::base::ReadFully(fd, buffer, byte_count)) { in IsProfileFile()
2169 return memcmp(buffer, kProfileMagic, byte_count) == 0; in IsProfileFile()
2256 std::vector<uint8_t>* buffer, ProfileIndexType value) const { in WriteProfileIndex() argument
2258 AddUintToBuffer(buffer, value); in WriteProfileIndex()
2260 AddUintToBuffer(buffer, static_cast<ProfileIndexTypeRegular>(value)); in WriteProfileIndex()