cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

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