mirror of
https://github.com/fluencelabs/wasm-bindgen
synced 2025-05-07 19:42:16 +00:00
... and add a parallel raytracing demo! This commit adds enough support to `wasm-bindgen` to produce a workable wasm binary *today* with the experimental WebAssembly threads support implemented in Firefox Nightly. I've tried to comment what's going on in the commits and such, but at a high level the changes made here are: * A new transformation, living in a new `wasm-bindgen-threads-xform` crate, prepares a wasm module for parallel execution. This performs a number of mundane tasks which I hope to detail in a blog post later on. * The `--no-modules` output is enhanced with more support for when shared memory is enabled, allowing passing in the module/memory to initialize the wasm instance on multiple threads (sharing both module and memory). * The `wasm-bindgen` crate now offers the ability, in `--no-modules` mode, to get a handle on the `WebAssembly.Module` instance. * The example itself requires Xargo to recompile the standard library with atomics and an experimental feature enabled. Afterwards it experimentally also enables threading support in wasm-bindgen. I've also added hopefully enough CI support to compile this example in a builder so we can upload it and poke around live online. I hope to detail more about the technical details here in a blog post soon as well!
22 lines
803 B
TOML
22 lines
803 B
TOML
[package]
|
|
name = "wasm-bindgen-cli-support"
|
|
version = "0.2.25"
|
|
authors = ["The wasm-bindgen Developers"]
|
|
license = "MIT/Apache-2.0"
|
|
repository = "https://github.com/rustwasm/wasm-bindgen/tree/master/crates/cli-support"
|
|
homepage = "https://rustwasm.github.io/wasm-bindgen/"
|
|
documentation = "https://docs.rs/wasm-bindgen-cli-support"
|
|
description = """
|
|
Shared support for the wasm-bindgen-cli package, an internal dependency
|
|
"""
|
|
|
|
[dependencies]
|
|
base64 = "0.9"
|
|
failure = "0.1.2"
|
|
parity-wasm = "0.35"
|
|
tempfile = "3.0"
|
|
wasm-bindgen-gc = { path = '../gc', version = '=0.2.25' }
|
|
wasm-bindgen-shared = { path = "../shared", version = '=0.2.25' }
|
|
wasm-bindgen-threads-xform = { path = '../threads-xform', version = '=0.2.25' }
|
|
wasm-bindgen-wasm-interpreter = { path = "../wasm-interpreter", version = '=0.2.25' }
|