Add circuit for RETURNDATASIZE opcode#703
Conversation
CPerezz
left a comment
There was a problem hiding this comment.
Great work! And thanks for submitting a PR for it.
I have some things that should probably be addressed. Specifically with the testing cases applied here.
Aside from that the rest looks good! 😄
Signed-off-by: smtmfft <smtm@taiko.xyz> Signed-off-by: smtmfft <smtm@taiko.xyz>
…ircuits into xiaodino/returndatasize
CPerezz
left a comment
There was a problem hiding this comment.
LGTM!! Thanks for your work on the comments @xiaodino
Requesting one more review before merging.
Maybe @roynalnaruto can check this?
|
I'll review this PR before end of today. |
|
@xiaodino please can you fix the issues with |
Signed-off-by: smtmfft <smtm@taiko.xyz> Signed-off-by: smtmfft <smtm@taiko.xyz>
) i.e., only if it is not root call. RETURN spec: The `RETURN` opcode terminates the call successfully with return data for the caller. It behaves differently in different scenarios: - `is_create` and `is_root` - A. Returns the specified memory chunk as deployment code. - B. End the execution - `is_create` and `not is_root` - A. Returns the specified memory chunk as deployment code. - C. Restores caller's context and switch to it. - `not is_create` and `is_root` - B. End the execution - `not is_create` and `not is_root` - D. Returns the specified memory chunk to the caller. - C. Restores caller's context and switch to it. Signed-off-by: smtmfft <smtmfft@taikocha.in> Signed-off-by: smtmfft <smtmfft@taikocha.in> Co-authored-by: smtmfft <smtmfft@taikocha.in>
…ircuits into xiaodino/returndatasize
|
The issues with rustfmt have been fixed. |
…ircuits into xiaodino/returndatasize
|
@roynalnaruto I actually don't really agree with the U256 instead of U64 used for the value RLC. See: #703 (comment) |
I mentioned that since geth uses |
|
I think in most opcodes we do use So good points to make for both I feel, but practically |
han0110
left a comment
There was a problem hiding this comment.
LGTM! After rebase we could merge this.
han0110
left a comment
There was a problem hiding this comment.
LGTM! Once the CI passes we can merge this.
…ircuits into xiaodino/returndatasize
CI passed! |
* speedup ci using verify_at_rows * use verify_at_rows to speedup super circuit ci tests
…s for the dummy chunk proofs to avoid dummy chunk proofgen time (#712) * partiall address review comments of #670 * disable disable_proof_agg by default * fix soundness issues with data hash * add fixed cells for chunk_is_valid * fix typo * well... need morning coffee * typo in readme * fix soundness issue in is_smaller_than * [feat] unify u8 u16 lookup table (#694) * add range table * replace Range256Table of rlp_circuit_fsm * replace u16_table of tx_circuit * use TableColumn * add type alias * use type alias * annotate lookup column * opt min_num_rows_block in poseidon_circuit (#700) prune debug prints and lint * speedup ci using verify_at_rows (#703) * speedup ci using verify_at_rows * use verify_at_rows to speedup super circuit ci tests * update super circuit row estimation API (#695) * remove num_of_chunks in aggregation circuit's instance column (#704) Co-authored-by: kunxian xia <xiakunxian130@gmail.com> * fix: lost tx_type when doing type conversion (#710) * fix condition (#708) * gates for zero checks * statement 1 is correct * reenable statements 3,6,7 * reenable statement 4 * everything seems to work again * update aggregation test accordingly * update spec * minor clean up * Fix fmt. * Make `ChunkHash` fields public. * fix decompose function * update figures * clean up * address comments * add is_final checks * update readme * constraint hash input length * fix clippy --------- Co-authored-by: Akase Cho <lightsing@users.noreply.github.com> Co-authored-by: Ho <noel.wei@gmail.com> Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> Co-authored-by: kunxian xia <xiakunxian130@gmail.com> Co-authored-by: Steven Gu <asongala@163.com>
No description provided.