Allocate memory for contract-call?
args representation
#6009
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR changes how we allocate memory space when writing argument representations.
Previously, we used
get_type_in_memory_size
to calculate space for all arguments, which often over-allocated memory unnecessarily.Now, we only allocate space for list arguments — the only type whose representation is written directly to the
offset
.stacks-core/clarity/src/vm/clarity_wasm.rs
Lines 1736 to 1745 in fa0a21c
All other types are written to
in_mem_offset
inside thepass_argument_to_wasm
function and do not require reserved space atoffset
.Closes: stacks-network/clarity-wasm#633