Bump version to 0.2.0

This commit is contained in:
Dan Gohman
2019-08-20 16:05:41 -07:00
parent b4a505d5d3
commit 44367ba99a
21 changed files with 174 additions and 93 deletions

View File

@@ -1,7 +1,7 @@
[package] [package]
name = "wasmtime" name = "wasmtime"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
version = "0.1.0" version = "0.2.0"
description = "Command-line interface for Wasmtime" description = "Command-line interface for Wasmtime"
license = "Apache-2.0 WITH LLVM-exception" license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://cranelift.readthedocs.io/" documentation = "https://cranelift.readthedocs.io/"
@@ -11,10 +11,10 @@ edition = "2018"
default-run = "wasmtime" default-run = "wasmtime"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-native = "0.38.0" cranelift-native = "0.40.0"
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
wasmtime-debug = { path = "wasmtime-debug" } wasmtime-debug = { path = "wasmtime-debug" }
wasmtime-environ = { path = "wasmtime-environ" } wasmtime-environ = { path = "wasmtime-environ" }
wasmtime-interface-types = { path = "wasmtime-interface-types" } wasmtime-interface-types = { path = "wasmtime-interface-types" }

View File

@@ -11,11 +11,11 @@ cargo-fuzz = true
[dependencies] [dependencies]
wasmtime-environ = { path = "../wasmtime-environ" } wasmtime-environ = { path = "../wasmtime-environ" }
wasmtime-jit = { path = "../wasmtime-jit" } wasmtime-jit = { path = "../wasmtime-jit" }
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
cranelift-native = "0.38.0" cranelift-native = "0.40.0"
libfuzzer-sys = { git = "https://github.com/rust-fuzz/libfuzzer-sys.git" } libfuzzer-sys = { git = "https://github.com/rust-fuzz/libfuzzer-sys.git" }
wasmparser = { version = "0.32.1", default-features = false } wasmparser = { version = "0.36.0", default-features = false }
binaryen = "0.5.0" binaryen = "0.5.0"
[features] [features]

View File

@@ -2,7 +2,7 @@
name = "wasmtime-py" name = "wasmtime-py"
version = "0.3.0" version = "0.3.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
description = "Python extension for the wasmtime" description = "Python extension for Wasmtime"
license = "Apache-2.0 WITH LLVM-exception" license = "Apache-2.0 WITH LLVM-exception"
categories = ["wasm", "python"] categories = ["wasm", "python"]
edition = "2018" edition = "2018"
@@ -13,11 +13,11 @@ name = "_wasmtime"
crate-type = ["cdylib"] crate-type = ["cdylib"]
[dependencies] [dependencies]
cranelift-codegen = "0.38.0" cranelift-codegen = "0.40.0"
cranelift-native = "0.38.0" cranelift-native = "0.40.0"
cranelift-entity = "0.38.0" cranelift-entity = "0.40.0"
cranelift-wasm = "0.38.0" cranelift-wasm = "0.40.0"
cranelift-frontend = "0.38.0" cranelift-frontend = "0.40.0"
wasmtime-environ = { path = "../../wasmtime-environ" } wasmtime-environ = { path = "../../wasmtime-environ" }
wasmtime-interface-types = { path = "../../wasmtime-interface-types" } wasmtime-interface-types = { path = "../../wasmtime-interface-types" }
wasmtime-jit = { path = "../../wasmtime-jit" } wasmtime-jit = { path = "../../wasmtime-jit" }
@@ -25,7 +25,7 @@ wasmtime-runtime = { path = "../../wasmtime-runtime" }
target-lexicon = { version = "0.4.0", default-features = false } target-lexicon = { version = "0.4.0", default-features = false }
failure = "0.1" failure = "0.1"
region = "2.0.0" region = "2.0.0"
wasmparser = "0.35.3" wasmparser = "0.36.0"
[dependencies.pyo3] [dependencies.pyo3]
version = "0.7.0-alpha.1" version = "0.7.0-alpha.1"

View File

@@ -3,14 +3,16 @@ name = "wasmtime-rust"
version = "0.1.0" version = "0.1.0"
authors = ["Alex Crichton <alex@alexcrichton.com>"] authors = ["Alex Crichton <alex@alexcrichton.com>"]
edition = "2018" edition = "2018"
categories = ["wasm", "rust"]
license = "Apache-2.0 WITH LLVM-exception"
[lib] [lib]
test = false test = false
doctest = false doctest = false
[dependencies] [dependencies]
cranelift-codegen = "0.38.0" cranelift-codegen = "0.40.0"
cranelift-native = "0.38.0" cranelift-native = "0.40.0"
failure = "0.1.5" failure = "0.1.5"
wasmtime-interface-types = { path = "../../wasmtime-interface-types" } wasmtime-interface-types = { path = "../../wasmtime-interface-types" }
wasmtime-jit = { path = "../../wasmtime-jit" } wasmtime-jit = { path = "../../wasmtime-jit" }

View File

@@ -9,7 +9,7 @@ topdir=$(dirname "$0")
cd "$topdir" cd "$topdir"
# All the wasmtime-* crates have the same version number # All the wasmtime-* crates have the same version number
version="0.1.0" version="0.2.0"
# Update all of the Cargo.toml files. # Update all of the Cargo.toml files.
# #
@@ -34,9 +34,26 @@ cargo update
# Note that libraries need to be published in topological order. # Note that libraries need to be published in topological order.
echo git commit -a -m "\"Bump version to $version"\" echo git commit -a -m "\"Bump version to $version"\"
echo git tag v$version
echo git push echo git push
echo git push origin v$version
for crate in \ for crate in \
wasmtime-environ wasmtime \
wasmtime-wasi \
wasmtime-wasi-c \
wasmtime-wast \
wasmtime-debug \
wasmtime-environ \
wasmtime-runtime \
wasmtime-jit \
wasmtime-interface-types \
wasmtime-obj \
wasmtime-py \
wasmtime-rust
do do
echo cargo publish --manifest-path "$crate/Cargo.toml" echo cargo publish --manifest-path "$crate/Cargo.toml"
# Sleep for a few seconds to allow the server to update the index.
# https://internals.rust-lang.org/t/changes-to-how-crates-io-handles-index-updates/9608
echo sleep 10
done done

View File

@@ -53,12 +53,18 @@ banner "Rust unit tests"
RUST_BACKTRACE=1 cargo test \ RUST_BACKTRACE=1 cargo test \
--package wasmtime \ --package wasmtime \
--package wasmtime-wasi \ --package wasmtime-wasi \
--package wasmtime-wasi-c \
--package wasmtime-wast \ --package wasmtime-wast \
--package wasmtime-debug \ --package wasmtime-debug \
--package wasmtime-environ \ --package wasmtime-environ \
--package wasmtime-runtime \ --package wasmtime-runtime \
--package wasmtime-jit \ --package wasmtime-jit \
--package wasmtime-obj --package wasmtime-interface-types \
--package wasmtime-obj \
RUST_BACKTRACE=1 cargo +nightly test \
--package wasmtime-py \
--package wasmtime-rust
# Make sure the documentation builds. # Make sure the documentation builds.
banner "Rust documentation: $topdir/target/doc/wasmtime/index.html" banner "Rust documentation: $topdir/target/doc/wasmtime/index.html"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-debug" name = "wasmtime-debug"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
description = "Debug utils for WebAsssembly code in Cranelift" description = "Debug utils for WebAsssembly code in Cranelift"
repository = "https://github.com/CraneStation/wasmtime" repository = "https://github.com/CraneStation/wasmtime"
@@ -13,10 +13,10 @@ edition = "2018"
[dependencies] [dependencies]
gimli = "0.19.0" gimli = "0.19.0"
wasmparser = { version = "0.35.1" } wasmparser = { version = "0.36.0" }
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
faerie = "0.10.1" faerie = "0.10.1"
wasmtime-environ = { path = "../wasmtime-environ", default-features = false } wasmtime-environ = { path = "../wasmtime-environ", default-features = false }
target-lexicon = { version = "0.4.0", default-features = false } target-lexicon = { version = "0.4.0", default-features = false }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-environ" name = "wasmtime-environ"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
description = "Standalone environment support for WebAsssembly code in Cranelift" description = "Standalone environment support for WebAsssembly code in Cranelift"
repository = "https://github.com/CraneStation/wasmtime" repository = "https://github.com/CraneStation/wasmtime"
@@ -12,9 +12,9 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
lightbeam = { path = "../lightbeam", optional = true } lightbeam = { path = "../lightbeam", optional = true }
failure = { version = "0.1.3", default-features = false } failure = { version = "0.1.3", default-features = false }
failure_derive = { version = "0.1.3", default-features = false } failure_derive = { version = "0.1.3", default-features = false }

View File

@@ -197,8 +197,15 @@ impl crate::compilation::Compiler for Cranelift {
let mut code_buf: Vec<u8> = Vec::new(); let mut code_buf: Vec<u8> = Vec::new();
let mut reloc_sink = RelocSink::new(func_index); let mut reloc_sink = RelocSink::new(func_index);
let mut trap_sink = binemit::NullTrapSink {}; let mut trap_sink = binemit::NullTrapSink {};
let mut stackmap_sink = binemit::NullStackmapSink {};
context context
.compile_and_emit(isa, &mut code_buf, &mut reloc_sink, &mut trap_sink) .compile_and_emit(
isa,
&mut code_buf,
&mut reloc_sink,
&mut trap_sink,
&mut stackmap_sink,
)
.map_err(CompileError::Codegen)?; .map_err(CompileError::Codegen)?;
let jt_offsets = context.func.jt_offsets.clone(); let jt_offsets = context.func.jt_offsets.clone();

View File

@@ -91,20 +91,27 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
self.result.target_config self.result.target_config
} }
fn reserve_signatures(&mut self, num: u32) { fn reserve_signatures(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.signatures .signatures
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_signature(&mut self, sig: ir::Signature) { fn declare_signature(&mut self, sig: ir::Signature) -> WasmResult<()> {
let sig = translate_signature(sig, self.pointer_type()); let sig = translate_signature(sig, self.pointer_type());
// TODO: Deduplicate signatures. // TODO: Deduplicate signatures.
self.result.module.signatures.push(sig); self.result.module.signatures.push(sig);
Ok(())
} }
fn declare_func_import(&mut self, sig_index: SignatureIndex, module: &str, field: &str) { fn declare_func_import(
&mut self,
sig_index: SignatureIndex,
module: &str,
field: &str,
) -> WasmResult<()> {
debug_assert_eq!( debug_assert_eq!(
self.result.module.functions.len(), self.result.module.functions.len(),
self.result.module.imported_funcs.len(), self.result.module.imported_funcs.len(),
@@ -116,9 +123,10 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
.module .module
.imported_funcs .imported_funcs
.push((String::from(module), String::from(field))); .push((String::from(module), String::from(field)));
Ok(())
} }
fn declare_table_import(&mut self, table: Table, module: &str, field: &str) { fn declare_table_import(&mut self, table: Table, module: &str, field: &str) -> WasmResult<()> {
debug_assert_eq!( debug_assert_eq!(
self.result.module.table_plans.len(), self.result.module.table_plans.len(),
self.result.module.imported_tables.len(), self.result.module.imported_tables.len(),
@@ -131,9 +139,15 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
.module .module
.imported_tables .imported_tables
.push((String::from(module), String::from(field))); .push((String::from(module), String::from(field)));
Ok(())
} }
fn declare_memory_import(&mut self, memory: Memory, module: &str, field: &str) { fn declare_memory_import(
&mut self,
memory: Memory,
module: &str,
field: &str,
) -> WasmResult<()> {
debug_assert_eq!( debug_assert_eq!(
self.result.module.memory_plans.len(), self.result.module.memory_plans.len(),
self.result.module.imported_memories.len(), self.result.module.imported_memories.len(),
@@ -146,9 +160,15 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
.module .module
.imported_memories .imported_memories
.push((String::from(module), String::from(field))); .push((String::from(module), String::from(field)));
Ok(())
} }
fn declare_global_import(&mut self, global: Global, module: &str, field: &str) { fn declare_global_import(
&mut self,
global: Global,
module: &str,
field: &str,
) -> WasmResult<()> {
debug_assert_eq!( debug_assert_eq!(
self.result.module.globals.len(), self.result.module.globals.len(),
self.result.module.imported_globals.len(), self.result.module.imported_globals.len(),
@@ -160,16 +180,18 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
.module .module
.imported_globals .imported_globals
.push((String::from(module), String::from(field))); .push((String::from(module), String::from(field)));
Ok(())
} }
fn finish_imports(&mut self) { fn finish_imports(&mut self) -> WasmResult<()> {
self.result.module.imported_funcs.shrink_to_fit(); self.result.module.imported_funcs.shrink_to_fit();
self.result.module.imported_tables.shrink_to_fit(); self.result.module.imported_tables.shrink_to_fit();
self.result.module.imported_memories.shrink_to_fit(); self.result.module.imported_memories.shrink_to_fit();
self.result.module.imported_globals.shrink_to_fit(); self.result.module.imported_globals.shrink_to_fit();
Ok(())
} }
fn reserve_func_types(&mut self, num: u32) { fn reserve_func_types(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.functions .functions
@@ -177,92 +199,107 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
self.result self.result
.function_body_inputs .function_body_inputs
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_func_type(&mut self, sig_index: SignatureIndex) { fn declare_func_type(&mut self, sig_index: SignatureIndex) -> WasmResult<()> {
self.result.module.functions.push(sig_index); self.result.module.functions.push(sig_index);
Ok(())
} }
fn reserve_tables(&mut self, num: u32) { fn reserve_tables(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.table_plans .table_plans
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_table(&mut self, table: Table) { fn declare_table(&mut self, table: Table) -> WasmResult<()> {
let plan = TablePlan::for_table(table, &self.result.tunables); let plan = TablePlan::for_table(table, &self.result.tunables);
self.result.module.table_plans.push(plan); self.result.module.table_plans.push(plan);
Ok(())
} }
fn reserve_memories(&mut self, num: u32) { fn reserve_memories(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.memory_plans .memory_plans
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_memory(&mut self, memory: Memory) { fn declare_memory(&mut self, memory: Memory) -> WasmResult<()> {
let plan = MemoryPlan::for_memory(memory, &self.result.tunables); let plan = MemoryPlan::for_memory(memory, &self.result.tunables);
self.result.module.memory_plans.push(plan); self.result.module.memory_plans.push(plan);
Ok(())
} }
fn reserve_globals(&mut self, num: u32) { fn reserve_globals(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.globals .globals
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_global(&mut self, global: Global) { fn declare_global(&mut self, global: Global) -> WasmResult<()> {
self.result.module.globals.push(global); self.result.module.globals.push(global);
Ok(())
} }
fn reserve_exports(&mut self, num: u32) { fn reserve_exports(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.exports .exports
.reserve(usize::try_from(num).unwrap()); .reserve(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_func_export(&mut self, func_index: FuncIndex, name: &str) { fn declare_func_export(&mut self, func_index: FuncIndex, name: &str) -> WasmResult<()> {
self.result self.result
.module .module
.exports .exports
.insert(String::from(name), Export::Function(func_index)); .insert(String::from(name), Export::Function(func_index));
Ok(())
} }
fn declare_table_export(&mut self, table_index: TableIndex, name: &str) { fn declare_table_export(&mut self, table_index: TableIndex, name: &str) -> WasmResult<()> {
self.result self.result
.module .module
.exports .exports
.insert(String::from(name), Export::Table(table_index)); .insert(String::from(name), Export::Table(table_index));
Ok(())
} }
fn declare_memory_export(&mut self, memory_index: MemoryIndex, name: &str) { fn declare_memory_export(&mut self, memory_index: MemoryIndex, name: &str) -> WasmResult<()> {
self.result self.result
.module .module
.exports .exports
.insert(String::from(name), Export::Memory(memory_index)); .insert(String::from(name), Export::Memory(memory_index));
Ok(())
} }
fn declare_global_export(&mut self, global_index: GlobalIndex, name: &str) { fn declare_global_export(&mut self, global_index: GlobalIndex, name: &str) -> WasmResult<()> {
self.result self.result
.module .module
.exports .exports
.insert(String::from(name), Export::Global(global_index)); .insert(String::from(name), Export::Global(global_index));
Ok(())
} }
fn declare_start_func(&mut self, func_index: FuncIndex) { fn declare_start_func(&mut self, func_index: FuncIndex) -> WasmResult<()> {
debug_assert!(self.result.module.start_func.is_none()); debug_assert!(self.result.module.start_func.is_none());
self.result.module.start_func = Some(func_index); self.result.module.start_func = Some(func_index);
Ok(())
} }
fn reserve_table_elements(&mut self, num: u32) { fn reserve_table_elements(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.module .module
.table_elements .table_elements
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_table_elements( fn declare_table_elements(
@@ -271,13 +308,14 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
base: Option<GlobalIndex>, base: Option<GlobalIndex>,
offset: usize, offset: usize,
elements: Box<[FuncIndex]>, elements: Box<[FuncIndex]>,
) { ) -> WasmResult<()> {
self.result.module.table_elements.push(TableElements { self.result.module.table_elements.push(TableElements {
table_index, table_index,
base, base,
offset, offset,
elements, elements,
}); });
Ok(())
} }
fn define_function_body( fn define_function_body(
@@ -292,10 +330,11 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
Ok(()) Ok(())
} }
fn reserve_data_initializers(&mut self, num: u32) { fn reserve_data_initializers(&mut self, num: u32) -> WasmResult<()> {
self.result self.result
.data_initializers .data_initializers
.reserve_exact(usize::try_from(num).unwrap()); .reserve_exact(usize::try_from(num).unwrap());
Ok(())
} }
fn declare_data_initialization( fn declare_data_initialization(
@@ -304,7 +343,7 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
base: Option<GlobalIndex>, base: Option<GlobalIndex>,
offset: usize, offset: usize,
data: &'data [u8], data: &'data [u8],
) { ) -> WasmResult<()> {
self.result.data_initializers.push(DataInitializer { self.result.data_initializers.push(DataInitializer {
location: DataInitializerLocation { location: DataInitializerLocation {
memory_index, memory_index,
@@ -313,6 +352,7 @@ impl<'data> cranelift_wasm::ModuleEnvironment<'data> for ModuleEnvironment<'data
}, },
data, data,
}); });
Ok(())
} }
} }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-interface-types" name = "wasmtime-interface-types"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
publish = false publish = false
description = "Support for wasm interface types with wasmtime" description = "Support for wasm interface types with wasmtime"
@@ -12,10 +12,10 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = "0.38.0" cranelift-codegen = "0.40.0"
failure = "0.1" failure = "0.1"
walrus = "0.11.0" walrus = "0.11.0"
wasmparser = "0.35" wasmparser = "0.36.0"
wasm-webidl-bindings = "0.4.0" wasm-webidl-bindings = "0.4.0"
wasmtime-jit = { path = '../wasmtime-jit' } wasmtime-jit = { path = '../wasmtime-jit' }
wasmtime-runtime = { path = '../wasmtime-runtime' } wasmtime-runtime = { path = '../wasmtime-runtime' }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-jit" name = "wasmtime-jit"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
publish = false publish = false
description = "JIT-style execution for WebAsssembly code in Cranelift" description = "JIT-style execution for WebAsssembly code in Cranelift"
@@ -12,10 +12,10 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
cranelift-frontend = "0.38.0" cranelift-frontend = "0.40.0"
wasmtime-environ = { path = "../wasmtime-environ", default-features = false } wasmtime-environ = { path = "../wasmtime-environ", default-features = false }
wasmtime-runtime = { path = "../wasmtime-runtime", default-features = false } wasmtime-runtime = { path = "../wasmtime-runtime", default-features = false }
wasmtime-debug = { path = "../wasmtime-debug", default-features = false } wasmtime-debug = { path = "../wasmtime-debug", default-features = false }
@@ -24,7 +24,7 @@ failure = { version = "0.1.3", default-features = false }
failure_derive = { version = "0.1.3", default-features = false } failure_derive = { version = "0.1.3", default-features = false }
target-lexicon = { version = "0.4.0", default-features = false } target-lexicon = { version = "0.4.0", default-features = false }
hashbrown = { version = "0.6.0", optional = true } hashbrown = { version = "0.6.0", optional = true }
wasmparser = "0.35.1" wasmparser = "0.36.0"
[features] [features]
default = ["std"] default = ["std"]

View File

@@ -270,8 +270,15 @@ fn make_trampoline(
let mut code_buf: Vec<u8> = Vec::new(); let mut code_buf: Vec<u8> = Vec::new();
let mut reloc_sink = RelocSink {}; let mut reloc_sink = RelocSink {};
let mut trap_sink = binemit::NullTrapSink {}; let mut trap_sink = binemit::NullTrapSink {};
let mut stackmap_sink = binemit::NullStackmapSink {};
context context
.compile_and_emit(isa, &mut code_buf, &mut reloc_sink, &mut trap_sink) .compile_and_emit(
isa,
&mut code_buf,
&mut reloc_sink,
&mut trap_sink,
&mut stackmap_sink,
)
.map_err(|error| SetupError::Compile(CompileError::Codegen(error)))?; .map_err(|error| SetupError::Compile(CompileError::Codegen(error)))?;
Ok(code_memory Ok(code_memory

View File

@@ -68,7 +68,6 @@ impl Into<ValidatingParserConfig> for Features {
enable_simd: self.simd, enable_simd: self.simd,
enable_multi_value: self.multi_value, enable_multi_value: self.multi_value,
}, },
mutable_global_imports: true,
} }
} }
} }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-obj" name = "wasmtime-obj"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
description = "Native object file output for WebAsssembly code in Wasmtime" description = "Native object file output for WebAsssembly code in Wasmtime"
publish = false publish = false
@@ -12,8 +12,8 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
wasmtime-environ = { path = "../wasmtime-environ" } wasmtime-environ = { path = "../wasmtime-environ" }
faerie = "0.10.1" faerie = "0.10.1"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-runtime" name = "wasmtime-runtime"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
publish = false publish = false
description = "Runtime library support for Wasmtime" description = "Runtime library support for Wasmtime"
@@ -12,9 +12,9 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
wasmtime-environ = { path = "../wasmtime-environ", default-features = false } wasmtime-environ = { path = "../wasmtime-environ", default-features = false }
region = "2.0.0" region = "2.0.0"
lazy_static = "1.2.0" lazy_static = "1.2.0"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-wasi-c" name = "wasmtime-wasi-c"
version = "0.0.0" version = "0.2.0"
authors = ["The Cranelift Project Developers"] authors = ["The Cranelift Project Developers"]
publish = false publish = false
description = "WASI API support for Wasmtime" description = "WASI API support for Wasmtime"
@@ -13,9 +13,9 @@ readme = "README.md"
wasmtime-runtime = { path = "../wasmtime-runtime" } wasmtime-runtime = { path = "../wasmtime-runtime" }
wasmtime-environ = { path = "../wasmtime-environ" } wasmtime-environ = { path = "../wasmtime-environ" }
wasmtime-jit = { path = "../wasmtime-jit" } wasmtime-jit = { path = "../wasmtime-jit" }
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
target-lexicon = "0.4.0" target-lexicon = "0.4.0"
log = { version = "0.4.8", default-features = false } log = { version = "0.4.8", default-features = false }
libc = "0.2.60" libc = "0.2.60"

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-wasi" name = "wasmtime-wasi"
version = "0.0.0" version = "0.2.0"
authors = ["The Cranelift Project Developers"] authors = ["The Cranelift Project Developers"]
publish = false publish = false
description = "WASI API support for Wasmtime" description = "WASI API support for Wasmtime"
@@ -14,9 +14,9 @@ wasmtime-runtime = { path = "../wasmtime-runtime" }
wasmtime-environ = { path = "../wasmtime-environ" } wasmtime-environ = { path = "../wasmtime-environ" }
wasmtime-jit = { path = "../wasmtime-jit" } wasmtime-jit = { path = "../wasmtime-jit" }
wasi-common = { git = "https://github.com/CraneStation/wasi-common", rev = "8ea7a983d8b1364e5f62d2adf0e74b3b8db1c9b3"} wasi-common = { git = "https://github.com/CraneStation/wasi-common", rev = "8ea7a983d8b1364e5f62d2adf0e74b3b8db1c9b3"}
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
target-lexicon = "0.4.0" target-lexicon = "0.4.0"
log = { version = "0.4.8", default-features = false } log = { version = "0.4.8", default-features = false }

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "wasmtime-wast" name = "wasmtime-wast"
version = "0.1.0" version = "0.2.0"
authors = ["The Wasmtime Project Developers"] authors = ["The Wasmtime Project Developers"]
publish = false publish = false
description = "wast testing support for wasmtime" description = "wast testing support for wasmtime"
@@ -12,13 +12,13 @@ readme = "README.md"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
cranelift-codegen = { version = "0.38.0", features = ["enable-serde"] } cranelift-codegen = { version = "0.40.0", features = ["enable-serde"] }
cranelift-wasm = { version = "0.38.0", features = ["enable-serde"] } cranelift-wasm = { version = "0.40.0", features = ["enable-serde"] }
cranelift-entity = { version = "0.38.0", features = ["enable-serde"] } cranelift-entity = { version = "0.40.0", features = ["enable-serde"] }
wasmtime-jit = { path = "../wasmtime-jit" } wasmtime-jit = { path = "../wasmtime-jit" }
wasmtime-runtime = { path = "../wasmtime-runtime" } wasmtime-runtime = { path = "../wasmtime-runtime" }
wasmtime-environ = { path = "../wasmtime-environ" } wasmtime-environ = { path = "../wasmtime-environ" }
wabt = "0.7" wabt = "0.9.1"
target-lexicon = "0.4.0" target-lexicon = "0.4.0"
failure = { version = "0.1.3", default-features = false } failure = { version = "0.1.3", default-features = false }
failure_derive = { version = "0.1.3", default-features = false } failure_derive = { version = "0.1.3", default-features = false }

View File

@@ -15,6 +15,7 @@ fn runtime_value(v: Value) -> RuntimeValue {
Value::I64(x) => RuntimeValue::I64(x), Value::I64(x) => RuntimeValue::I64(x),
Value::F32(x) => RuntimeValue::F32(x.to_bits()), Value::F32(x) => RuntimeValue::F32(x.to_bits()),
Value::F64(x) => RuntimeValue::F64(x.to_bits()), Value::F64(x) => RuntimeValue::F64(x.to_bits()),
Value::V128(_) => unimplemented!("SIMD"),
} }
} }
@@ -295,7 +296,7 @@ impl WastContext {
} }
} }
} }
CommandKind::AssertExhaustion { action } => { CommandKind::AssertExhaustion { action, message } => {
match self.perform_action(action).map_err(|error| WastFileError { match self.perform_action(action).map_err(|error| WastFileError {
filename: filename.to_string(), filename: filename.to_string(),
line, line,
@@ -311,10 +312,12 @@ impl WastContext {
)), )),
}); });
} }
ActionOutcome::Trapped { message } => { ActionOutcome::Trapped {
message: trap_message,
} => {
println!( println!(
"{}:{}: TODO: Check the assert_exhaustion message: {}", "{}:{}: TODO: Check the assert_exhaustion message: expected {}, got {}",
filename, line, message filename, line, message, trap_message
); );
} }
} }