/disk4/html/www/moses/doxygen/mosesdecoder/moses/TranslationModel/CompactPT/MurmurHash3.cpp File Reference

#include "MurmurHash3.h"

Go to the source code of this file.

Defines

#define FORCE_INLINE   inline __attribute__((always_inline))
#define ROTL32(x, y)   rotl32(x,y)
#define ROTL64(x, y)   rotl64(x,y)
#define BIG_CONSTANT(x)   (x##LLU)

Functions

uint32_t rotl32 (uint32_t x, int8_t r)
uint64_t rotl64 (uint64_t x, int8_t r)
FORCE_INLINE uint32_t getblock (const uint32_t *p, int i)
FORCE_INLINE uint64_t getblock (const uint64_t *p, int i)
FORCE_INLINE uint32_t fmix (uint32_t h)
FORCE_INLINE uint64_t fmix (uint64_t k)
void MurmurHash3_x86_32 (const void *key, int len, uint32_t seed, void *out)
void MurmurHash3_x86_128 (const void *key, const int len, uint32_t seed, void *out)
void MurmurHash3_x64_128 (const void *key, const int len, const uint32_t seed, void *out)


Define Documentation

#define BIG_CONSTANT (  )     (x##LLU)

Definition at line 47 of file MurmurHash3.cpp.

Referenced by fmix(), and MurmurHash3_x64_128().

#define FORCE_INLINE   inline __attribute__((always_inline))

Definition at line 32 of file MurmurHash3.cpp.

#define ROTL32 ( x,
 )     rotl32(x,y)

Definition at line 44 of file MurmurHash3.cpp.

Referenced by MurmurHash3_x86_128(), and MurmurHash3_x86_32().

#define ROTL64 ( x,
 )     rotl64(x,y)

Definition at line 45 of file MurmurHash3.cpp.

Referenced by MurmurHash3_x64_128().


Function Documentation

FORCE_INLINE uint64_t fmix ( uint64_t  k  ) 

Definition at line 81 of file MurmurHash3.cpp.

References BIG_CONSTANT.

FORCE_INLINE uint32_t fmix ( uint32_t  h  ) 

Definition at line 68 of file MurmurHash3.cpp.

Referenced by MurmurHash3_x64_128(), MurmurHash3_x86_128(), and MurmurHash3_x86_32().

Here is the caller graph for this function:

FORCE_INLINE uint64_t getblock ( const uint64_t *  p,
int  i 
)

Definition at line 60 of file MurmurHash3.cpp.

FORCE_INLINE uint32_t getblock ( const uint32_t *  p,
int  i 
)

Definition at line 55 of file MurmurHash3.cpp.

Referenced by MurmurHash3_x64_128(), MurmurHash3_x86_128(), and MurmurHash3_x86_32().

Here is the caller graph for this function:

void MurmurHash3_x64_128 ( const void *  key,
const int  len,
const uint32_t  seed,
void *  out 
)

Definition at line 315 of file MurmurHash3.cpp.

References BIG_CONSTANT, fmix(), getblock(), and ROTL64.

Here is the call graph for this function:

void MurmurHash3_x86_128 ( const void *  key,
const int  len,
uint32_t  seed,
void *  out 
)

Definition at line 154 of file MurmurHash3.cpp.

References fmix(), getblock(), and ROTL32.

Here is the call graph for this function:

void MurmurHash3_x86_32 ( const void *  key,
int  len,
uint32_t  seed,
void *  out 
)

Definition at line 94 of file MurmurHash3.cpp.

References fmix(), getblock(), and ROTL32.

Here is the call graph for this function:

uint32_t rotl32 ( uint32_t  x,
int8_t  r 
) [inline]

Definition at line 34 of file MurmurHash3.cpp.

uint64_t rotl64 ( uint64_t  x,
int8_t  r 
) [inline]

Definition at line 39 of file MurmurHash3.cpp.


Generated on Thu Jul 6 00:31:31 2017 for Moses by  doxygen 1.5.9