Path: blob/master/scryptjane/scrypt-jane-romix.h
1301 views
#if defined(SCRYPT_CHACHA)1#include "scrypt-jane-chacha.h"2#elif defined(SCRYPT_SALSA)3#include "scrypt-jane-salsa.h"4#elif defined(SCRYPT_SALSA64)5#include "scrypt-jane-salsa64.h"6#else7#define SCRYPT_MIX_BASE "ERROR"8typedef uint32_t scrypt_mix_word_t;9#define SCRYPT_WORDTO8_LE U32TO8_LE10#define SCRYPT_WORD_ENDIAN_SWAP U32_SWAP11#define SCRYPT_BLOCK_BYTES 6412#define SCRYPT_BLOCK_WORDS (SCRYPT_BLOCK_BYTES / sizeof(scrypt_mix_word_t))13#if !defined(SCRYPT_CHOOSE_COMPILETIME)14static void FASTCALL scrypt_ROMix_error(scrypt_mix_word_t *X/*[chunkWords]*/, scrypt_mix_word_t *Y/*[chunkWords]*/, scrypt_mix_word_t *V/*[chunkWords * N]*/, uint32_t N, uint32_t r) {}15static scrypt_ROMixfn scrypt_getROMix() { return scrypt_ROMix_error; }16#else17static void FASTCALL scrypt_ROMix(scrypt_mix_word_t *X, scrypt_mix_word_t *Y, scrypt_mix_word_t *V, uint32_t N, uint32_t r) {}18#endif19static int scrypt_test_mix() { return 0; }20#error must define a mix function!21#endif2223#if !defined(SCRYPT_CHOOSE_COMPILETIME)24#undef SCRYPT_MIX25#define SCRYPT_MIX SCRYPT_MIX_BASE26#endif272829