Skip to content

Implement the module linking proposal in Wasmtime #2094

@alexcrichton

Description

@alexcrichton

I plan to use this as a tracking issue for the module linking proposal in Wasmtime. I'll be updating this description over time as I find time and as work is done:

Implementation Notes

Some miscenalleous notes on the implementation and how this is being implemented:

  • Per-module data structures are intended to continue to be per-module, only wasmtime::Module will internally have a list of modules to select from.
  • Aliases are expected to be implemented under the hood as imports.
    • It's expected that instantiation will pass in a Resolver for the actual imports, as well as the "surrounding environment" which is probably "the list of all other modules that came from the original wasm file".
    • JIT code will call an aliased function from an imported instance as if it were an imported function. (similar for tables/globals/etc)

Open questions:

  • What should wasm2obj do for multi-module wasm files?
  • What should the runtime representation in wasmtime-jit be for imported instances and imported modules?

Metadata

Metadata

Assignees

No one assigned

    Labels

    wasmtimeIssues about wasmtime that don't fall into another label

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions