Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
city.cpp File Reference
#include <algorithm>
#include <string.h>
#include <fc/crypto/city.hpp>
#include <fc/uint128.hpp>
#include <fc/array.hpp>
#include <byteswap.h>
Include dependency graph for city.cpp:

Go to the source code of this file.

Namespaces

namespace  fc
 namespace sysio::chain
 

Macros

#define uint32_in_expected_order(x)
 
#define uint64_in_expected_order(x)
 
#define LIKELY(x)
 
#define PERMUTE3(a, b, c)
 
#define CHUNK(r)
 

Functions

uint64_t _mm_crc32_u64 (uint64_t a, uint64_t b)
 
uint64_t fc::Uint128Low64 (const uint128 &x)
 
uint64_t fc::Uint128High64 (const uint128 &x)
 
uint64_t fc::Hash128to64 (const uint128 &x)
 
uint32_t fc::city_hash32 (const char *buf, size_t len)
 
uint64_t fc::city_hash64 (const char *buf, size_t len)
 
uint64_t fc::CityHash64WithSeeds (const char *s, size_t len, uint64_t seed0, uint64_t seed1)
 
uint64_t fc::CityHash64WithSeed (const char *s, size_t len, uint64_t seed)
 
uint128 fc::CityHash128WithSeed (const char *s, size_t len, uint128 seed)
 
uint128 fc::city_hash128 (const char *s, size_t len)
 
void fc::CityHashCrc256 (const char *s, size_t len, uint64_t *result)
 
array< uint64_t, 4 > fc::city_hash_crc_256 (const char *s, size_t len)
 
uint128 fc::CityHashCrc128WithSeed (const char *s, size_t len, uint128 seed)
 
uint128 fc::city_hash_crc_128 (const char *s, size_t len)
 

Macro Definition Documentation

◆ CHUNK

#define CHUNK ( r)
Value:
PERMUTE3(x, z, y); \
b += Fetch64(s); \
c += Fetch64(s + 8); \
d += Fetch64(s + 16); \
e += Fetch64(s + 24); \
f += Fetch64(s + 32); \
a += b; \
h += f; \
b += c; \
f += d; \
g += e; \
e += z; \
g += x; \
z = _mm_crc32_u64(z, b + g); \
y = _mm_crc32_u64(y, e + h); \
x = _mm_crc32_u64(x, f + a); \
e = Rotate(e, r); \
c += e; \
s += 40
const mie::Vuint & r
Definition bn.cpp:28
uint64_t _mm_crc32_u64(uint64_t a, uint64_t b)
Definition crc.cpp:607
#define PERMUTE3(a, b, c)
Definition city.cpp:174
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
Definition pointer.h:1181
CK_ULONG d
char * s

◆ LIKELY

#define LIKELY ( x)
Value:
(x)

Definition at line 136 of file city.cpp.

◆ PERMUTE3

#define PERMUTE3 ( a,
b,
c )
Value:
do { std::swap(a, b); std::swap(a, c); } while (0)
void swap(picojson::value &x, picojson::value &y)

Definition at line 174 of file city.cpp.

◆ uint32_in_expected_order

#define uint32_in_expected_order ( x)
Value:
(x)

Definition at line 128 of file city.cpp.

◆ uint64_in_expected_order

#define uint64_in_expected_order ( x)
Value:
(x)

Definition at line 129 of file city.cpp.

Function Documentation

◆ _mm_crc32_u64()

uint64_t _mm_crc32_u64 ( uint64_t a,
uint64_t b )

Definition at line 607 of file crc.cpp.

608{
609 return crc32cSlicingBy8(a, (unsigned char*)&b, sizeof(b));
610}
uint32_t crc32cSlicingBy8(uint32_t crc, const void *data, size_t length)
Definition crc.cpp:476
Here is the call graph for this function: