Skip to content

Add dynamic resident program lifecycle - #11

Merged
espmaniac merged 1 commit into
mainfrom
agent/dynamic-resident-programs
Aug 11, 2026
Merged

Add dynamic resident program lifecycle#11
espmaniac merged 1 commit into
mainfrom
agent/dynamic-resident-programs

Conversation

@espmaniac

Copy link
Copy Markdown
Member

Summary

  • add m3_DylinkAddProgram, m3_DylinkRemoveProgram, and m3_DylinkGetProgramCount
  • keep resident shared libraries alive while applications are added and removed independently
  • give each application stable context storage plus private linear-memory, stack, heap, and table ranges
  • recycle released linear-memory and table ranges without shrinking the shared runtime allocation
  • park an empty dynamic group so it can accept another application later
  • document the dynamic lifecycle API and its memory behavior

Validation

  • strict native compilation with dylink enabled and disabled
  • strict native compilation with M3C enabled
  • full native runner linked against all wasm3 sources
  • real dylink.0 lifecycle: add, run, remove, reopen, and preserve resident-library state
  • AddressSanitizer and UndefinedBehaviorSanitizer run (leak detection disabled because it is incompatible with the traced runner)

Integration coverage is added in the dependent wasm-rtos-tests PR.

@espmaniac
espmaniac marked this pull request as ready for review August 11, 2026 18:35
@espmaniac
espmaniac merged commit 8f332c8 into main Aug 11, 2026
69 of 100 checks passed
@espmaniac
espmaniac deleted the agent/dynamic-resident-programs branch August 11, 2026 18:36
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