Skip to content

Commit

Permalink
Merge pull request #2805 from cfallin/release-0.26.0
Browse files Browse the repository at this point in the history
Release 0.26.0.
  • Loading branch information
cfallin authored Apr 5, 2021
2 parents 8d78212 + 6bec13d commit 6b77786
Show file tree
Hide file tree
Showing 56 changed files with 349 additions and 273 deletions.
104 changes: 52 additions & 52 deletions Cargo.lock

Large diffs are not rendered by default.

22 changes: 11 additions & 11 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "wasmtime-cli"
version = "0.25.0"
version = "0.26.0"
authors = ["The Wasmtime Project Developers"]
description = "Command-line interface for Wasmtime"
license = "Apache-2.0 WITH LLVM-exception"
Expand All @@ -22,16 +22,16 @@ doc = false

[dependencies]
# Enable all supported architectures by default.
wasmtime = { path = "crates/wasmtime", version = "0.25.0", default-features = false, features = ['cache'] }
wasmtime-cache = { path = "crates/cache", version = "0.25.0" }
wasmtime-debug = { path = "crates/debug", version = "0.25.0" }
wasmtime-environ = { path = "crates/environ", version = "0.25.0" }
wasmtime-jit = { path = "crates/jit", version = "0.25.0" }
wasmtime-obj = { path = "crates/obj", version = "0.25.0" }
wasmtime-wast = { path = "crates/wast", version = "0.25.0" }
wasmtime-wasi = { path = "crates/wasi", version = "0.25.0" }
wasmtime-wasi-crypto = { path = "crates/wasi-crypto", version = "0.25.0", optional = true }
wasmtime-wasi-nn = { path = "crates/wasi-nn", version = "0.25.0", optional = true }
wasmtime = { path = "crates/wasmtime", version = "0.26.0", default-features = false, features = ['cache'] }
wasmtime-cache = { path = "crates/cache", version = "0.26.0" }
wasmtime-debug = { path = "crates/debug", version = "0.26.0" }
wasmtime-environ = { path = "crates/environ", version = "0.26.0" }
wasmtime-jit = { path = "crates/jit", version = "0.26.0" }
wasmtime-obj = { path = "crates/obj", version = "0.26.0" }
wasmtime-wast = { path = "crates/wast", version = "0.26.0" }
wasmtime-wasi = { path = "crates/wasi", version = "0.26.0" }
wasmtime-wasi-crypto = { path = "crates/wasi-crypto", version = "0.26.0", optional = true }
wasmtime-wasi-nn = { path = "crates/wasi-nn", version = "0.26.0", optional = true }
structopt = { version = "0.3.5", features = ["color", "suggestions"] }
object = { version = "0.23.0", default-features = false, features = ["write"] }
anyhow = "1.0.19"
Expand Down
107 changes: 92 additions & 15 deletions RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,58 @@

## Unreleased

## 0.26.0

Released 2021-04-05.

### Added

* Added the `wasmtime compile` command to support AOT compilation of Wasm modules.
* Added the `wasmtime compile` command to support AOT compilation of Wasm
modules. This adds the `Engine::precompile_module` method. Also added the
`Config::target` method to change the compilation target of the
configuration. This can be used in conjunction with
`Engine::precompile_module` to target a different host triple than the
current one.
[#2791](https://github.com/bytecodealliance/wasmtime/pull/2791)

* Added the `Engine::precompile_module` method to support AOT module compilation.
* Support for macOS on aarch64 (Apple M1 Silicon), including Apple-specific
calling convention details and unwinding/exception handling using Mach ports.
[#2742](https://github.com/bytecodealliance/wasmtime/pull/2742),
[#2723](https://github.com/bytecodealliance/wasmtime/pull/2723)

* Added the `Config::target` method to change the compilation target of the
configuration. This can be used in conjunction with `Engine::precompile_module`
to target a different host triple than the current one.
* A number of SIMD instruction implementations in the new x86-64 backend.
[#2771](https://github.com/bytecodealliance/wasmtime/pull/2771)

* Added the `Config::cranelift_flag_enable` method to enable setting Cranelift
boolean flags or presets in a config.

* Added CLI option `--cranelift-enable` to enable boolean settings and ISA presets.

* Deduplicate function signatures in Wasm modules.
[#2772](https://github.com/bytecodealliance/wasmtime/pull/2772)

* Optimize overheads of calling into Wasm functions.
[#2757](https://github.com/bytecodealliance/wasmtime/pull/2757),
[#2759](https://github.com/bytecodealliance/wasmtime/pull/2759)

* Improvements related to Module Linking: compile fewer trampolines;

[#2774](https://github.com/bytecodealliance/wasmtime/pull/2774)

* Re-export sibling crates from `wasmtime-wasi` to make embedding easier
without needing to match crate versions.
[#2776](https://github.com/bytecodealliance/wasmtime/pull/2776)

### Changed

* Wasmtime CLI options to enable WebAssembly features have been replaced with a
singular `--wasm-features` option. The previous options are still supported, but
are not displayed in help text.
* Switched the default compiler backend on x86-64 to Cranelift's new backend.
This should not have any user-visible effects other than possibly runtime
performance improvements. The old backend is still available with the
`old-x86-backend` feature flag to the `cranelift-codegen` or `wasmtime`
crates, or programmatically with `BackendVariant::Legacy`. We plan to
maintain the old backend for at least one more release and ensure it works on
CI.
[#2718](https://github.com/bytecodealliance/wasmtime/pull/2718)

* Breaking: `Module::deserialize` has been removed in favor of `Module::new`.

Expand All @@ -32,16 +64,61 @@

* Breaking: `Config::cranelift_other_flag` was renamed to `Config::cranelift_flag_set`.

* Breaking: the CLI option `--cranelift-flags` was changed to `--cranelift-set`.
* CLI changes:
* Wasmtime CLI options to enable WebAssembly features have been replaced with
a singular `--wasm-features` option. The previous options are still
supported, but are not displayed in help text.
* Breaking: the CLI option `--cranelift-flags` was changed to
`--cranelift-set`.
* Breaking: the CLI option `--enable-reference-types=false` has been changed
to `--wasm-features=-reference-types`.
* Breaking: the CLI option `--enable-multi-value=false` has been changed to
`--wasm-features=-multi-value`.
* Breaking: the CLI option `--enable-bulk-memory=false` has been changed to
`--wasm-features=-bulk-memory`.

* Improved error-reporting in wiggle.
[#2760](https://github.com/bytecodealliance/wasmtime/pull/2760)

* Make WASI sleeping fallible (some systems do not support sleep).
[#2756](https://github.com/bytecodealliance/wasmtime/pull/2756)

* WASI: Support `poll_oneoff` with a sleep.
[#2753](https://github.com/bytecodealliance/wasmtime/pull/2753)

* Allow a `StackMapSink` to be passed when defining functions with
`cranelift-module`.
[#2739](https://github.com/bytecodealliance/wasmtime/pull/2739)

* Some refactoring in new x86-64 backend to prepare for VEX/EVEX (e.g.,
AVX-512) instruction encodings to be supported.
[#2799](https://github.com/bytecodealliance/wasmtime/pull/2799)

### Fixed

* Fixed a corner case in `srem` (signed remainder) in the new x86-64 backend:
`INT_MIN % -1` should return `0`, rather than trapping. This only occurred
when `avoid_div_traps == false` was set by the embedding.
[#2763](https://github.com/bytecodealliance/wasmtime/pull/2763)

* Fixed a memory leak of the `Store` when an instance traps.
[#2803](https://github.com/bytecodealliance/wasmtime/pull/2803)

* Some fuzzing-related fixes.
[#2788](https://github.com/bytecodealliance/wasmtime/pull/2788),
[#2770](https://github.com/bytecodealliance/wasmtime/pull/2770)

* Breaking: the CLI option `--enable-reference-types=false` has been changed to
`--wasm-features=-reference-types`.
* Fixed memory-initialization bug in uffd allocator that could copy into the
wrong destination under certain conditions. Does not affect the default
wasmtime instance allocator.
[#2801](https://github.com/bytecodealliance/wasmtime/pull/2801)

* Breaking: the CLI option `--enable-multi-value=false` has been changed to
`--wasm-features=-multi-value`.
* Fix printing of float values from the Wasmtime CLI.
[#2797](https://github.com/bytecodealliance/wasmtime/pull/2797)

* Breaking: the CLI option `--enable-bulk-memory=false` has been changed to
`--wasm-features=-bulk-memory`.
* Remove the ability for the `Linker` to instantiate modules with duplicate
import strings of different types.
[#2789](https://github.com/bytecodealliance/wasmtime/pull/2789)

## 0.25.0

Expand Down
32 changes: 16 additions & 16 deletions cranelift/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "cranelift-tools"
authors = ["The Cranelift Project Developers"]
version = "0.66.0"
version = "0.73.0"
description = "Binaries for testing the Cranelift libraries"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://github.com/bytecodealliance/wasmtime/blob/main/cranelift/docs/index.md"
Expand All @@ -15,27 +15,27 @@ path = "src/clif-util.rs"

[dependencies]
cfg-if = "1.0"
cranelift-codegen = { path = "codegen", version = "0.72.0" }
cranelift-entity = { path = "entity", version = "0.72.0" }
cranelift-interpreter = { path = "interpreter", version = "0.72.0" }
cranelift-reader = { path = "reader", version = "0.72.0" }
cranelift-frontend = { path = "frontend", version = "0.72.0" }
cranelift-serde = { path = "serde", version = "0.72.0", optional = true }
cranelift-wasm = { path = "wasm", version = "0.72.0", optional = true }
cranelift-native = { path = "native", version = "0.72.0" }
cranelift-filetests = { path = "filetests", version = "0.66.0" }
cranelift-module = { path = "module", version = "0.72.0" }
cranelift-object = { path = "object", version = "0.72.0" }
cranelift-jit = { path = "jit", version = "0.72.0" }
cranelift-preopt = { path = "preopt", version = "0.72.0" }
cranelift = { path = "umbrella", version = "0.72.0" }
cranelift-codegen = { path = "codegen", version = "0.73.0" }
cranelift-entity = { path = "entity", version = "0.73.0" }
cranelift-interpreter = { path = "interpreter", version = "0.73.0" }
cranelift-reader = { path = "reader", version = "0.73.0" }
cranelift-frontend = { path = "frontend", version = "0.73.0" }
cranelift-serde = { path = "serde", version = "0.73.0", optional = true }
cranelift-wasm = { path = "wasm", version = "0.73.0", optional = true }
cranelift-native = { path = "native", version = "0.73.0" }
cranelift-filetests = { path = "filetests", version = "0.73.0" }
cranelift-module = { path = "module", version = "0.73.0" }
cranelift-object = { path = "object", version = "0.73.0" }
cranelift-jit = { path = "jit", version = "0.73.0" }
cranelift-preopt = { path = "preopt", version = "0.73.0" }
cranelift = { path = "umbrella", version = "0.73.0" }
filecheck = "0.5.0"
log = "0.4.8"
termcolor = "1.1.2"
capstone = { version = "0.7.0", optional = true }
wat = { version = "1.0.36", optional = true }
target-lexicon = { version = "0.12", features = ["std"] }
peepmatic-souper = { path = "./peepmatic/crates/souper", version = "0.72.0", optional = true }
peepmatic-souper = { path = "./peepmatic/crates/souper", version = "0.73.0", optional = true }
pretty_env_logger = "0.4.0"
rayon = { version = "1", optional = true }
file-per-thread-logger = "0.1.2"
Expand Down
4 changes: 2 additions & 2 deletions cranelift/bforest/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-bforest"
version = "0.72.0"
version = "0.73.0"
description = "A forest of B+-trees"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-bforest"
Expand All @@ -12,7 +12,7 @@ keywords = ["btree", "forest", "set", "map"]
edition = "2018"

[dependencies]
cranelift-entity = { path = "../entity", version = "0.72.0", default-features = false }
cranelift-entity = { path = "../entity", version = "0.73.0", default-features = false }

[badges]
maintenance = { status = "experimental" }
16 changes: 8 additions & 8 deletions cranelift/codegen/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-codegen"
version = "0.72.0"
version = "0.73.0"
description = "Low-level code generator library"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-codegen"
Expand All @@ -13,9 +13,9 @@ build = "build.rs"
edition = "2018"

[dependencies]
cranelift-codegen-shared = { path = "./shared", version = "0.72.0" }
cranelift-entity = { path = "../entity", version = "0.72.0" }
cranelift-bforest = { path = "../bforest", version = "0.72.0" }
cranelift-codegen-shared = { path = "./shared", version = "0.73.0" }
cranelift-entity = { path = "../entity", version = "0.73.0" }
cranelift-bforest = { path = "../bforest", version = "0.73.0" }
hashbrown = { version = "0.9.1", optional = true }
target-lexicon = "0.12"
log = { version = "0.4.6", default-features = false }
Expand All @@ -25,9 +25,9 @@ gimli = { version = "0.23.0", default-features = false, features = ["write"], op
smallvec = { version = "1.6.1" }
thiserror = "1.0.4"
byteorder = { version = "1.3.2", default-features = false }
peepmatic = { path = "../peepmatic", optional = true, version = "0.72.0" }
peepmatic-traits = { path = "../peepmatic/crates/traits", optional = true, version = "0.72.0" }
peepmatic-runtime = { path = "../peepmatic/crates/runtime", optional = true, version = "0.72.0" }
peepmatic = { path = "../peepmatic", optional = true, version = "0.73.0" }
peepmatic-traits = { path = "../peepmatic/crates/traits", optional = true, version = "0.73.0" }
peepmatic-runtime = { path = "../peepmatic/crates/runtime", optional = true, version = "0.73.0" }
regalloc = { version = "0.0.31" }
souper-ir = { version = "2.1.0", optional = true }
wast = { version = "35.0.0", optional = true }
Expand All @@ -37,7 +37,7 @@ wast = { version = "35.0.0", optional = true }
# accomodated in `tests`.

[build-dependencies]
cranelift-codegen-meta = { path = "meta", version = "0.72.0" }
cranelift-codegen-meta = { path = "meta", version = "0.73.0" }

[features]
default = ["std", "unwind"]
Expand Down
6 changes: 3 additions & 3 deletions cranelift/codegen/meta/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "cranelift-codegen-meta"
authors = ["The Cranelift Project Developers"]
version = "0.72.0"
version = "0.73.0"
description = "Metaprogram for cranelift-codegen code generator library"
license = "Apache-2.0 WITH LLVM-exception"
repository = "https://github.com/bytecodealliance/wasmtime"
Expand All @@ -13,8 +13,8 @@ edition = "2018"
# rustdoc-args = [ "--document-private-items" ]

[dependencies]
cranelift-codegen-shared = { path = "../shared", version = "0.72.0" }
cranelift-entity = { path = "../../entity", version = "0.72.0" }
cranelift-codegen-shared = { path = "../shared", version = "0.73.0" }
cranelift-entity = { path = "../../entity", version = "0.73.0" }

[badges]
maintenance = { status = "experimental" }
2 changes: 1 addition & 1 deletion cranelift/codegen/shared/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-codegen-shared"
version = "0.72.0"
version = "0.73.0"
description = "For code shared between cranelift-codegen-meta and cranelift-codegen"
license = "Apache-2.0 WITH LLVM-exception"
repository = "https://github.com/bytecodealliance/wasmtime"
Expand Down
2 changes: 1 addition & 1 deletion cranelift/entity/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-entity"
version = "0.72.0"
version = "0.73.0"
description = "Data structures using entity references as mapping keys"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-entity"
Expand Down
14 changes: 7 additions & 7 deletions cranelift/filetests/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
name = "cranelift-filetests"
authors = ["The Cranelift Project Developers"]
version = "0.66.0"
version = "0.73.0"
description = "Test driver and implementations of the filetest commands"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-filetests"
Expand All @@ -10,12 +10,12 @@ publish = false
edition = "2018"

[dependencies]
cranelift-codegen = { path = "../codegen", version = "0.72.0", features = ["testing_hooks"] }
cranelift-frontend = { path = "../frontend", version = "0.72.0" }
cranelift-interpreter = { path = "../interpreter", version = "0.72.0" }
cranelift-native = { path = "../native", version = "0.72.0" }
cranelift-reader = { path = "../reader", version = "0.72.0" }
cranelift-preopt = { path = "../preopt", version = "0.72.0" }
cranelift-codegen = { path = "../codegen", version = "0.73.0", features = ["testing_hooks"] }
cranelift-frontend = { path = "../frontend", version = "0.73.0" }
cranelift-interpreter = { path = "../interpreter", version = "0.73.0" }
cranelift-native = { path = "../native", version = "0.73.0" }
cranelift-reader = { path = "../reader", version = "0.73.0" }
cranelift-preopt = { path = "../preopt", version = "0.73.0" }
byteorder = { version = "1.3.2", default-features = false }
file-per-thread-logger = "0.1.2"
filecheck = "0.5.0"
Expand Down
4 changes: 2 additions & 2 deletions cranelift/frontend/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-frontend"
version = "0.72.0"
version = "0.73.0"
description = "Cranelift IR builder helper"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-frontend"
Expand All @@ -11,7 +11,7 @@ readme = "README.md"
edition = "2018"

[dependencies]
cranelift-codegen = { path = "../codegen", version = "0.72.0", default-features = false }
cranelift-codegen = { path = "../codegen", version = "0.73.0", default-features = false }
target-lexicon = "0.12"
log = { version = "0.4.6", default-features = false }
hashbrown = { version = "0.9.1", optional = true }
Expand Down
10 changes: 5 additions & 5 deletions cranelift/interpreter/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "cranelift-interpreter"
version = "0.72.0"
version = "0.73.0"
authors = ["The Cranelift Project Developers"]
description = "Interpret Cranelift IR"
repository = "https://github.com/bytecodealliance/wasmtime"
Expand All @@ -11,15 +11,15 @@ readme = "README.md"
edition = "2018"

[dependencies]
cranelift-codegen = { path = "../codegen", version = "0.72.0", features = ["all-arch"] }
cranelift-entity = { path = "../entity", version = "0.72.0" }
cranelift-reader = { path = "../reader", version = "0.72.0" }
cranelift-codegen = { path = "../codegen", version = "0.73.0", features = ["all-arch"] }
cranelift-entity = { path = "../entity", version = "0.73.0" }
cranelift-reader = { path = "../reader", version = "0.73.0" }
log = { version = "0.4.8", default-features = false }
smallvec = "1.6.1"
thiserror = "1.0.15"

[dev-dependencies]
cranelift-frontend = { path = "../frontend", version = "0.72.0" }
cranelift-frontend = { path = "../frontend", version = "0.73.0" }

[badges]
maintenance = { status = "experimental" }
Loading

0 comments on commit 6b77786

Please sign in to comment.