mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-09 09:13:09 +00:00
more %stack sha2 cleanup
This commit is contained in:
parent
5ca5a3b3c8
commit
140242c556
@ -65,13 +65,7 @@ sha2_gen_message_schedule_from_block_0_end:
|
||||
POP
|
||||
PUSH 8
|
||||
// stack: counter=8, output_addr, block[0], block[1], retdest
|
||||
SWAP2
|
||||
// stack: block[0], output_addr, counter, block[1], retdest
|
||||
SWAP3
|
||||
// stack: block[1], output_addr, counter, block[0], retdest
|
||||
SWAP2
|
||||
// stack: counter, output_addr, block[1], block[0], retdest
|
||||
SWAP1
|
||||
%stack (counter, out, b0, b1) -> (out, counter, b1, b0)
|
||||
// stack: output_addr, counter, block[1], block[0], retdest
|
||||
%add_const(64)
|
||||
// stack: output_addr + 64, counter, block[1], block[0], retdest
|
||||
@ -191,13 +185,7 @@ sha2_gen_message_schedule_remaining_loop:
|
||||
%add_u32
|
||||
%add_u32
|
||||
// stack: sigma_1(x[output_addr - 2*4]) + x[output_addr - 16*4] + sigma_0(x[output_addr - 15*4]) + x[output_addr - 7*4], output_addr, counter, block[0], block[1], retdest
|
||||
SWAP1
|
||||
// stack: output_addr, sigma_1(x[output_addr - 2*4]) + x[output_addr - 16*4] + sigma_0(x[output_addr - 15*4]) + x[output_addr - 7*4], counter, block[0], block[1], retdest
|
||||
DUP1
|
||||
// stack: output_addr, output_addr, sigma_1(x[output_addr - 2*4]) + x[output_addr - 16*4] + sigma_0(x[output_addr - 15*4]) + x[output_addr - 7*4], counter, block[0], block[1], retdest
|
||||
SWAP2
|
||||
// stack: sigma_1(x[output_addr - 2*4]) + x[output_addr - 16*4] + sigma_0(x[output_addr - 15*4]) + x[output_addr - 7*4], output_addr, output_addr, counter, block[0], block[1], retdest
|
||||
SWAP1
|
||||
DUP2
|
||||
// stack: output_addr, sigma_1(x[output_addr - 2*4]) + x[output_addr - 16*4] + sigma_0(x[output_addr - 15*4]) + x[output_addr - 7*4], output_addr, counter, block[0], block[1], retdest
|
||||
%mstore_kernel_general_u32
|
||||
// stack: output_addr, counter, block[0], block[1], retdest
|
||||
|
||||
@ -171,7 +171,7 @@
|
||||
|
||||
%macro sha2_majority
|
||||
// stack: x, y, z
|
||||
%stack ((a: 3)) -> (a, a)
|
||||
%stack ((xyz: 3)) -> (xyz, xyz)
|
||||
// stack: x, y, z, x, y, z
|
||||
AND
|
||||
// stack: x and y, z, x, y, z
|
||||
|
||||
@ -15,11 +15,7 @@ sha2_store_loop:
|
||||
ISZERO
|
||||
%jumpi(sha2_store_end)
|
||||
// stack: addr, counter, x[num_bytes-counter], ... , x[num_bytes-1], retdest
|
||||
DUP1
|
||||
// stack: addr, addr, counter, x[num_bytes-counter], ... , x[num_bytes-1], retdest
|
||||
SWAP3
|
||||
// stack: x[num_bytes-counter], addr, counter, addr, ... , x[num_bytes-1], retdest
|
||||
SWAP1
|
||||
%stack (addr, counter, val) -> (addr, val, counter, addr)
|
||||
// stack: addr, x[num_bytes-counter], counter, addr, ... , x[num_bytes-1], retdest
|
||||
%mstore_kernel_general
|
||||
// stack: counter, addr, ... , x[num_bytes-1], retdest
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user