#include <iostream>
#include <iomanip>
#include <stdint.h>
#include <cstdio>
#include <string>
#include <sstream>
#include <cstdlib>
|
uint32_t | rotl32 (uint32_t x, int r) |
|
void | posix_memalign_free (void *p) |
|
uint32_t | getblock32 (uint32_t p) |
|
uint32_t | fmix32 (uint32_t h0, uint32_t h1=0xd86b048b) |
|
void | pad_buffer (const char *src, char *buf, size_t len) |
|
void | VectorHashFold (uint32_t *res, uint32_t *z[], size_t nbits) |
|
static void | VectorHashFinalize (size_t len, uint32_t *h1, uint32_t *h2, uint32_t *h3, uint32_t *h4, void *out) |
|
static void | stateinit (uint32_t st[], uint32_t &seed) |
|
void | VectorHashBody (const uint32_t *data, uint32_t h1[], uint32_t h2[], uint32_t h3[], uint32_t h4[]) |
|
void | VectorHash (const void *key, size_t len, uint32_t seed, void *out) |
|
string | VHstream (FILE *io) |
|
string | VHstring (const string &s) |
|
#define _POSIX_MAPPED_FILES 0 |
#define ROTL32 |
( |
|
x, |
|
|
|
y |
|
) |
| rotl32(x,y) |
#define VEC |
( |
|
X | ) |
for( size_t j=0; j < vh_nint; j++ ) { X; } |
#define VEC |
( |
|
X | ) |
for( size_t j=0; j < vh_nint; j++ ) { X; } |
uint32_t fmix32 |
( |
uint32_t |
h0, |
|
|
uint32_t |
h1 = 0xd86b048b |
|
) |
| |
|
inline |
uint32_t getblock32 |
( |
uint32_t |
p | ) |
|
|
inline |
void pad_buffer |
( |
const char * |
src, |
|
|
char * |
buf, |
|
|
size_t |
len |
|
) |
| |
|
inline |
void posix_memalign_free |
( |
void * |
p | ) |
|
|
inline |
uint32_t rotl32 |
( |
uint32_t |
x, |
|
|
int |
r |
|
) |
| |
|
inline |
static void stateinit |
( |
uint32_t |
st[], |
|
|
uint32_t & |
seed |
|
) |
| |
|
static |
void VectorHash |
( |
const void * |
key, |
|
|
size_t |
len, |
|
|
uint32_t |
seed, |
|
|
void * |
out |
|
) |
| |
void VectorHashBody |
( |
const uint32_t * |
data, |
|
|
uint32_t |
h1[], |
|
|
uint32_t |
h2[], |
|
|
uint32_t |
h3[], |
|
|
uint32_t |
h4[] |
|
) |
| |
|
inline |
static void VectorHashFinalize |
( |
size_t |
len, |
|
|
uint32_t * |
h1, |
|
|
uint32_t * |
h2, |
|
|
uint32_t * |
h3, |
|
|
uint32_t * |
h4, |
|
|
void * |
out |
|
) |
| |
|
static |
void VectorHashFold |
( |
uint32_t * |
res, |
|
|
uint32_t * |
z[], |
|
|
size_t |
nbits |
|
) |
| |
|
inline |
string VHstream |
( |
FILE * |
io | ) |
|
string VHstring |
( |
const string & |
s | ) |
|
const size_t blocksize = 4*vh_nint*sizeof(uint32_t) |
|
static |
const size_t vh_hash_width = 128 |
|
static |
const size_t vh_hwreg_width = 512 |
|
static |