Skip to content
This repository was archived by the owner on Jul 5, 2024. It is now read-only.

Commit cbae6da

Browse files
the abstraction is no longer needed
1 parent 1d62488 commit cbae6da

File tree

1 file changed

+14
-32
lines changed

1 file changed

+14
-32
lines changed

zkevm-circuits/src/evm_circuit/util/common_gadget.rs

Lines changed: 14 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -385,51 +385,33 @@ impl<F: Field> TransferToGadget<F> {
385385
mut reversion_info: Option<&mut ReversionInfo<F>>,
386386
) -> Self {
387387
let value_is_zero = cb.is_zero_word(&value);
388-
389-
Self::create_account(
390-
cb,
391-
receiver_address.clone(),
392-
receiver_exists.clone(),
393-
must_create.clone(),
394-
value_is_zero.expr(),
395-
reversion_info.as_deref_mut(),
396-
);
397-
398-
let receiver = cb.condition(not::expr(value_is_zero.expr()), |cb| {
399-
cb.increase_balance(receiver_address, value.clone(), reversion_info)
400-
});
401-
402-
Self {
403-
receiver,
404-
receiver_exists,
405-
must_create,
406-
value_is_zero,
407-
}
408-
}
409-
410-
pub(crate) fn create_account(
411-
cb: &mut EVMConstraintBuilder<F>,
412-
receiver_address: WordLoHi<Expression<F>>,
413-
receiver_exists: Expression<F>,
414-
must_create: Expression<F>,
415-
value_is_zero: Expression<F>,
416-
reversion_info: Option<&mut ReversionInfo<F>>,
417-
) {
388+
// Create account
418389
cb.condition(
419390
and::expr([
420391
not::expr(receiver_exists.expr()),
421-
or::expr([not::expr(value_is_zero.expr()), must_create]),
392+
or::expr([not::expr(value_is_zero.expr()), must_create.clone()]),
422393
]),
423394
|cb| {
424395
cb.account_write(
425396
receiver_address.clone(),
426397
AccountFieldTag::CodeHash,
427398
cb.empty_code_hash(),
428399
WordLoHi::zero(),
429-
reversion_info,
400+
reversion_info.as_deref_mut(),
430401
);
431402
},
432403
);
404+
405+
let receiver = cb.condition(not::expr(value_is_zero.expr()), |cb| {
406+
cb.increase_balance(receiver_address, value.clone(), reversion_info)
407+
});
408+
409+
Self {
410+
receiver,
411+
receiver_exists,
412+
must_create,
413+
value_is_zero,
414+
}
433415
}
434416

435417
pub(crate) fn assign(

0 commit comments

Comments
 (0)