Skip to content

fix(avm): Make the TS simulator lazy read calldata / return data#19843

Merged
IlyasRidhuan merged 3 commits into
merge-train/avmfrom
arv/make_ts_simulator_read_call_return_data_lazily
Jan 23, 2026
Merged

fix(avm): Make the TS simulator lazy read calldata / return data#19843
IlyasRidhuan merged 3 commits into
merge-train/avmfrom
arv/make_ts_simulator_read_call_return_data_lazily

Conversation

@sirasistant

@sirasistant sirasistant commented Jan 22, 2026

Copy link
Copy Markdown
Contributor

Resolves https://linear.app/aztec-labs/issue/AVM-208/wrap-calldatareturndata-in-ts-simulator-in-a-lazy-reader-class

Adds an interface for lazily read calldata and returndata. Creates two classes that implement the interface, an array backed one and a memory backed one. Internal calls use the memory backed one and the top level calldata uses the array backed one. In the memory one, memory is accessed at read time, instead of at creation time like we did before.

This should fix the largest diff that we have right now between the TS and CPP versions of the simulator, that is the lazy behavior of calldata and returndata, unblocking the differential fuzzer.

@sirasistant sirasistant changed the title fix(avm): Make the TS simulator lazy read calldata / return data (WIP) fix(avm): Make the TS simulator lazy read calldata / return data Jan 22, 2026
@IlyasRidhuan IlyasRidhuan merged commit 9387e43 into merge-train/avm Jan 23, 2026
14 checks passed
@IlyasRidhuan IlyasRidhuan deleted the arv/make_ts_simulator_read_call_return_data_lazily branch January 23, 2026 17:32
@AztecBot AztecBot mentioned this pull request Jan 23, 2026
github-merge-queue Bot pushed a commit that referenced this pull request Jan 26, 2026
BEGIN_COMMIT_OVERRIDE
fix: SLOAD fuzzing after configurable addr (#19895)
fix(avm): Make the TS simulator lazy read calldata / return data
(#19843)
chore(avm): ECC pre-audit gadget fuzzing (#19739)
fix: Fuzzer sometimes creates to radix with num_limbs=0 (#19929)
fix: Enforce recipients of l2l1msgs having 20 bytes at most (#19898)
fix merge conflict
END_COMMIT_OVERRIDE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants