#include <wmmintrin.h>
#include <emmintrin.h>
#include <xmmintrin.h>
#include <stdio.h>
Go to the source code of this file.
§ garble_double
#define garble_double |
( |
|
B | ) |
_mm_slli_epi64(B,1) |
§ garble_equal
#define garble_equal |
( |
|
x, |
|
|
|
y |
|
) |
| (_mm_movemask_epi8(_mm_cmpeq_epi8(x,y)) == 0xffff) |
§ garble_lsb
#define garble_lsb |
( |
|
x | ) |
(*((char *) &x) & 1) |
§ garble_make_block
#define garble_make_block |
( |
|
X, |
|
|
|
Y |
|
) |
| _mm_set_epi64((__m64)(X), (__m64)(Y)) |
§ garble_unequal
#define garble_unequal |
( |
|
x, |
|
|
|
y |
|
) |
| (_mm_movemask_epi8(_mm_cmpeq_epi8(x,y)) != 0xffff) |
§ garble_xor
#define garble_xor |
( |
|
x, |
|
|
|
y |
|
) |
| _mm_xor_si128(x,y) |
§ garble_zero_block
#define garble_zero_block |
( |
| ) |
_mm_setzero_si128() |
§ block
§ block_fprintf()
int block_fprintf |
( |
FILE * |
stream, |
|
|
const char * |
format, |
|
|
|
... |
|
) |
| |
§ block_printf()
int block_printf |
( |
const char * |
format, |
|
|
|
... |
|
) |
| |
§ block_vfprintf()
int block_vfprintf |
( |
FILE * |
stream, |
|
|
const char * |
format, |
|
|
va_list |
ap |
|
) |
| |
§ garble_allocate_blocks()
block* garble_allocate_blocks |
( |
size_t |
nblocks | ) |
|
§ garble_random_block()
block garble_random_block |
( |
void |
| ) |
|
§ garble_seed()