Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
Go to the source code of this file.
Macros | |
#define | C32 SPH_C32 |
#define | T32 SPH_T32 |
#define | ROL32 SPH_ROTL32 |
#define | XCAT(x, y) XCAT_(x, y) |
#define | XCAT_(x, y) x ## y |
#define | REDS1(x) (((x) & 0xFF) - ((x) >> 8)) |
#define | REDS2(x) (((x) & 0xFFFF) + ((x) >> 16)) |
#define | FFT_LOOP(rb, hk, as, id) |
#define | FFT8(xb, xs, d) |
#define | FFT16(xb, xs, rb) |
#define | FFT32(xb, xs, rb, id) |
#define | FFT64(xb, xs, rb, id) |
#define | FFT128(xb, xs, rb, id) |
#define | FFT256(xb, xs, rb, id) |
#define | INNER(l, h, mm) |
#define | W_SMALL(sb, o1, o2, mm) |
#define | WS_0_0 W_SMALL( 4, 0, 1, 185) |
#define | WS_0_1 W_SMALL( 6, 0, 1, 185) |
#define | WS_0_2 W_SMALL( 0, 0, 1, 185) |
#define | WS_0_3 W_SMALL( 2, 0, 1, 185) |
#define | WS_0_4 W_SMALL( 7, 0, 1, 185) |
#define | WS_0_5 W_SMALL( 5, 0, 1, 185) |
#define | WS_0_6 W_SMALL( 3, 0, 1, 185) |
#define | WS_0_7 W_SMALL( 1, 0, 1, 185) |
#define | WS_1_0 W_SMALL(15, 0, 1, 185) |
#define | WS_1_1 W_SMALL(11, 0, 1, 185) |
#define | WS_1_2 W_SMALL(12, 0, 1, 185) |
#define | WS_1_3 W_SMALL( 8, 0, 1, 185) |
#define | WS_1_4 W_SMALL( 9, 0, 1, 185) |
#define | WS_1_5 W_SMALL(13, 0, 1, 185) |
#define | WS_1_6 W_SMALL(10, 0, 1, 185) |
#define | WS_1_7 W_SMALL(14, 0, 1, 185) |
#define | WS_2_0 W_SMALL(17, -128, -64, 233) |
#define | WS_2_1 W_SMALL(18, -128, -64, 233) |
#define | WS_2_2 W_SMALL(23, -128, -64, 233) |
#define | WS_2_3 W_SMALL(20, -128, -64, 233) |
#define | WS_2_4 W_SMALL(22, -128, -64, 233) |
#define | WS_2_5 W_SMALL(21, -128, -64, 233) |
#define | WS_2_6 W_SMALL(16, -128, -64, 233) |
#define | WS_2_7 W_SMALL(19, -128, -64, 233) |
#define | WS_3_0 W_SMALL(30, -191, -127, 233) |
#define | WS_3_1 W_SMALL(24, -191, -127, 233) |
#define | WS_3_2 W_SMALL(25, -191, -127, 233) |
#define | WS_3_3 W_SMALL(31, -191, -127, 233) |
#define | WS_3_4 W_SMALL(27, -191, -127, 233) |
#define | WS_3_5 W_SMALL(29, -191, -127, 233) |
#define | WS_3_6 W_SMALL(28, -191, -127, 233) |
#define | WS_3_7 W_SMALL(26, -191, -127, 233) |
#define | W_BIG(sb, o1, o2, mm) |
#define | WB_0_0 W_BIG( 4, 0, 1, 185) |
#define | WB_0_1 W_BIG( 6, 0, 1, 185) |
#define | WB_0_2 W_BIG( 0, 0, 1, 185) |
#define | WB_0_3 W_BIG( 2, 0, 1, 185) |
#define | WB_0_4 W_BIG( 7, 0, 1, 185) |
#define | WB_0_5 W_BIG( 5, 0, 1, 185) |
#define | WB_0_6 W_BIG( 3, 0, 1, 185) |
#define | WB_0_7 W_BIG( 1, 0, 1, 185) |
#define | WB_1_0 W_BIG(15, 0, 1, 185) |
#define | WB_1_1 W_BIG(11, 0, 1, 185) |
#define | WB_1_2 W_BIG(12, 0, 1, 185) |
#define | WB_1_3 W_BIG( 8, 0, 1, 185) |
#define | WB_1_4 W_BIG( 9, 0, 1, 185) |
#define | WB_1_5 W_BIG(13, 0, 1, 185) |
#define | WB_1_6 W_BIG(10, 0, 1, 185) |
#define | WB_1_7 W_BIG(14, 0, 1, 185) |
#define | WB_2_0 W_BIG(17, -256, -128, 233) |
#define | WB_2_1 W_BIG(18, -256, -128, 233) |
#define | WB_2_2 W_BIG(23, -256, -128, 233) |
#define | WB_2_3 W_BIG(20, -256, -128, 233) |
#define | WB_2_4 W_BIG(22, -256, -128, 233) |
#define | WB_2_5 W_BIG(21, -256, -128, 233) |
#define | WB_2_6 W_BIG(16, -256, -128, 233) |
#define | WB_2_7 W_BIG(19, -256, -128, 233) |
#define | WB_3_0 W_BIG(30, -383, -255, 233) |
#define | WB_3_1 W_BIG(24, -383, -255, 233) |
#define | WB_3_2 W_BIG(25, -383, -255, 233) |
#define | WB_3_3 W_BIG(31, -383, -255, 233) |
#define | WB_3_4 W_BIG(27, -383, -255, 233) |
#define | WB_3_5 W_BIG(29, -383, -255, 233) |
#define | WB_3_6 W_BIG(28, -383, -255, 233) |
#define | WB_3_7 W_BIG(26, -383, -255, 233) |
#define | IF(x, y, z) ((((y) ^ (z)) & (x)) ^ (z)) |
#define | MAJ(x, y, z) (((x) & (y)) | (((x) | (y)) & (z))) |
#define | PP4_0_0 1 |
#define | PP4_0_1 0 |
#define | PP4_0_2 3 |
#define | PP4_0_3 2 |
#define | PP4_1_0 2 |
#define | PP4_1_1 3 |
#define | PP4_1_2 0 |
#define | PP4_1_3 1 |
#define | PP4_2_0 3 |
#define | PP4_2_1 2 |
#define | PP4_2_2 1 |
#define | PP4_2_3 0 |
#define | PP8_0_0 1 |
#define | PP8_0_1 0 |
#define | PP8_0_2 3 |
#define | PP8_0_3 2 |
#define | PP8_0_4 5 |
#define | PP8_0_5 4 |
#define | PP8_0_6 7 |
#define | PP8_0_7 6 |
#define | PP8_1_0 6 |
#define | PP8_1_1 7 |
#define | PP8_1_2 4 |
#define | PP8_1_3 5 |
#define | PP8_1_4 2 |
#define | PP8_1_5 3 |
#define | PP8_1_6 0 |
#define | PP8_1_7 1 |
#define | PP8_2_0 2 |
#define | PP8_2_1 3 |
#define | PP8_2_2 0 |
#define | PP8_2_3 1 |
#define | PP8_2_4 6 |
#define | PP8_2_5 7 |
#define | PP8_2_6 4 |
#define | PP8_2_7 5 |
#define | PP8_3_0 3 |
#define | PP8_3_1 2 |
#define | PP8_3_2 1 |
#define | PP8_3_3 0 |
#define | PP8_3_4 7 |
#define | PP8_3_5 6 |
#define | PP8_3_6 5 |
#define | PP8_3_7 4 |
#define | PP8_4_0 5 |
#define | PP8_4_1 4 |
#define | PP8_4_2 7 |
#define | PP8_4_3 6 |
#define | PP8_4_4 1 |
#define | PP8_4_5 0 |
#define | PP8_4_6 3 |
#define | PP8_4_7 2 |
#define | PP8_5_0 7 |
#define | PP8_5_1 6 |
#define | PP8_5_2 5 |
#define | PP8_5_3 4 |
#define | PP8_5_4 3 |
#define | PP8_5_5 2 |
#define | PP8_5_6 1 |
#define | PP8_5_7 0 |
#define | PP8_6_0 4 |
#define | PP8_6_1 5 |
#define | PP8_6_2 6 |
#define | PP8_6_3 7 |
#define | PP8_6_4 0 |
#define | PP8_6_5 1 |
#define | PP8_6_6 2 |
#define | PP8_6_7 3 |
#define | DECL_STATE_SMALL u32 A0, A1, A2, A3, B0, B1, B2, B3, C0, C1, C2, C3, D0, D1, D2, D3; |
#define | READ_STATE_SMALL(sc) |
#define | WRITE_STATE_SMALL(sc) |
#define | DECL_STATE_BIG |
#define | READ_STATE_BIG(sc) |
#define | WRITE_STATE_BIG(sc) |
#define | STEP_ELT(n, w, fun, s, ppb) |
#define | STEP_SMALL(w0, w1, w2, w3, fun, r, s, pp4b) |
#define | STEP_BIG(w0, w1, w2, w3, w4, w5, w6, w7, fun, r, s, pp8b) |
#define | M3_0_0 0_ |
#define | M3_1_0 1_ |
#define | M3_2_0 2_ |
#define | M3_3_0 0_ |
#define | M3_4_0 1_ |
#define | M3_5_0 2_ |
#define | M3_6_0 0_ |
#define | M3_7_0 1_ |
#define | M3_0_1 1_ |
#define | M3_1_1 2_ |
#define | M3_2_1 0_ |
#define | M3_3_1 1_ |
#define | M3_4_1 2_ |
#define | M3_5_1 0_ |
#define | M3_6_1 1_ |
#define | M3_7_1 2_ |
#define | M3_0_2 2_ |
#define | M3_1_2 0_ |
#define | M3_2_2 1_ |
#define | M3_3_2 2_ |
#define | M3_4_2 0_ |
#define | M3_5_2 1_ |
#define | M3_6_2 2_ |
#define | M3_7_2 0_ |
#define | STEP_SMALL_(w, fun, r, s, pp4b) STEP_SMALL w, fun, r, s, pp4b) |
#define | ONE_ROUND_SMALL(ri, isp, p0, p1, p2, p3) |
#define | M7_0_0 0_ |
#define | M7_1_0 1_ |
#define | M7_2_0 2_ |
#define | M7_3_0 3_ |
#define | M7_4_0 4_ |
#define | M7_5_0 5_ |
#define | M7_6_0 6_ |
#define | M7_7_0 0_ |
#define | M7_0_1 1_ |
#define | M7_1_1 2_ |
#define | M7_2_1 3_ |
#define | M7_3_1 4_ |
#define | M7_4_1 5_ |
#define | M7_5_1 6_ |
#define | M7_6_1 0_ |
#define | M7_7_1 1_ |
#define | M7_0_2 2_ |
#define | M7_1_2 3_ |
#define | M7_2_2 4_ |
#define | M7_3_2 5_ |
#define | M7_4_2 6_ |
#define | M7_5_2 0_ |
#define | M7_6_2 1_ |
#define | M7_7_2 2_ |
#define | M7_0_3 3_ |
#define | M7_1_3 4_ |
#define | M7_2_3 5_ |
#define | M7_3_3 6_ |
#define | M7_4_3 0_ |
#define | M7_5_3 1_ |
#define | M7_6_3 2_ |
#define | M7_7_3 3_ |
#define | STEP_BIG_(w, fun, r, s, pp8b) STEP_BIG w, fun, r, s, pp8b) |
#define | ONE_ROUND_BIG(ri, isp, p0, p1, p2, p3) |
Typedefs | |
typedef sph_u32 | u32 |
typedef sph_s32 | s32 |
Functions | |
static void | fft64 (unsigned char *x, size_t xs, s32 *q) |
static void | compress_small (sph_simd_small_context *sc, int last) |
static void | compress_big (sph_simd_big_context *sc, int last) |
static void | init_small (void *cc, const u32 *iv) |
static void | init_big (void *cc, const u32 *iv) |
static void | update_small (void *cc, const void *data, size_t len) |
static void | update_big (void *cc, const void *data, size_t len) |
static void | encode_count_small (unsigned char *dst, u32 low, u32 high, size_t ptr, unsigned n) |
static void | encode_count_big (unsigned char *dst, u32 low, u32 high, size_t ptr, unsigned n) |
static void | finalize_small (void *cc, unsigned ub, unsigned n, void *dst, size_t dst_len) |
static void | finalize_big (void *cc, unsigned ub, unsigned n, void *dst, size_t dst_len) |
void | sph_simd224_init (void *cc) |
Initialize an SIMD-224 context. More... | |
void | sph_simd224 (void *cc, const void *data, size_t len) |
Process some data bytes. More... | |
void | sph_simd224_close (void *cc, void *dst) |
Terminate the current SIMD-224 computation and output the result into the provided buffer. More... | |
void | sph_simd224_addbits_and_close (void *cc, unsigned ub, unsigned n, void *dst) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (28 bytes). More... | |
void | sph_simd256_init (void *cc) |
Initialize an SIMD-256 context. More... | |
void | sph_simd256 (void *cc, const void *data, size_t len) |
Process some data bytes. More... | |
void | sph_simd256_close (void *cc, void *dst) |
Terminate the current SIMD-256 computation and output the result into the provided buffer. More... | |
void | sph_simd256_addbits_and_close (void *cc, unsigned ub, unsigned n, void *dst) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (32 bytes). More... | |
void | sph_simd384_init (void *cc) |
Initialize an SIMD-384 context. More... | |
void | sph_simd384 (void *cc, const void *data, size_t len) |
Process some data bytes. More... | |
void | sph_simd384_close (void *cc, void *dst) |
Terminate the current SIMD-384 computation and output the result into the provided buffer. More... | |
void | sph_simd384_addbits_and_close (void *cc, unsigned ub, unsigned n, void *dst) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (48 bytes). More... | |
void | sph_simd512_init (void *cc) |
Initialize an SIMD-512 context. More... | |
void | sph_simd512 (void *cc, const void *data, size_t len) |
Process some data bytes. More... | |
void | sph_simd512_close (void *cc, void *dst) |
Terminate the current SIMD-512 computation and output the result into the provided buffer. More... | |
void | sph_simd512_addbits_and_close (void *cc, unsigned ub, unsigned n, void *dst) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (64 bytes). More... | |
Variables | |
static const s32 | alpha_tab [] |
static const unsigned short | yoff_s_n [] |
static const unsigned short | yoff_s_f [] |
static const unsigned short | yoff_b_n [] |
static const unsigned short | yoff_b_f [] |
static const u32 | IV224 [] |
static const u32 | IV256 [] |
static const u32 | IV384 [] |
static const u32 | IV512 [] |
Macro Definition Documentation
◆ C32
◆ DECL_STATE_BIG
#define DECL_STATE_BIG |
◆ DECL_STATE_SMALL
#define DECL_STATE_SMALL u32 A0, A1, A2, A3, B0, B1, B2, B3, C0, C1, C2, C3, D0, D1, D2, D3; |
Definition at line 548 of file simd.c.
Referenced by compress_small().
◆ FFT128
#define FFT128 | ( | xb, | |
xs, | |||
rb, | |||
id | |||
) |
◆ FFT16
#define FFT16 | ( | xb, | |
xs, | |||
rb | |||
) |
◆ FFT256
#define FFT256 | ( | xb, | |
xs, | |||
rb, | |||
id | |||
) |
Definition at line 273 of file simd.c.
Referenced by compress_big().
◆ FFT32
#define FFT32 | ( | xb, | |
xs, | |||
rb, | |||
id | |||
) |
◆ FFT64
#define FFT64 | ( | xb, | |
xs, | |||
rb, | |||
id | |||
) |
◆ FFT8
#define FFT8 | ( | xb, | |
xs, | |||
d | |||
) |
◆ FFT_LOOP
◆ IF
#define IF | ( | x, | |
y, | |||
z | |||
) | ((((y) ^ (z)) & (x)) ^ (z)) |
Definition at line 458 of file simd.c.
Referenced by compress_big(), and compress_small().
◆ INNER
#define INNER | ( | l, | |
h, | |||
mm | |||
) |
◆ M3_0_0
◆ M3_0_1
◆ M3_0_2
◆ M3_1_0
◆ M3_1_1
◆ M3_1_2
◆ M3_2_0
◆ M3_2_1
◆ M3_2_2
◆ M3_3_0
◆ M3_3_1
◆ M3_3_2
◆ M3_4_0
◆ M3_4_1
◆ M3_4_2
◆ M3_5_0
◆ M3_5_1
◆ M3_5_2
◆ M3_6_0
◆ M3_6_1
◆ M3_6_2
◆ M3_7_0
◆ M3_7_1
◆ M3_7_2
◆ M7_0_0
◆ M7_0_1
◆ M7_0_2
◆ M7_0_3
◆ M7_1_0
◆ M7_1_1
◆ M7_1_2
◆ M7_1_3
◆ M7_2_0
◆ M7_2_1
◆ M7_2_2
◆ M7_2_3
◆ M7_3_0
◆ M7_3_1
◆ M7_3_2
◆ M7_3_3
◆ M7_4_0
◆ M7_4_1
◆ M7_4_2
◆ M7_4_3
◆ M7_5_0
◆ M7_5_1
◆ M7_5_2
◆ M7_5_3
◆ M7_6_0
◆ M7_6_1
◆ M7_6_2
◆ M7_6_3
◆ M7_7_0
◆ M7_7_1
◆ M7_7_2
◆ M7_7_3
◆ MAJ
◆ ONE_ROUND_BIG
#define ONE_ROUND_BIG | ( | ri, | |
isp, | |||
p0, | |||
p1, | |||
p2, | |||
p3 | |||
) |
Definition at line 791 of file simd.c.
Referenced by compress_big().
◆ ONE_ROUND_SMALL
#define ONE_ROUND_SMALL | ( | ri, | |
isp, | |||
p0, | |||
p1, | |||
p2, | |||
p3 | |||
) |
Definition at line 734 of file simd.c.
Referenced by compress_small().
◆ PP4_0_0
◆ PP4_0_1
◆ PP4_0_2
◆ PP4_0_3
◆ PP4_1_0
◆ PP4_1_1
◆ PP4_1_2
◆ PP4_1_3
◆ PP4_2_0
◆ PP4_2_1
◆ PP4_2_2
◆ PP4_2_3
◆ PP8_0_0
◆ PP8_0_1
◆ PP8_0_2
◆ PP8_0_3
◆ PP8_0_4
◆ PP8_0_5
◆ PP8_0_6
◆ PP8_0_7
◆ PP8_1_0
◆ PP8_1_1
◆ PP8_1_2
◆ PP8_1_3
◆ PP8_1_4
◆ PP8_1_5
◆ PP8_1_6
◆ PP8_1_7
◆ PP8_2_0
◆ PP8_2_1
◆ PP8_2_2
◆ PP8_2_3
◆ PP8_2_4
◆ PP8_2_5
◆ PP8_2_6
◆ PP8_2_7
◆ PP8_3_0
◆ PP8_3_1
◆ PP8_3_2
◆ PP8_3_3
◆ PP8_3_4
◆ PP8_3_5
◆ PP8_3_6
◆ PP8_3_7
◆ PP8_4_0
◆ PP8_4_1
◆ PP8_4_2
◆ PP8_4_3
◆ PP8_4_4
◆ PP8_4_5
◆ PP8_4_6
◆ PP8_4_7
◆ PP8_5_0
◆ PP8_5_1
◆ PP8_5_2
◆ PP8_5_3
◆ PP8_5_4
◆ PP8_5_5
◆ PP8_5_6
◆ PP8_5_7
◆ PP8_6_0
◆ PP8_6_1
◆ PP8_6_2
◆ PP8_6_3
◆ PP8_6_4
◆ PP8_6_5
◆ PP8_6_6
◆ PP8_6_7
◆ READ_STATE_BIG
#define READ_STATE_BIG | ( | sc | ) |
Definition at line 595 of file simd.c.
Referenced by compress_big().
◆ READ_STATE_SMALL
#define READ_STATE_SMALL | ( | sc | ) |
Definition at line 551 of file simd.c.
Referenced by compress_small().
◆ REDS1
#define REDS1 | ( | x | ) | (((x) & 0xFF) - ((x) >> 8)) |
Definition at line 93 of file simd.c.
Referenced by compress_big(), and compress_small().
◆ REDS2
#define REDS2 | ( | x | ) | (((x) & 0xFFFF) + ((x) >> 16)) |
Definition at line 94 of file simd.c.
Referenced by compress_big(), and compress_small().
◆ ROL32
#define ROL32 SPH_ROTL32 |
◆ STEP_BIG
#define STEP_BIG | ( | w0, | |
w1, | |||
w2, | |||
w3, | |||
w4, | |||
w5, | |||
w6, | |||
w7, | |||
fun, | |||
r, | |||
s, | |||
pp8b | |||
) |
Definition at line 686 of file simd.c.
Referenced by compress_big().
◆ STEP_BIG_
#define STEP_BIG_ | ( | w, | |
fun, | |||
r, | |||
s, | |||
pp8b | |||
) | STEP_BIG w, fun, r, s, pp8b) |
◆ STEP_ELT
#define STEP_ELT | ( | n, | |
w, | |||
fun, | |||
s, | |||
ppb | |||
) |
◆ STEP_SMALL
#define STEP_SMALL | ( | w0, | |
w1, | |||
w2, | |||
w3, | |||
fun, | |||
r, | |||
s, | |||
pp4b | |||
) |
Definition at line 675 of file simd.c.
Referenced by compress_small().
◆ STEP_SMALL_
#define STEP_SMALL_ | ( | w, | |
fun, | |||
r, | |||
s, | |||
pp4b | |||
) | STEP_SMALL w, fun, r, s, pp4b) |
◆ T32
#define T32 SPH_T32 |
Definition at line 54 of file simd.c.
Referenced by encode_count_big(), encode_count_small(), update_big(), and update_small().
◆ W_BIG
#define W_BIG | ( | sb, | |
o1, | |||
o2, | |||
mm | |||
) |
◆ W_SMALL
#define W_SMALL | ( | sb, | |
o1, | |||
o2, | |||
mm | |||
) |
◆ WB_0_0
◆ WB_0_1
◆ WB_0_2
◆ WB_0_3
◆ WB_0_4
◆ WB_0_5
◆ WB_0_6
◆ WB_0_7
◆ WB_1_0
◆ WB_1_1
◆ WB_1_2
◆ WB_1_3
◆ WB_1_4
◆ WB_1_5
◆ WB_1_6
◆ WB_1_7
◆ WB_2_0
◆ WB_2_1
◆ WB_2_2
◆ WB_2_3
◆ WB_2_4
◆ WB_2_5
◆ WB_2_6
◆ WB_2_7
◆ WB_3_0
◆ WB_3_1
◆ WB_3_2
◆ WB_3_3
◆ WB_3_4
◆ WB_3_5
◆ WB_3_6
◆ WB_3_7
◆ WRITE_STATE_BIG
#define WRITE_STATE_BIG | ( | sc | ) |
Definition at line 630 of file simd.c.
Referenced by compress_big().
◆ WRITE_STATE_SMALL
#define WRITE_STATE_SMALL | ( | sc | ) |
Definition at line 570 of file simd.c.
Referenced by compress_small().
◆ WS_0_0
◆ WS_0_1
◆ WS_0_2
◆ WS_0_3
◆ WS_0_4
◆ WS_0_5
◆ WS_0_6
◆ WS_0_7
◆ WS_1_0
◆ WS_1_1
◆ WS_1_2
◆ WS_1_3
◆ WS_1_4
◆ WS_1_5
◆ WS_1_6
◆ WS_1_7
◆ WS_2_0
◆ WS_2_1
◆ WS_2_2
◆ WS_2_3
◆ WS_2_4
◆ WS_2_5
◆ WS_2_6
◆ WS_2_7
◆ WS_3_0
◆ WS_3_1
◆ WS_3_2
◆ WS_3_3
◆ WS_3_4
◆ WS_3_5
◆ WS_3_6
◆ WS_3_7
◆ XCAT
◆ XCAT_
Typedef Documentation
◆ s32
◆ u32
Function Documentation
◆ compress_big()
|
static |
Definition at line 1374 of file simd.c.
References _(), sph_simd_big_context::buf, DECL_STATE_BIG, FFT256, IF, memcpy(), ONE_ROUND_BIG, READ_STATE_BIG, REDS1, REDS2, sph_dec32le_aligned(), sph_simd_big_context::state, STEP_BIG, WRITE_STATE_BIG, yoff_b_f, and yoff_b_n.
Referenced by finalize_big(), and update_big().
◆ compress_small()
|
static |
Definition at line 996 of file simd.c.
References _(), sph_simd_small_context::buf, DECL_STATE_SMALL, FFT128, IF, memcpy(), ONE_ROUND_SMALL, READ_STATE_SMALL, REDS1, REDS2, sph_dec32le_aligned(), sph_simd_small_context::state, STEP_SMALL, WRITE_STATE_SMALL, yoff_s_f, and yoff_s_n.
Referenced by finalize_small(), and update_small().
◆ encode_count_big()
|
static |
Definition at line 1644 of file simd.c.
References high, low, sph_enc32le(), and T32.
Referenced by finalize_big().
◆ encode_count_small()
|
static |
Definition at line 1633 of file simd.c.
References high, low, sph_enc32le(), and T32.
Referenced by finalize_small().
◆ fft64()
|
static |
◆ finalize_big()
|
static |
Definition at line 1677 of file simd.c.
References sph_simd_big_context::buf, compress_big(), sph_simd_big_context::count_high, sph_simd_big_context::count_low, encode_count_big(), sph_simd_big_context::ptr, sph_enc32le(), and sph_simd_big_context::state.
Referenced by sph_simd384_addbits_and_close(), and sph_simd512_addbits_and_close().
◆ finalize_small()
|
static |
Definition at line 1655 of file simd.c.
References sph_simd_small_context::buf, compress_small(), sph_simd_small_context::count_high, sph_simd_small_context::count_low, encode_count_small(), sph_simd_small_context::ptr, sph_enc32le(), and sph_simd_small_context::state.
Referenced by sph_simd224_addbits_and_close(), and sph_simd256_addbits_and_close().
◆ init_big()
|
static |
Definition at line 1572 of file simd.c.
References sph_simd_big_context::count_high, sph_simd_big_context::count_low, memcpy(), sph_simd_big_context::ptr, and sph_simd_big_context::state.
Referenced by sph_simd384_init(), and sph_simd512_init().
◆ init_small()
|
static |
Definition at line 1561 of file simd.c.
References sph_simd_small_context::count_high, sph_simd_small_context::count_low, memcpy(), sph_simd_small_context::ptr, and sph_simd_small_context::state.
Referenced by sph_simd224_init(), and sph_simd256_init().
◆ sph_simd224()
void sph_simd224 | ( | void * | cc, |
const void * | data, | ||
size_t | len | ||
) |
Process some data bytes.
It is acceptable that len
is zero (in which case this function does nothing).
- Parameters
-
cc the SIMD-224 context data the input data len the input data length (in bytes)
Definition at line 1705 of file simd.c.
References update_small().
◆ sph_simd224_addbits_and_close()
void sph_simd224_addbits_and_close | ( | void * | cc, |
unsigned | ub, | ||
unsigned | n, | ||
void * | dst | ||
) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (28 bytes).
If bit number i in ub
has value 2^i, then the extra bits are those numbered 7 downto 8-n (this is the big-endian convention at the byte level). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-224 context ub the extra bits n the number of extra bits (0 to 7) dst the destination buffer
Definition at line 1717 of file simd.c.
References finalize_small(), and sph_simd224_init().
Referenced by sph_simd224_close().
◆ sph_simd224_close()
void sph_simd224_close | ( | void * | cc, |
void * | dst | ||
) |
Terminate the current SIMD-224 computation and output the result into the provided buffer.
The destination buffer must be wide enough to accomodate the result (28 bytes). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-224 context dst the destination buffer
Definition at line 1711 of file simd.c.
References sph_simd224_addbits_and_close().
◆ sph_simd224_init()
void sph_simd224_init | ( | void * | cc | ) |
Initialize an SIMD-224 context.
This process performs no memory allocation.
- Parameters
-
cc the SIMD-224 context (pointer to a sph_simd224_context
)
Definition at line 1699 of file simd.c.
References init_small(), and IV224.
Referenced by sph_simd224_addbits_and_close().
◆ sph_simd256()
void sph_simd256 | ( | void * | cc, |
const void * | data, | ||
size_t | len | ||
) |
Process some data bytes.
It is acceptable that len
is zero (in which case this function does nothing).
- Parameters
-
cc the SIMD-256 context data the input data len the input data length (in bytes)
Definition at line 1730 of file simd.c.
References update_small().
◆ sph_simd256_addbits_and_close()
void sph_simd256_addbits_and_close | ( | void * | cc, |
unsigned | ub, | ||
unsigned | n, | ||
void * | dst | ||
) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (32 bytes).
If bit number i in ub
has value 2^i, then the extra bits are those numbered 7 downto 8-n (this is the big-endian convention at the byte level). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-256 context ub the extra bits n the number of extra bits (0 to 7) dst the destination buffer
Definition at line 1742 of file simd.c.
References finalize_small(), and sph_simd256_init().
Referenced by sph_simd256_close().
◆ sph_simd256_close()
void sph_simd256_close | ( | void * | cc, |
void * | dst | ||
) |
Terminate the current SIMD-256 computation and output the result into the provided buffer.
The destination buffer must be wide enough to accomodate the result (32 bytes). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-256 context dst the destination buffer
Definition at line 1736 of file simd.c.
References sph_simd256_addbits_and_close().
◆ sph_simd256_init()
void sph_simd256_init | ( | void * | cc | ) |
Initialize an SIMD-256 context.
This process performs no memory allocation.
- Parameters
-
cc the SIMD-256 context (pointer to a sph_simd256_context
)
Definition at line 1724 of file simd.c.
References init_small(), and IV256.
Referenced by sph_simd256_addbits_and_close().
◆ sph_simd384()
void sph_simd384 | ( | void * | cc, |
const void * | data, | ||
size_t | len | ||
) |
Process some data bytes.
It is acceptable that len
is zero (in which case this function does nothing).
- Parameters
-
cc the SIMD-384 context data the input data len the input data length (in bytes)
Definition at line 1755 of file simd.c.
References update_big().
◆ sph_simd384_addbits_and_close()
void sph_simd384_addbits_and_close | ( | void * | cc, |
unsigned | ub, | ||
unsigned | n, | ||
void * | dst | ||
) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (48 bytes).
If bit number i in ub
has value 2^i, then the extra bits are those numbered 7 downto 8-n (this is the big-endian convention at the byte level). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-384 context ub the extra bits n the number of extra bits (0 to 7) dst the destination buffer
Definition at line 1767 of file simd.c.
References finalize_big(), and sph_simd384_init().
Referenced by sph_simd384_close().
◆ sph_simd384_close()
void sph_simd384_close | ( | void * | cc, |
void * | dst | ||
) |
Terminate the current SIMD-384 computation and output the result into the provided buffer.
The destination buffer must be wide enough to accomodate the result (48 bytes). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-384 context dst the destination buffer
Definition at line 1761 of file simd.c.
References sph_simd384_addbits_and_close().
◆ sph_simd384_init()
void sph_simd384_init | ( | void * | cc | ) |
Initialize an SIMD-384 context.
This process performs no memory allocation.
- Parameters
-
cc the SIMD-384 context (pointer to a sph_simd384_context
)
Definition at line 1749 of file simd.c.
References init_big(), and IV384.
Referenced by sph_simd384_addbits_and_close().
◆ sph_simd512()
void sph_simd512 | ( | void * | cc, |
const void * | data, | ||
size_t | len | ||
) |
Process some data bytes.
It is acceptable that len
is zero (in which case this function does nothing).
- Parameters
-
cc the SIMD-512 context data the input data len the input data length (in bytes)
Definition at line 1780 of file simd.c.
References update_big().
Referenced by HashX11().
◆ sph_simd512_addbits_and_close()
void sph_simd512_addbits_and_close | ( | void * | cc, |
unsigned | ub, | ||
unsigned | n, | ||
void * | dst | ||
) |
Add a few additional bits (0 to 7) to the current computation, then terminate it and output the result in the provided buffer, which must be wide enough to accomodate the result (64 bytes).
If bit number i in ub
has value 2^i, then the extra bits are those numbered 7 downto 8-n (this is the big-endian convention at the byte level). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-512 context ub the extra bits n the number of extra bits (0 to 7) dst the destination buffer
Definition at line 1792 of file simd.c.
References finalize_big(), and sph_simd512_init().
Referenced by sph_simd512_close().
◆ sph_simd512_close()
void sph_simd512_close | ( | void * | cc, |
void * | dst | ||
) |
Terminate the current SIMD-512 computation and output the result into the provided buffer.
The destination buffer must be wide enough to accomodate the result (64 bytes). The context is automatically reinitialized.
- Parameters
-
cc the SIMD-512 context dst the destination buffer
Definition at line 1786 of file simd.c.
References sph_simd512_addbits_and_close().
Referenced by HashX11().
◆ sph_simd512_init()
void sph_simd512_init | ( | void * | cc | ) |
Initialize an SIMD-512 context.
This process performs no memory allocation.
- Parameters
-
cc the SIMD-512 context (pointer to a sph_simd512_context
)
Definition at line 1774 of file simd.c.
References init_big(), and IV512.
Referenced by HashX11(), and sph_simd512_addbits_and_close().
◆ update_big()
|
static |
Definition at line 1608 of file simd.c.
References sph_simd_big_context::buf, compress_big(), sph_simd_big_context::count_high, sph_simd_big_context::count_low, memcpy(), sph_simd_big_context::ptr, and T32.
Referenced by sph_simd384(), and sph_simd512().
◆ update_small()
|
static |
Definition at line 1583 of file simd.c.
References sph_simd_small_context::buf, compress_small(), sph_simd_small_context::count_high, sph_simd_small_context::count_low, memcpy(), sph_simd_small_context::ptr, and T32.
Referenced by sph_simd224(), and sph_simd256().
Variable Documentation
◆ alpha_tab
|
static |
◆ IV224
|
static |
◆ IV256
|
static |
◆ IV384
|
static |
◆ IV512
|
static |
◆ yoff_b_f
|
static |
Definition at line 348 of file simd.c.
Referenced by compress_big().
◆ yoff_b_n
|
static |
Definition at line 320 of file simd.c.
Referenced by compress_big().
◆ yoff_s_f
|
static |
Definition at line 303 of file simd.c.
Referenced by compress_small().
◆ yoff_s_n
|
static |
Definition at line 286 of file simd.c.
Referenced by compress_small().