Skip to content

refactor(jit): simplification and cleanup - #9

Merged
fffonion merged 17 commits into
masterfrom
plan/jit-simplification-review
Jul 29, 2026
Merged

refactor(jit): simplification and cleanup#9
fffonion merged 17 commits into
masterfrom
plan/jit-simplification-review

Conversation

@fffonion

@fffonion fffonion commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Removes the disconnected src/vm/native/inline.rs emitter and keeps the active native lowering path explicit.
  • Replaces repeated JIT builtin specializations with declarative, typed builtin specs covering:
    • length, type, and predicate helpers;
    • string/bytes transforms and fallible regex replacement;
    • collection queries, mutations, and iterator operations;
    • effect and failure-exit metadata consumed directly by lowering.
  • Preserves typed callable-frame shapes, metadata-reserved root locals, and AOT preemption for oversized monolithic lowering.
  • Improves wide WAF JIT/AOT execution while retaining default rule-set semantics and native trace diagnostics.
  • Moves JIT diagnostic assembly into its own module without changing the public snapshot or dump API.
  • Parameterizes Plain, Inherited, and Owned tail-call ABI lowering while retaining separate runtime entries, direct-link behavior, W^X buffers, and keepalive ownership.
  • Places the active implementation plans in the repository plans/ directory and adds the slot-state/deopt model proposal.

Compatibility and scope

  • No runtime tail wrappers were merged across incompatible ABIs.
  • The slot-state document is a design proposal only; deopt and region-fusion behavior remain unchanged.
  • The optional dynasm-rs link spike is outside this PR.

Validation

  • cargo fmt --all -- --check
  • cargo test --workspace --all-features
  • cargo clippy --workspace --all-targets --all-features -- -D warnings
  • cargo doc --workspace --all-features --no-deps
  • cargo check --workspace --no-default-features
  • AArch64 workspace check and strict Clippy
  • wasm target check
  • Focused native side-link, owned-transfer, inherited-handoff, diagnostics, and direct-link regression tests

Performance note

The tail-wrapper refactor keeps ABI selection in lowering time, with no runtime ABI dispatch added. Repeated direct-link test timing did not show a regression signal; its process-level measurements are retained only as a coarse guard, not as a throughput claim.

@fffonion
fffonion force-pushed the plan/jit-simplification-review branch from 7f6bfb7 to ed0f109 Compare July 29, 2026 15:52
@fffonion
fffonion merged commit ddfe640 into master Jul 29, 2026
12 checks passed
@fffonion
fffonion deleted the plan/jit-simplification-review branch July 29, 2026 16:00
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