INNER CODE UNIT · Rust
generate_addresses
brndnmtthws/dryoc · src/argon2/mod.rs:636
fn generate_addresses(instance: &mut Argon2Instance, position: &Argon2Position) {
let mut input_block = Block::default();
let zero_block = Block::default();
let mut tmp_block = Block::default();
let mut address_block = Block::default();
let mut scratch = Block::default();
input_block.v[0] = position.pass as u64;
input_block.v[1] = position.lane as u64;
input_block.v[2] = position.slice as u64;
input_block.v[3] = instance.memory_blocks as u64;
input_block.v[4] = instance.passes as u64;
input_block.v[5] = instance.type_ as u64;
for i in 0..instance.segment_length {
if i.is_multiple_of(ARGON2_ADDRESSES_IN_BLOCK) {
input_block.v[6] += 1;
fill_block(