Before, the last 3 bytes were char-signedness dependent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338128
91177308-0d34-0410-b5e6-
96231b3b80d8
uint64_t llvm::xxHash64(StringRef Data) {
size_t Len = Data.size();
uint64_t Seed = 0;
- const char *P = Data.data();
- const char *const BEnd = P + Len;
+ const unsigned char *P = Data.bytes_begin();
+ const unsigned char *const BEnd = Data.bytes_end();
uint64_t H64;
if (Len >= 32) {
- const char *const Limit = BEnd - 32;
+ const unsigned char *const Limit = BEnd - 32;
uint64_t V1 = Seed + PRIME64_1 + PRIME64_2;
uint64_t V2 = Seed + PRIME64_2;
uint64_t V3 = Seed + 0;