xor.h (954B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _XOR_H 3#define _XOR_H 4 5#define MAX_XOR_BLOCKS 4 6 7extern void xor_blocks(unsigned int count, unsigned int bytes, 8 void *dest, void **srcs); 9 10struct xor_block_template { 11 struct xor_block_template *next; 12 const char *name; 13 int speed; 14 void (*do_2)(unsigned long, unsigned long * __restrict, 15 const unsigned long * __restrict); 16 void (*do_3)(unsigned long, unsigned long * __restrict, 17 const unsigned long * __restrict, 18 const unsigned long * __restrict); 19 void (*do_4)(unsigned long, unsigned long * __restrict, 20 const unsigned long * __restrict, 21 const unsigned long * __restrict, 22 const unsigned long * __restrict); 23 void (*do_5)(unsigned long, unsigned long * __restrict, 24 const unsigned long * __restrict, 25 const unsigned long * __restrict, 26 const unsigned long * __restrict, 27 const unsigned long * __restrict); 28}; 29 30#endif