REDACTED-rig/src/backend/opencl/cl/cn/cryptonight_r_defines.cl
2019-08-25 23:06:04 +07:00

20 lines
776 B
Common Lisp

R"===(
#ifdef __NV_CL_C_VERSION
# define SCRATCHPAD_CHUNK(N) (*(__local uint4*)((__local uchar*)(scratchpad_line) + (idx1 ^ (N << 4))))
#else
# if (STRIDED_INDEX == 0)
# define SCRATCHPAD_CHUNK(N) (*(__global uint4*)((__global uchar*)(Scratchpad) + (idx ^ (N << 4))))
# elif (STRIDED_INDEX == 1)
# define SCRATCHPAD_CHUNK(N) (*(__global uint4*)((__global uchar*)(Scratchpad) + mul24(as_uint(idx ^ (N << 4)), Threads)))
# elif (STRIDED_INDEX == 2)
# define SCRATCHPAD_CHUNK(N) (*(__global uint4*)((__global uchar*)(Scratchpad) + (((idx ^ (N << 4)) % (MEM_CHUNK << 4)) + ((idx ^ (N << 4)) / (MEM_CHUNK << 4)) * WORKSIZE * (MEM_CHUNK << 4))))
# endif
#endif
#define ROT_BITS 32
#define VARIANT_WOW 12
#define VARIANT_4 13
#define MEM_CHUNK (1 << MEM_CHUNK_EXPONENT)
)==="