ReviewOS

zig-utils/zig-js

WebAssembly bulk memory: execute memory operations and passive data lifecycle

#277
Closed chris opened this 9 days ago ·
9 days ago

Parent: #272 Depends on: #276 Roadmap: #263, #142, #134

Implement failure-atomic bulk memory execution and passive data segment state.

Acceptance:

  • Instantiate active data segments failure-atomically and retain passive data per instance.
  • Execute memory.init, data.drop, memory.copy, and memory.fill with exact unsigned bounds and trap ordering.
  • Preserve memmove overlap semantics and make zero-length boundary cases spec-exact.
  • Preserve dropped-segment behavior across repeated calls, traps, and imported memories.
  • Add focused executor and JavaScript API coverage.
9 days ago

Completed in d5eef86a. Active data segments remain failure-atomic; passive data is per-instance and droppable; memory.init/data.drop/copy/fill implement unsigned preflight, exact zero-length boundaries, memmove overlap, dropped reuse traps, and imported/public API behavior. The executor and API filters are green, and the combined Wasm checkpoint is 159/159 with zero skips/failures/leaks.

Sign in to comment on this issue.