Skip to content

Solidity ABI optimizations#1422

Draft
g-r-a-n-t wants to merge 3 commits into
argotorg:masterfrom
g-r-a-n-t:abi-opt
Draft

Solidity ABI optimizations#1422
g-r-a-n-t wants to merge 3 commits into
argotorg:masterfrom
g-r-a-n-t:abi-opt

Conversation

@g-r-a-n-t

@g-r-a-n-t g-r-a-n-t commented May 5, 2026

Copy link
Copy Markdown
Collaborator
Commit Area Change
5f093f79c Runtime selector dispatch Replace linear selector dispatch with binary search. Reviewer feedback asks for this to be split into a separate configurable PR.
18df0e539 ABI passthrough runtime Avoid malloc in trivial ABI passthrough recv arms by validating calldata and returning it directly.
7008838dc Test/bench/docs artifacts Add ABI optimization benchmark artifacts, gas reports, docs, and updated snapshots.

@g-r-a-n-t g-r-a-n-t marked this pull request as draft May 5, 2026 01:27
@g-r-a-n-t g-r-a-n-t changed the title Abi opt Solidity ABI optimizations May 6, 2026
@sbillig

sbillig commented May 11, 2026

Copy link
Copy Markdown
Collaborator

Could we pull this one out into a separate PR and make it configurable via an attribute and perhaps fe.toml?

aa158ec | Runtime selector dispatch | Replace linear selector dispatch with binary search.

@sbillig

sbillig commented May 11, 2026

Copy link
Copy Markdown
Collaborator

9f8000e | Calldata validation arithmetic | Avoid checked arithmetic in calldata view validation where bounds are established.

It looks like there are some cases where we should disable checked arithmetic here. Most of this seems to be replacing the built-in checked arithmetic with a manual checking, which suggests to me that the built-in checked arithmetic could/should be optimized.

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