Merge branch 'master' into fix/emscripten-translate

This commit is contained in:
Brandon Fish 2019-01-27 13:21:44 -06:00
commit 2245c920ed
7 changed files with 28 additions and 24 deletions

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
lib/emscripten/emtests/* linguist-vendored
lib/runtime-core/spectests/* linguist-vendored

14
Cargo.lock generated
View File

@ -489,15 +489,15 @@ dependencies = [
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
"structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
"wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmer-clif-backend 0.1.1", "wasmer-clif-backend 0.1.2",
"wasmer-emscripten 0.1.0", "wasmer-emscripten 0.1.0",
"wasmer-runtime 0.1.3", "wasmer-runtime 0.1.4",
"wasmer-runtime-core 0.1.2", "wasmer-runtime-core 0.1.2",
] ]
[[package]] [[package]]
name = "wasmer-clif-backend" name = "wasmer-clif-backend"
version = "0.1.1" version = "0.1.2"
dependencies = [ dependencies = [
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
"cranelift-codegen 0.26.0 (registry+https://github.com/rust-lang/crates.io-index)", "cranelift-codegen 0.26.0 (registry+https://github.com/rust-lang/crates.io-index)",
@ -520,15 +520,15 @@ dependencies = [
"libc 0.2.44 (git+https://github.com/rust-lang/libc)", "libc 0.2.44 (git+https://github.com/rust-lang/libc)",
"time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
"wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmer-clif-backend 0.1.1", "wasmer-clif-backend 0.1.2",
"wasmer-runtime-core 0.1.2", "wasmer-runtime-core 0.1.2",
] ]
[[package]] [[package]]
name = "wasmer-runtime" name = "wasmer-runtime"
version = "0.1.3" version = "0.1.4"
dependencies = [ dependencies = [
"wasmer-clif-backend 0.1.1", "wasmer-clif-backend 0.1.2",
"wasmer-runtime-core 0.1.2", "wasmer-runtime-core 0.1.2",
] ]
@ -542,7 +542,7 @@ dependencies = [
"nix 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "nix 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
"page_size 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "page_size 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
"wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"wasmer-clif-backend 0.1.1", "wasmer-clif-backend 0.1.2",
"wasmparser 0.23.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmparser 0.23.0 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
] ]

View File

@ -15,6 +15,8 @@ Install Wasmer with:
curl https://get.wasmer.io -sSfL | sh curl https://get.wasmer.io -sSfL | sh
``` ```
_**NEW ✨**: Now you can also embed Wasmer in your Rust application, check our [example repo](https://github.com/wasmerio/wasmer-rust-example) to see how to do it!_
### Usage ### Usage
`wasmer` can execute both the standard binary format (`.wasm`) and the text `wasmer` can execute both the standard binary format (`.wasm`) and the text
@ -54,15 +56,16 @@ curl https://sh.rustup.rs -sSf | sh
### Other dependencies ### Other dependencies
Please select your operating system: Please select your operating system:
* [macOS](#macos)
* [Debian-based Linuxes](#debian-based-linuxes) - [macOS](#macos)
* [Microsoft Windows](#windows-msvc) - [Debian-based Linuxes](#debian-based-linuxes)
- [Microsoft Windows](#windows-msvc)
#### macOS #### macOS
If you have [homebrew](https://brew.sh/) installed: If you have [homebrew](https://brew.sh/) installed:
``` sh ```sh
brew install cmake brew install cmake
``` ```
@ -74,21 +77,20 @@ sudo port install cmake
#### Debian-based Linuxes #### Debian-based Linuxes
``` sh ```sh
sudo apt install cmake sudo apt install cmake
``` ```
#### Windows (MSVC) #### Windows (MSVC)
Right now Windows support is *highly experimental*. Right now Windows support is _highly experimental_.
We are working on this so Wasmer can soon be released for Windows. We are working on this so Wasmer can soon be released for Windows.
1. Install Python for Windows (https://www.python.org/downloads/release/python-2714/). The Windows x86-64 MSI installer is fine. 1. Install Python for Windows (https://www.python.org/downloads/release/python-2714/). The Windows x86-64 MSI installer is fine.
You should change the installation to install the "Add python.exe to Path" feature. You should change the installation to install the "Add python.exe to Path" feature.
2. Install Git for Windows (https://git-scm.com/download/win). DO allow it to add git.exe to the PATH (default 2. Install Git for Windows (https://git-scm.com/download/win). DO allow it to add git.exe to the PATH (default
settings for the installer are fine). settings for the installer are fine).
## Building ## Building
@ -106,7 +108,7 @@ cargo install --path .
## Testing ## Testing
Thanks to [spectests](https://github.com/wasmerio/wasmer/tree/master/spectests) we can assure 100% compatibility with the WebAssembly spec test suite. Thanks to [spectests](https://github.com/wasmerio/wasmer/tree/master/lib/runtime-core/spectests) we can assure 100% compatibility with the WebAssembly spec test suite.
Tests can be run with: Tests can be run with:
@ -135,7 +137,7 @@ Below are some of the goals (written with order) of this project:
- [x] It should be 100% compatible with the [WebAssembly Spectest](https://github.com/wasmerio/wasmer/tree/master/spectests) - [x] It should be 100% compatible with the [WebAssembly Spectest](https://github.com/wasmerio/wasmer/tree/master/spectests)
- [x] It should be fast _(partially achieved)_ - [x] It should be fast _(partially achieved)_
- [ ] Support Emscripten calls _(on the works)_ - [ ] Support Emscripten calls _(in the works)_
- [ ] Support Rust ABI calls - [ ] Support Rust ABI calls
- [ ] Support GO ABI calls - [ ] Support GO ABI calls

View File

@ -1,6 +1,6 @@
[package] [package]
name = "wasmer-clif-backend" name = "wasmer-clif-backend"
version = "0.1.1" version = "0.1.2"
description = "Wasmer runtime Cranelift compiler backend" description = "Wasmer runtime Cranelift compiler backend"
license = "MIT" license = "MIT"
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"] authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
@ -8,7 +8,7 @@ repository = "https://github.com/wasmerio/wasmer"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
wasmer-runtime-core = { path = "../runtime-core", version = "0.1.1" } wasmer-runtime-core = { path = "../runtime-core", version = "0.1.2" }
cranelift-native = "0.26.0" cranelift-native = "0.26.0"
cranelift-codegen = "0.26.0" cranelift-codegen = "0.26.0"
cranelift-entity = "0.26.0" cranelift-entity = "0.26.0"

View File

@ -24,7 +24,7 @@ errno = "0.2.4"
wabt = "0.7.2" wabt = "0.7.2"
[dev-dependencies] [dev-dependencies]
wasmer-clif-backend = { path = "../clif-backend", version = "0.1.1" } wasmer-clif-backend = { path = "../clif-backend", version = "0.1.2" }
wabt = "0.7.2" wabt = "0.7.2"
field-offset = "0.1.1" field-offset = "0.1.1"

View File

@ -38,7 +38,7 @@ macro_rules! __export_func_convert_type {
Type::I64 Type::I64
}; };
(u64) => { (u64) => {
Type::I32 Type::I64
}; };
(f32) => { (f32) => {
Type::F32 Type::F32

View File

@ -1,6 +1,6 @@
[package] [package]
name = "wasmer-runtime" name = "wasmer-runtime"
version = "0.1.3" version = "0.1.4"
description = "Wasmer runtime library" description = "Wasmer runtime library"
license = "MIT" license = "MIT"
authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"] authors = ["The Wasmer Engineering Team <engineering@wasmer.io>"]
@ -10,7 +10,7 @@ readme = "README.md"
[dependencies] [dependencies]
wasmer-runtime-core = { path = "../runtime-core", version = "0.1.2" } wasmer-runtime-core = { path = "../runtime-core", version = "0.1.2" }
wasmer-clif-backend = { path = "../clif-backend", version = "0.1.1", optional = true } wasmer-clif-backend = { path = "../clif-backend", version = "0.1.2", optional = true }
[features] [features]
default = ["wasmer-clif-backend"] default = ["wasmer-clif-backend"]