1 #ifndef LIBGARBLE_BLOCK_H 2 #define LIBGARBLE_BLOCK_H 10 #define garble_xor(x,y) _mm_xor_si128(x,y) 11 #define garble_zero_block() _mm_setzero_si128() 12 #define garble_equal(x,y) (_mm_movemask_epi8(_mm_cmpeq_epi8(x,y)) == 0xffff) 13 #define garble_unequal(x,y) (_mm_movemask_epi8(_mm_cmpeq_epi8(x,y)) != 0xffff) 15 #define garble_lsb(x) (*((char *) &x) & 1) 16 #define garble_make_block(X,Y) _mm_set_epi64((__m64)(X), (__m64)(Y)) 17 #define garble_double(B) _mm_slli_epi64(B,1) __m128i block
Definition: block.h:8
int block_printf(const char *format,...)
block garble_random_block(void)
int block_fprintf(FILE *stream, const char *format,...)
int block_vfprintf(FILE *stream, const char *format, va_list ap)
block * garble_allocate_blocks(size_t nblocks)
block garble_seed(block *seed)