Lines Matching refs:_Size
972 template <class _Size>
974 _Size
977 _Size __r;
985 template <class _Size, size_t = sizeof(_Size)*__CHAR_BIT__>
988 template <class _Size>
989 struct __murmur2_or_cityhash<_Size, 32>
991 inline _Size operator()(const void* __key, _Size __len)
996 template <class _Size>
997 _Size
998 __murmur2_or_cityhash<_Size, 32>::operator()(const void* __key, _Size __len)
1000 const _Size __m = 0x5bd1e995;
1001 const _Size __r = 24;
1002 _Size __h = __len;
1006 _Size __k = __loadword<_Size>(__data);
1031 template <class _Size>
1032 struct __murmur2_or_cityhash<_Size, 64>
1034 …inline _Size operator()(const void* __key, _Size __len) _LIBCPP_DISABLE_UBSAN_UNSIGNED_INTEGER_CH…
1038 static const _Size __k0 = 0xc3a5c85c97cb3127ULL;
1039 static const _Size __k1 = 0xb492b66fbe98f273ULL;
1040 static const _Size __k2 = 0x9ae16a3b2f90404fULL;
1041 static const _Size __k3 = 0xc949d7c7509e6557ULL;
1043 static _Size __rotate(_Size __val, int __shift) {
1047 static _Size __rotate_by_at_least_1(_Size __val, int __shift) {
1051 static _Size __shift_mix(_Size __val) {
1055 static _Size __hash_len_16(_Size __u, _Size __v)
1058 const _Size __mul = 0x9ddfea08eb382d69ULL;
1059 _Size __a = (__u ^ __v) * __mul;
1061 _Size __b = (__v ^ __a) * __mul;
1067 static _Size __hash_len_0_to_16(const char* __s, _Size __len)
1071 const _Size __a = __loadword<_Size>(__s);
1072 const _Size __b = __loadword<_Size>(__s + __len - 8);
1092 static _Size __hash_len_17_to_32(const char *__s, _Size __len)
1095 const _Size __a = __loadword<_Size>(__s) * __k1;
1096 const _Size __b = __loadword<_Size>(__s + 8);
1097 const _Size __c = __loadword<_Size>(__s + __len - 8) * __k2;
1098 const _Size __d = __loadword<_Size>(__s + __len - 16) * __k0;
1105 static pair<_Size, _Size> __weak_hash_len_32_with_seeds(
1106 _Size __w, _Size __x, _Size __y, _Size __z, _Size __a, _Size __b)
1111 const _Size __c = __a;
1115 return pair<_Size, _Size>(__a + __z, __b + __c);
1119 static pair<_Size, _Size> __weak_hash_len_32_with_seeds(
1120 const char* __s, _Size __a, _Size __b)
1123 return __weak_hash_len_32_with_seeds(__loadword<_Size>(__s),
1124 __loadword<_Size>(__s + 8),
1125 __loadword<_Size>(__s + 16),
1126 __loadword<_Size>(__s + 24),
1132 static _Size __hash_len_33_to_64(const char *__s, size_t __len)
1135 _Size __z = __loadword<_Size>(__s + 24);
1136 _Size __a = __loadword<_Size>(__s) +
1137 (__len + __loadword<_Size>(__s + __len - 16)) * __k0;
1138 _Size __b = __rotate(__a + __z, 52);
1139 _Size __c = __rotate(__a, 37);
1140 __a += __loadword<_Size>(__s + 8);
1142 __a += __loadword<_Size>(__s + 16);
1143 _Size __vf = __a + __z;
1144 _Size __vs = __b + __rotate(__a, 31) + __c;
1145 __a = __loadword<_Size>(__s + 16) + __loadword<_Size>(__s + __len - 32);
1146 __z += __loadword<_Size>(__s + __len - 8);
1149 __a += __loadword<_Size>(__s + __len - 24);
1151 __a += __loadword<_Size>(__s + __len - 16);
1152 _Size __wf = __a + __z;
1153 _Size __ws = __b + __rotate(__a, 31) + __c;
1154 _Size __r = __shift_mix((__vf + __ws) * __k2 + (__wf + __vs) * __k0);
1160 template <class _Size>
1161 _Size
1162 __murmur2_or_cityhash<_Size, 64>::operator()(const void* __key, _Size __len)
1177 _Size __x = __loadword<_Size>(__s + __len - 40);
1178 _Size __y = __loadword<_Size>(__s + __len - 16) +
1179 __loadword<_Size>(__s + __len - 56);
1180 _Size __z = __hash_len_16(__loadword<_Size>(__s + __len - 48) + __len,
1181 __loadword<_Size>(__s + __len - 24));
1182 pair<_Size, _Size> __v = __weak_hash_len_32_with_seeds(__s + __len - 64, __len, __z);
1183 pair<_Size, _Size> __w = __weak_hash_len_32_with_seeds(__s + __len - 32, __y + __k1, __x);
1184 __x = __x * __k1 + __loadword<_Size>(__s);
1187 __len = (__len - 1) & ~static_cast<_Size>(63);
1189 __x = __rotate(__x + __y + __v.first + __loadword<_Size>(__s + 8), 37) * __k1;
1190 __y = __rotate(__y + __v.second + __loadword<_Size>(__s + 48), 42) * __k1;
1192 __y += __v.first + __loadword<_Size>(__s + 40);
1196 __y + __loadword<_Size>(__s + 16));