Author: Simon Pilgrim Date: 2024-04-23T09:59:45+01:00 New Revision: 686baf6093643127f87f7cbfd009abcaa11ea0a3
URL: https://github.com/llvm/llvm-project/commit/686baf6093643127f87f7cbfd009abcaa11ea0a3 DIFF: https://github.com/llvm/llvm-project/commit/686baf6093643127f87f7cbfd009abcaa11ea0a3.diff LOG: Revert "[memprof] Omit the key length for the record table (#89527)" This reverts commit b28f4d4dd0bbf50059cb19ca794af967374e1900. Added: Modified: llvm/include/llvm/ProfileData/MemProf.h llvm/include/llvm/Support/OnDiskHashTable.h Removed: ################################################################################ diff --git a/llvm/include/llvm/ProfileData/MemProf.h b/llvm/include/llvm/ProfileData/MemProf.h index f356e3a54a3645..aa6cdf198485b0 100644 --- a/llvm/include/llvm/ProfileData/MemProf.h +++ b/llvm/include/llvm/ProfileData/MemProf.h @@ -471,16 +471,12 @@ class RecordLookupTrait { hash_value_type ComputeHash(uint64_t K) { return K; } - std::pair<offset_type, offset_type> + static std::pair<offset_type, offset_type> ReadKeyDataLength(const unsigned char *&D) { using namespace support; - // Starting with Version2, we don't read the key length because it is a - // constant. offset_type KeyLen = - Version < Version2 - ? endian::readNext<offset_type, llvm::endianness::little>(D) - : sizeof(uint64_t); + endian::readNext<offset_type, llvm::endianness::little>(D); offset_type DataLen = endian::readNext<offset_type, llvm::endianness::little>(D); return std::make_pair(KeyLen, DataLen); @@ -538,9 +534,7 @@ class RecordWriterTrait { endian::Writer LE(Out, llvm::endianness::little); offset_type N = sizeof(K); - // Starting with Version2, we omit the key length because it is a constant. - if (Version < Version2) - LE.write<offset_type>(N); + LE.write<offset_type>(N); offset_type M = V.serializedSize(Version); LE.write<offset_type>(M); return std::make_pair(N, M); diff --git a/llvm/include/llvm/Support/OnDiskHashTable.h b/llvm/include/llvm/Support/OnDiskHashTable.h index b6dbea53f3da6d..f6b4055e74de7e 100644 --- a/llvm/include/llvm/Support/OnDiskHashTable.h +++ b/llvm/include/llvm/Support/OnDiskHashTable.h @@ -377,7 +377,7 @@ template <typename Info> class OnDiskChainedHashTable { // Determine the length of the key and the data. const std::pair<offset_type, offset_type> &L = - InfoPtr->ReadKeyDataLength(Items); + Info::ReadKeyDataLength(Items); offset_type ItemLen = L.first + L.second; // Compare the hashes. If they are not the same, skip the entry entirely. _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits