From 475249297488c1f748cde809f07f5d588b6bf33a Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Tue, 9 Jul 2019 17:43:04 -0700 Subject: [PATCH 1/7] update version numbers to 0.5.5 --- CHANGELOG.md | 2 + Cargo.lock | 120 +++++++++++++-------------- Cargo.toml | 2 +- lib/clif-backend/Cargo.toml | 6 +- lib/dev-utils/Cargo.toml | 2 +- lib/emscripten-tests/Cargo.toml | 16 ++-- lib/emscripten/Cargo.toml | 6 +- lib/llvm-backend/Cargo.toml | 4 +- lib/middleware-common/Cargo.toml | 8 +- lib/runtime-abi/Cargo.toml | 2 +- lib/runtime-c-api/Cargo.toml | 6 +- lib/runtime-core/Cargo.toml | 2 +- lib/runtime/Cargo.toml | 8 +- lib/singlepass-backend/Cargo.toml | 4 +- lib/spectests/Cargo.toml | 10 +-- lib/wasi-tests/Cargo.toml | 14 ++-- lib/wasi/Cargo.toml | 6 +- lib/win-exception-handler/Cargo.toml | 4 +- update_version_numbers.sh | 4 +- 19 files changed, 114 insertions(+), 112 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a2add63b..774a3ef4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ All PRs to the Wasmer repository must add to this file. Blocks of changes will separated by version increments. ## **[Unreleased]** + +## 0.5.5 - [#541](https://github.com/wasmerio/wasmer/pull/541) Fix dependency graph by making separate test crates; ABI implementations should not depend on compilers. Add Cranelift fork as git submodule of clif-backend - [#537](https://github.com/wasmerio/wasmer/pull/537) Add hidden flag (`--cache-key`) to use prehashed key into the compiled wasm cache and change compiler backend-specific caching to use directories - [#536](https://github.com/wasmerio/wasmer/pull/536) ~Update cache to use compiler backend name in cache key~ diff --git a/Cargo.lock b/Cargo.lock index 4f702993b..138404bf7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1421,7 +1421,7 @@ dependencies = [ [[package]] name = "wasmer" -version = "0.5.4" +version = "0.5.5" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "errno 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1430,23 +1430,23 @@ dependencies = [ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "structopt 0.2.17 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-dev-utils 0.5.4", - "wasmer-emscripten 0.5.4", - "wasmer-emscripten-tests 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-dev-utils 0.5.5", + "wasmer-emscripten 0.5.5", + "wasmer-emscripten-tests 0.5.5", "wasmer-kernel-loader 0.1.0", - "wasmer-llvm-backend 0.5.4", - "wasmer-middleware-common 0.5.4", - "wasmer-runtime 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", - "wasmer-wasi 0.5.4", - "wasmer-wasi-tests 0.5.4", + "wasmer-llvm-backend 0.5.5", + "wasmer-middleware-common 0.5.5", + "wasmer-runtime 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", + "wasmer-wasi 0.5.5", + "wasmer-wasi-tests 0.5.5", ] [[package]] name = "wasmer-clif-backend" -version = "0.5.4" +version = "0.5.5" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "cranelift-codegen 0.31.0", @@ -1463,22 +1463,22 @@ dependencies = [ "serde_bytes 0.10.5 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.92 (registry+https://github.com/rust-lang/crates.io-index)", "target-lexicon 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", - "wasmer-win-exception-handler 0.5.4", + "wasmer-runtime-core 0.5.5", + "wasmer-win-exception-handler 0.5.5", "wasmparser 0.32.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasmer-dev-utils" -version = "0.5.4" +version = "0.5.5" dependencies = [ "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasmer-emscripten" -version = "0.5.4" +version = "0.5.5" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1486,21 +1486,21 @@ dependencies = [ "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", ] [[package]] name = "wasmer-emscripten-tests" -version = "0.5.4" +version = "0.5.5" dependencies = [ "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-dev-utils 0.5.4", - "wasmer-emscripten 0.5.4", - "wasmer-llvm-backend 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-dev-utils 0.5.5", + "wasmer-emscripten 0.5.5", + "wasmer-llvm-backend 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", ] [[package]] @@ -1508,12 +1508,12 @@ name = "wasmer-kernel-loader" version = "0.1.0" dependencies = [ "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", ] [[package]] name = "wasmer-llvm-backend" -version = "0.5.4" +version = "0.5.5" dependencies = [ "capstone 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1528,50 +1528,50 @@ dependencies = [ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", "wasmparser 0.32.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasmer-middleware-common" -version = "0.5.4" +version = "0.5.5" dependencies = [ "criterion 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-llvm-backend 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-llvm-backend 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", ] [[package]] name = "wasmer-runtime" -version = "0.5.4" +version = "0.5.5" dependencies = [ "criterion 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memmap 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "tempfile 3.0.8 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-llvm-backend 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-llvm-backend 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", ] [[package]] name = "wasmer-runtime-c-api" -version = "0.5.4" +version = "0.5.5" dependencies = [ "cbindgen 0.8.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime 0.5.4", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime 0.5.5", + "wasmer-runtime-core 0.5.5", ] [[package]] name = "wasmer-runtime-core" -version = "0.5.4" +version = "0.5.5" dependencies = [ "bincode 1.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "blake2b_simd 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1600,7 +1600,7 @@ dependencies = [ [[package]] name = "wasmer-singlepass-backend" -version = "0.5.4" +version = "0.5.5" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "colored 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1611,24 +1611,24 @@ dependencies = [ "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", "nix 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", "wasmparser 0.32.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasmer-spectests" -version = "0.5.4" +version = "0.5.5" dependencies = [ "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-llvm-backend 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-llvm-backend 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", ] [[package]] name = "wasmer-wasi" -version = "0.5.4" +version = "0.5.5" dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "generational-arena 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1636,32 +1636,32 @@ dependencies = [ "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasmer-wasi-tests" -version = "0.5.4" +version = "0.5.5" dependencies = [ "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-clif-backend 0.5.4", - "wasmer-dev-utils 0.5.4", - "wasmer-llvm-backend 0.5.4", - "wasmer-runtime-core 0.5.4", - "wasmer-singlepass-backend 0.5.4", - "wasmer-wasi 0.5.4", + "wasmer-clif-backend 0.5.5", + "wasmer-dev-utils 0.5.5", + "wasmer-llvm-backend 0.5.5", + "wasmer-runtime-core 0.5.5", + "wasmer-singlepass-backend 0.5.5", + "wasmer-wasi 0.5.5", ] [[package]] name = "wasmer-win-exception-handler" -version = "0.5.4" +version = "0.5.5" dependencies = [ "bindgen 0.46.0 (registry+https://github.com/rust-lang/crates.io-index)", "cmake 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.57 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmer-runtime-core 0.5.4", + "wasmer-runtime-core 0.5.5", "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/Cargo.toml b/Cargo.toml index 921a3c456..b30b0b334 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer" -version = "0.5.4" +version = "0.5.5" authors = ["The Wasmer Engineering Team "] edition = "2018" repository = "https://github.com/wasmerio/wasmer" diff --git a/lib/clif-backend/Cargo.toml b/lib/clif-backend/Cargo.toml index b208933c6..f4d9ea720 100644 --- a/lib/clif-backend/Cargo.toml +++ b/lib/clif-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-clif-backend" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime Cranelift compiler backend" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -8,7 +8,7 @@ repository = "https://github.com/wasmerio/wasmer" edition = "2018" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } cranelift-native = { path = "cranelift/cranelift-native", version = "0.31" } cranelift-codegen = { path = "cranelift/cranelift-codegen", version = "0.31" } cranelift-entity = { path = "cranelift/cranelift-entity", version = "0.31" } @@ -34,7 +34,7 @@ version = "0.0.7" [target.'cfg(windows)'.dependencies] winapi = { version = "0.3", features = ["errhandlingapi", "minwindef", "minwinbase", "winnt"] } -wasmer-win-exception-handler = { path = "../win-exception-handler", version = "0.5.4" } +wasmer-win-exception-handler = { path = "../win-exception-handler", version = "0.5.5" } [features] debug = ["wasmer-runtime-core/debug"] diff --git a/lib/dev-utils/Cargo.toml b/lib/dev-utils/Cargo.toml index 4d2e2b9bb..3ce2fef48 100644 --- a/lib/dev-utils/Cargo.toml +++ b/lib/dev-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-dev-utils" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/emscripten-tests/Cargo.toml b/lib/emscripten-tests/Cargo.toml index fc8510b56..f6da02b99 100644 --- a/lib/emscripten-tests/Cargo.toml +++ b/lib/emscripten-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten-tests" -version = "0.5.4" +version = "0.5.5" description = "Tests for our Emscripten implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,15 +9,15 @@ publish = false build = "build/mod.rs" [dependencies] -wasmer-emscripten = { path = "../emscripten", version = "0.5.4" } -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } -wasmer-clif-backend = { path = "../clif-backend", version = "0.5.4" } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.4", optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.4", optional = true } +wasmer-emscripten = { path = "../emscripten", version = "0.5.5" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } +wasmer-clif-backend = { path = "../clif-backend", version = "0.5.5" } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.5", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.5", optional = true } [dev-dependencies] wabt = "0.7.2" -wasmer-dev-utils = { path = "../dev-utils", version = "0.5.4"} +wasmer-dev-utils = { path = "../dev-utils", version = "0.5.5"} [build-dependencies] glob = "0.2.11" @@ -25,4 +25,4 @@ glob = "0.2.11" [features] clif = [] llvm = ["wasmer-llvm-backend"] -singlepass = ["wasmer-singlepass-backend"] \ No newline at end of file +singlepass = ["wasmer-singlepass-backend"] diff --git a/lib/emscripten/Cargo.toml b/lib/emscripten/Cargo.toml index 995325595..f8b641cab 100644 --- a/lib/emscripten/Cargo.toml +++ b/lib/emscripten/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-emscripten" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime emscripten implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -13,10 +13,10 @@ hashbrown = "0.1" lazy_static = "1.2.0" libc = "0.2.49" time = "0.1.41" -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } [target.'cfg(windows)'.dependencies] rand = "0.6" [features] -debug = ["wasmer-runtime-core/debug"] \ No newline at end of file +debug = ["wasmer-runtime-core/debug"] diff --git a/lib/llvm-backend/Cargo.toml b/lib/llvm-backend/Cargo.toml index 3456daeb8..beb921dfa 100644 --- a/lib/llvm-backend/Cargo.toml +++ b/lib/llvm-backend/Cargo.toml @@ -1,11 +1,11 @@ [package] name = "wasmer-llvm-backend" -version = "0.5.4" +version = "0.5.5" authors = ["Lachlan Sneff "] edition = "2018" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } inkwell = { git = "https://github.com/wasmerio/inkwell", branch = "llvm7-0" } wasmparser = "0.32.1" hashbrown = "0.1.8" diff --git a/lib/middleware-common/Cargo.toml b/lib/middleware-common/Cargo.toml index b365e023b..09d1593d3 100644 --- a/lib/middleware-common/Cargo.toml +++ b/lib/middleware-common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-middleware-common" -version = "0.5.4" +version = "0.5.5" repository = "https://github.com/wasmerio/wasmer" description = "Wasmer runtime common middlewares" license = "MIT" @@ -9,9 +9,9 @@ edition = "2018" [dependencies] wasmer-runtime-core = { path = "../runtime-core" } -wasmer-clif-backend = { path = "../clif-backend", version = "0.5.4" } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.4", optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.4", optional = true } +wasmer-clif-backend = { path = "../clif-backend", version = "0.5.5" } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.5", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.5", optional = true } [dev-dependencies] wabt = "0.7.4" diff --git a/lib/runtime-abi/Cargo.toml b/lib/runtime-abi/Cargo.toml index ea1167621..d9e8073f9 100644 --- a/lib/runtime-abi/Cargo.toml +++ b/lib/runtime-abi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-abi" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/runtime-c-api/Cargo.toml b/lib/runtime-c-api/Cargo.toml index 335958504..fe41899fd 100644 --- a/lib/runtime-c-api/Cargo.toml +++ b/lib/runtime-c-api/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-c-api" -version = "0.5.4" +version = "0.5.5" description = "Wasmer C API library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -16,11 +16,11 @@ libc = "0.2" [dependencies.wasmer-runtime] path = "../runtime" -version = "0.5.4" +version = "0.5.5" [dependencies.wasmer-runtime-core] path = "../runtime-core" -version = "0.5.4" +version = "0.5.5" [features] debug = ["wasmer-runtime/debug"] diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index 936b66e16..b35acaa45 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime-core" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime core library" license = "MIT" authors = ["The Wasmer Engineering Team "] diff --git a/lib/runtime/Cargo.toml b/lib/runtime/Cargo.toml index 52951437e..596b6a16f 100644 --- a/lib/runtime/Cargo.toml +++ b/lib/runtime/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-runtime" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,17 +9,17 @@ edition = "2018" readme = "README.md" [dependencies] -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.4", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.5", optional = true } lazy_static = "1.2.0" memmap = "0.7.0" [dependencies.wasmer-runtime-core] path = "../runtime-core" -version = "0.5.4" +version = "0.5.5" [dependencies.wasmer-clif-backend] path = "../clif-backend" -version = "0.5.4" +version = "0.5.5" optional = true [dev-dependencies] diff --git a/lib/singlepass-backend/Cargo.toml b/lib/singlepass-backend/Cargo.toml index 509b423b5..d7aa84bf7 100644 --- a/lib/singlepass-backend/Cargo.toml +++ b/lib/singlepass-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-singlepass-backend" -version = "0.5.4" +version = "0.5.5" repository = "https://github.com/wasmerio/wasmer" description = "Wasmer runtime single pass compiler backend" license = "MIT" @@ -8,7 +8,7 @@ authors = ["The Wasmer Engineering Team "] edition = "2018" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } wasmparser = "0.32.1" dynasm = "0.3.2" dynasmrt = "0.3.1" diff --git a/lib/spectests/Cargo.toml b/lib/spectests/Cargo.toml index ea17aa8a9..b40e17a2c 100644 --- a/lib/spectests/Cargo.toml +++ b/lib/spectests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-spectests" -version = "0.5.4" +version = "0.5.5" description = "Wasmer spectests library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,10 +9,10 @@ edition = "2018" build = "build/mod.rs" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } -wasmer-clif-backend = { path = "../clif-backend", version = "0.5.4" } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.4", optional = true } -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.4", optional = true } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } +wasmer-clif-backend = { path = "../clif-backend", version = "0.5.5" } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.5", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.5", optional = true } [build-dependencies] wabt = "0.7.2" diff --git a/lib/wasi-tests/Cargo.toml b/lib/wasi-tests/Cargo.toml index 45cd69dfd..0b86212d6 100644 --- a/lib/wasi-tests/Cargo.toml +++ b/lib/wasi-tests/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi-tests" -version = "0.5.4" +version = "0.5.5" description = "Tests for our WASI implementation" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -9,19 +9,19 @@ publish = false build = "build/mod.rs" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } -wasmer-wasi = { path = "../wasi", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } +wasmer-wasi = { path = "../wasi", version = "0.5.5" } # hack to get tests to work -wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.4", optional = true } -wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.4", optional = true } +wasmer-singlepass-backend = { path = "../singlepass-backend", version = "0.5.5", optional = true } +wasmer-llvm-backend = { path = "../llvm-backend", version = "0.5.5", optional = true } [build-dependencies] glob = "0.2.11" [dev-dependencies] -wasmer-clif-backend = { path = "../clif-backend", version = "0.5.4" } -wasmer-dev-utils = { path = "../dev-utils", version = "0.5.4"} +wasmer-clif-backend = { path = "../clif-backend", version = "0.5.5" } +wasmer-dev-utils = { path = "../dev-utils", version = "0.5.5"} [features] clif = [] diff --git a/lib/wasi/Cargo.toml b/lib/wasi/Cargo.toml index 28426be0d..d4fe8023a 100644 --- a/lib/wasi/Cargo.toml +++ b/lib/wasi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-wasi" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime WASI implementation library" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -8,7 +8,7 @@ repository = "https://github.com/wasmerio/wasmer" edition = "2018" [dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } libc = "0.2.50" rand = "0.6.5" # wasmer-runtime-abi = { path = "../runtime-abi" } @@ -18,4 +18,4 @@ log = "0.4.6" byteorder = "1.3.1" [target.'cfg(windows)'.dependencies] -winapi = "0.3" \ No newline at end of file +winapi = "0.3" diff --git a/lib/win-exception-handler/Cargo.toml b/lib/win-exception-handler/Cargo.toml index 20c175198..1a98fba2f 100644 --- a/lib/win-exception-handler/Cargo.toml +++ b/lib/win-exception-handler/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wasmer-win-exception-handler" -version = "0.5.4" +version = "0.5.5" description = "Wasmer runtime exception handling for Windows" license = "MIT" authors = ["The Wasmer Engineering Team "] @@ -8,7 +8,7 @@ repository = "https://github.com/wasmerio/wasmer" edition = "2018" [target.'cfg(windows)'.dependencies] -wasmer-runtime-core = { path = "../runtime-core", version = "0.5.4" } +wasmer-runtime-core = { path = "../runtime-core", version = "0.5.5" } winapi = { version = "0.3", features = ["winbase", "errhandlingapi", "minwindef", "minwinbase", "winnt"] } libc = "0.2.49" diff --git a/update_version_numbers.sh b/update_version_numbers.sh index b9cf47dc8..7196d7ef1 100755 --- a/update_version_numbers.sh +++ b/update_version_numbers.sh @@ -1,5 +1,5 @@ -PREVIOUS_VERSION='0.5.3' -NEXT_VERSION='0.5.4' +PREVIOUS_VERSION='0.5.4' +NEXT_VERSION='0.5.5' # quick hack fd Cargo.toml --exec sed -i '' "s/version = \"$PREVIOUS_VERSION\"/version = \"$NEXT_VERSION\"/" From 2ef7448e62c6a9990ba9d23e68f8460dab286820 Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Tue, 9 Jul 2019 17:57:31 -0700 Subject: [PATCH 2/7] remove colons from feature names --- Cargo.toml | 4 ++-- Makefile | 8 ++++---- lib/runtime-core/Cargo.toml | 4 ++-- lib/runtime-core/src/backend.rs | 4 ++-- src/bin/wasmer.rs | 22 +++++++++++----------- 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b30b0b334..017d18e15 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -73,8 +73,8 @@ trace = ["wasmer-runtime-core/trace"] extra-debug = ["wasmer-clif-backend/debug", "wasmer-runtime-core/debug"] # This feature will allow cargo test to run much faster fast-tests = [] -"backend:llvm" = ["wasmer-llvm-backend", "wasmer-runtime-core/backend:llvm"] -"backend:singlepass" = ["wasmer-singlepass-backend", "wasmer-runtime-core/backend:singlepass"] +"backend-llvm" = ["wasmer-llvm-backend", "wasmer-runtime-core/backend-llvm"] +"backend-singlepass" = ["wasmer-singlepass-backend", "wasmer-runtime-core/backend-singlepass"] wasi = ["wasmer-wasi"] # vfs = ["wasmer-runtime-abi"] diff --git a/Makefile b/Makefile index a8a56ef40..38fbb8dc4 100644 --- a/Makefile +++ b/Makefile @@ -112,13 +112,13 @@ lint: precommit: lint test debug: - cargo build --release --features backend:singlepass,debug,trace + cargo build --release --features backend-singlepass,debug,trace install: cargo install --path . release: - cargo build --release --features backend:singlepass,backend:llvm,loader:kernel + cargo build --release --features backend-singlepass,backend-llvm,loader:kernel # Only one backend (cranelift) release-fast: @@ -127,10 +127,10 @@ release-fast: cargo build --release release-singlepass: - cargo build --release --features backend:singlepass + cargo build --release --features backend-singlepass release-llvm: - cargo build --release --features backend:llvm + cargo build --release --features backend-llvm bench: cargo bench --all diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index b35acaa45..efded2fb3 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -55,5 +55,5 @@ cc = "1.0" debug = [] trace = ["debug"] # backend flags used in conditional compilation of Backend::variants -"backend:singlepass" = [] -"backend:llvm" = [] +"backend-singlepass" = [] +"backend-llvm" = [] diff --git a/lib/runtime-core/src/backend.rs b/lib/runtime-core/src/backend.rs index 2c51cb576..aa1f6c730 100644 --- a/lib/runtime-core/src/backend.rs +++ b/lib/runtime-core/src/backend.rs @@ -33,9 +33,9 @@ impl Backend { pub fn variants() -> &'static [&'static str] { &[ "cranelift", - #[cfg(feature = "backend:singlepass")] + #[cfg(feature = "backend-singlepass")] "singlepass", - #[cfg(feature = "backend:llvm")] + #[cfg(feature = "backend-llvm")] "llvm", ] } diff --git a/src/bin/wasmer.rs b/src/bin/wasmer.rs index d1e46fbd6..7542e3289 100644 --- a/src/bin/wasmer.rs +++ b/src/bin/wasmer.rs @@ -15,7 +15,7 @@ use structopt::StructOpt; use wasmer::*; use wasmer_clif_backend::CraneliftCompiler; -#[cfg(feature = "backend:llvm")] +#[cfg(feature = "backend-llvm")] use wasmer_llvm_backend::LLVMCompiler; use wasmer_runtime::{ cache::{Cache as BaseCache, FileSystemCache, WasmHash, WASMER_VERSION_HASH}, @@ -27,7 +27,7 @@ use wasmer_runtime_core::{ debug, loader::{Instance as LoadedInstance, LocalLoader}, }; -#[cfg(feature = "backend:singlepass")] +#[cfg(feature = "backend-singlepass")] use wasmer_singlepass_backend::SinglePassCompiler; #[cfg(feature = "wasi")] use wasmer_wasi; @@ -112,7 +112,7 @@ struct Run { )] loader: Option, - #[cfg(feature = "backend:singlepass")] + #[cfg(feature = "backend-singlepass")] #[structopt(long = "resume")] resume: Option, @@ -315,14 +315,14 @@ fn execute_wasm(options: &Run) -> Result<(), String> { } let compiler: Box = match options.backend { - #[cfg(feature = "backend:singlepass")] + #[cfg(feature = "backend-singlepass")] Backend::Singlepass => Box::new(SinglePassCompiler::new()), - #[cfg(not(feature = "backend:singlepass"))] + #[cfg(not(feature = "backend-singlepass"))] Backend::Singlepass => return Err("The singlepass backend is not enabled".to_string()), Backend::Cranelift => Box::new(CraneliftCompiler::new()), - #[cfg(feature = "backend:llvm")] + #[cfg(feature = "backend-llvm")] Backend::LLVM => Box::new(LLVMCompiler::new()), - #[cfg(not(feature = "backend:llvm"))] + #[cfg(not(feature = "backend-llvm"))] Backend::LLVM => return Err("the llvm backend is not enabled".to_string()), }; @@ -501,7 +501,7 @@ fn execute_wasm(options: &Run) -> Result<(), String> { let start: Func<(), ()> = instance.func("_start").map_err(|e| format!("{:?}", e))?; - #[cfg(feature = "backend:singlepass")] + #[cfg(feature = "backend-singlepass")] unsafe { if options.backend == Backend::Singlepass { use wasmer_runtime_core::fault::{catch_unsafe_unwind, ensure_sighandler}; @@ -608,18 +608,18 @@ fn execute_wasm(options: &Run) -> Result<(), String> { Ok(()) } -#[cfg(feature = "backend:singlepass")] +#[cfg(feature = "backend-singlepass")] struct InteractiveShellContext { image: Option, } -#[cfg(feature = "backend:singlepass")] +#[cfg(feature = "backend-singlepass")] #[derive(Debug)] enum ShellExitOperation { ContinueWith(wasmer_runtime_core::state::InstanceImage), } -#[cfg(feature = "backend:singlepass")] +#[cfg(feature = "backend-singlepass")] fn interactive_shell(mut ctx: InteractiveShellContext) -> ShellExitOperation { use std::io::Write; From 1e86e32d402f5c788fe8ca93c8e8d8fc21feaade Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Wed, 10 Jul 2019 10:24:14 -0700 Subject: [PATCH 3/7] Use bitcast instead of alloca+load+ptrcast+store sequence. --- lib/llvm-backend/src/code.rs | 50 +++++++++--------------------------- 1 file changed, 12 insertions(+), 38 deletions(-) diff --git a/lib/llvm-backend/src/code.rs b/lib/llvm-backend/src/code.rs index 0359b3dd8..0dc31cf62 100644 --- a/lib/llvm-backend/src/code.rs +++ b/lib/llvm-backend/src/code.rs @@ -78,22 +78,16 @@ fn trap_if_not_representatable_as_int( let continue_block = context.append_basic_block(function, "conversion_success_block"); let float_ty = value.get_type(); - let (int_ty, float_ptr_ty, float_size) = if float_ty == intrinsics.f32_ty { - (intrinsics.i32_ty, intrinsics.f32_ptr_ty, FloatSize::Bits32) + let (int_ty, float_size) = if float_ty == intrinsics.f32_ty { + (intrinsics.i32_ty, FloatSize::Bits32) } else if float_ty == intrinsics.f64_ty { - (intrinsics.i64_ty, intrinsics.f64_ptr_ty, FloatSize::Bits64) + (intrinsics.i64_ty, FloatSize::Bits64) } else { unreachable!() }; let (exponent, invalid_exponent) = { - let float_bits = { - let space = builder.build_alloca(int_ty, "space"); - let float_ptr = builder.build_pointer_cast(space, float_ptr_ty, "float_ptr"); - builder.build_store(float_ptr, value); - builder.build_load(space, "float_bits").into_int_value() - }; - + let float_bits = builder.build_bitcast(value, int_ty, "").into_int_value(); let (shift_amount, exponent_mask, invalid_exponent) = match float_size { FloatSize::Bits32 => (23, 0b01111111100000000000000000000000, 0b11111111), FloatSize::Bits64 => ( @@ -1904,43 +1898,23 @@ impl FunctionCodeGenerator for LLVMFunctionCodeGenerator { } Operator::I32ReinterpretF32 => { let v = state.pop1()?; - let space = - builder.build_alloca(intrinsics.i32_ty.as_basic_type_enum(), &state.var_name()); - let f32_space = - builder.build_pointer_cast(space, intrinsics.f32_ptr_ty, &state.var_name()); - builder.build_store(f32_space, v); - let int = builder.build_load(space, &state.var_name()); - state.push1(int); + let ret = builder.build_bitcast(v, intrinsics.i32_ty, &state.var_name()); + state.push1(ret); } Operator::I64ReinterpretF64 => { let v = state.pop1()?; - let space = - builder.build_alloca(intrinsics.i64_ty.as_basic_type_enum(), &state.var_name()); - let f64_space = - builder.build_pointer_cast(space, intrinsics.f64_ptr_ty, &state.var_name()); - builder.build_store(f64_space, v); - let int = builder.build_load(space, &state.var_name()); - state.push1(int); + let ret = builder.build_bitcast(v, intrinsics.i64_ty, &state.var_name()); + state.push1(ret); } Operator::F32ReinterpretI32 => { let v = state.pop1()?; - let space = - builder.build_alloca(intrinsics.f32_ty.as_basic_type_enum(), &state.var_name()); - let i32_space = - builder.build_pointer_cast(space, intrinsics.i32_ptr_ty, &state.var_name()); - builder.build_store(i32_space, v); - let f = builder.build_load(space, &state.var_name()); - state.push1(f); + let ret = builder.build_bitcast(v, intrinsics.f32_ty, &state.var_name()); + state.push1(ret); } Operator::F64ReinterpretI64 => { let v = state.pop1()?; - let space = - builder.build_alloca(intrinsics.f64_ty.as_basic_type_enum(), &state.var_name()); - let i64_space = - builder.build_pointer_cast(space, intrinsics.i64_ptr_ty, &state.var_name()); - builder.build_store(i64_space, v); - let f = builder.build_load(space, &state.var_name()); - state.push1(f); + let ret = builder.build_bitcast(v, intrinsics.f64_ty, &state.var_name()); + state.push1(ret); } /*************************** From 8faff26c314842af2459ed8bc53e759574e0b26f Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Wed, 10 Jul 2019 15:31:07 -0700 Subject: [PATCH 4/7] Give float_bits bitcast instruction a name. --- lib/llvm-backend/src/code.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/llvm-backend/src/code.rs b/lib/llvm-backend/src/code.rs index 0dc31cf62..f9a5979a7 100644 --- a/lib/llvm-backend/src/code.rs +++ b/lib/llvm-backend/src/code.rs @@ -87,7 +87,7 @@ fn trap_if_not_representatable_as_int( }; let (exponent, invalid_exponent) = { - let float_bits = builder.build_bitcast(value, int_ty, "").into_int_value(); + let float_bits = builder.build_bitcast(value, int_ty, "float_bits").into_int_value(); let (shift_amount, exponent_mask, invalid_exponent) = match float_size { FloatSize::Bits32 => (23, 0b01111111100000000000000000000000, 0b11111111), FloatSize::Bits64 => ( From 7f00dc3cdb13cddbeeeb917ffd5534ffba3803c7 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Wed, 10 Jul 2019 15:33:32 -0700 Subject: [PATCH 5/7] Reformat. --- lib/llvm-backend/src/code.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/llvm-backend/src/code.rs b/lib/llvm-backend/src/code.rs index f9a5979a7..7fe98805f 100644 --- a/lib/llvm-backend/src/code.rs +++ b/lib/llvm-backend/src/code.rs @@ -87,7 +87,9 @@ fn trap_if_not_representatable_as_int( }; let (exponent, invalid_exponent) = { - let float_bits = builder.build_bitcast(value, int_ty, "float_bits").into_int_value(); + let float_bits = builder + .build_bitcast(value, int_ty, "float_bits") + .into_int_value(); let (shift_amount, exponent_mask, invalid_exponent) = match float_size { FloatSize::Bits32 => (23, 0b01111111100000000000000000000000, 0b11111111), FloatSize::Bits64 => ( From 019de38fe8a6b50305859095df04be4e603cd63e Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 10 Jul 2019 17:19:20 -0700 Subject: [PATCH 6/7] update lock file --- Cargo.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.lock b/Cargo.lock index eeac81cb7..68e92c004 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1432,7 +1432,7 @@ dependencies = [ "wasmer-clif-fork-frontend 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmer-clif-fork-wasm 0.31.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmer-runtime-core 0.5.5", - "wasmer-win-exception-handler 0.5.4", + "wasmer-win-exception-handler 0.5.5", "wasmparser 0.32.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", ] From 80a8262b2fc4020c922a992cc8067357a2d025ea Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 10 Jul 2019 17:30:24 -0700 Subject: [PATCH 7/7] revert appveyor change --- .appveyor.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.appveyor.yml b/.appveyor.yml index b0a5e2904..c057f81d3 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -49,8 +49,9 @@ install: # - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1')) build_script: - - git submodule update --init - cargo build --release --verbose + - git submodule init + - git submodule update # Cache wapm cli target in dir above to prevent breaking git submodule on windows - if not exist wapm-cli-target mkdir wapm-cli-target - move wapm-cli-target wapm-cli