* Enable jitdump profiling support by default This the result of some of the investigation I was doing for #1017. I've done a number of refactorings here which culminated in a number of changes that all amount to what I think should result in jitdump support being enabled by default: * Pass in a list of finished functions instead of just a range to ensure that we're emitting jit dump data for a specific module rather than a whole `CodeMemory` which may have other modules. * Define `ProfilingStrategy` in the `wasmtime` crate to have everything locally-defined * Add support to the C API to enable profiling * Documentation added for profiling with jitdump to the book * Split out supported/unsupported files in `jitdump.rs` to avoid having lots of `#[cfg]`. * Make dependencies optional that are only used for `jitdump`. * Move initialization up-front to `JitDumpAgent::new()` instead of deferring it to the first module. * Pass around `Arc<dyn ProfilingAgent>` instead of `Option<Arc<Mutex<Box<dyn ProfilingAgent>>>>` The `jitdump` Cargo feature is now enabled by default which means that our published binaries, C API artifacts, and crates will support profiling at runtime by default. The support I don't think is fully fleshed out and working but I think it's probably in a good enough spot we can get users playing around with it!
43 lines
1.6 KiB
Markdown
43 lines
1.6 KiB
Markdown
# Summary
|
|
|
|
- [Introduction](./introduction.md)
|
|
- [Tutorial](./tutorial.md)
|
|
- [Creating `hello-world.wasm`](./tutorial-create-hello-world.md)
|
|
- [Running `hello-world.wasm`](./tutorial-run-hello-world.md)
|
|
- [Examples](./examples.md)
|
|
- [Markdown parser](./examples-markdown.md)
|
|
- [Profiling WebAssembly](./examples-profiling.md)
|
|
- [Using WebAssembly from your lanugage](./lang.md)
|
|
- [Python](./lang-python.md)
|
|
- [.NET](./lang-dotnet.md)
|
|
- [Rust](./lang-rust.md)
|
|
- [Bash](./lang-bash.md)
|
|
- [Using the `wasmtime` CLI](./cli.md)
|
|
- [Installation](./cli-install.md)
|
|
- [CLI Options](./cli-options.md)
|
|
- [Cache Configuration](./cli-cache.md)
|
|
- [Writing WebAssembly](./wasm.md)
|
|
- [Rust](./wasm-rust.md)
|
|
- [C/C++](./wasm-c.md)
|
|
- [WebAssembly Text Format (`*.wat`)](./wasm-wat.md)
|
|
- [Example: Markdown Parser](./wasm-markdown.md)
|
|
- [Embedding Wasmtime](embed.md)
|
|
- [Rust API](./embed-rust.md)
|
|
- [C/C++ API](./embed-c.md)
|
|
- [Stability](stability.md)
|
|
- [Release Process](./stability-release.md)
|
|
- [Platform Support](./stability-platform-support.md)
|
|
- [Security](security.md)
|
|
- [Disclosure Policy](./security-disclosure.md)
|
|
- [Sandboxing](./security-sandboxing.md)
|
|
- [Contributing](contributing.md)
|
|
- [Building](./contributing-building.md)
|
|
- [Testing](./contributing-testing.md)
|
|
- [Fuzzing](./contributing-fuzzing.md)
|
|
- [CI](./contributing-ci.md)
|
|
- [Coding guidelines](./contributing-coding-guidelines.md)
|
|
- [Development process](./contributing-development-process.md)
|
|
- [Release Process](./contributing-release-process.md)
|
|
- [Governance](./contributing-governance.md)
|
|
- [Code of Conduct](./contributing-coc.md)
|