Skip to content

perf: borrow instruction stream across unbudgeted tail dispatch - #64

Draft
matthargett wants to merge 1 commit into
explodingcamera:nextfrom
rebeckerspecialties:perf/borrow-instruction-stream
Draft

matthargett wants to merge 1 commit into
explodingcamera:nextfrom
rebeckerspecialties:perf/borrow-instruction-stream

Conversation

@matthargett

@matthargett matthargett commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Draft: standalone tail-dispatch change on next. This PR no longer depends on the closed #63.

Unbudgeted tail dispatch borrows the current function's instruction slice across opcode handlers and retains its Shared<WasmFunction> owner. It rebinds only after a function switch. Fuel/time-budgeted dispatch is unchanged, and no unsafe code is added. A focused test covers linked modules, a host import, indirect calls, returns, and fuel suspension.

The focused local test passes after rebasing. A full local workspace run stopped while compiling dependencies because the build volume filled; no full-suite result is claimed.

Earlier device measurements compared this change against #63, not upstream next. They should not be used as standalone results. This PR remains draft until we can remeasure A14 efficiency-core PMU and A12/A13 wall time against the current base, including the previously observed short-call regressions.

@matthargett
matthargett force-pushed the perf/borrow-instruction-stream branch from b6df12d to 50f7340 Compare September 25, 2026 04:21
@matthargett
matthargett force-pushed the perf/borrow-instruction-stream branch from 50f7340 to 3f7ea9c Compare September 25, 2026 20:34

This branch has not been deployed

No deployments
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.

1 participant