Ivan Enderlin
f233ca444e
chore(api) The compiler feature enables wasmer-compiler/translator.
2021-03-04 23:17:14 +01:00
Mark McCaskey
473c0f4f9e
Improve extern ref ref counting tests
2021-03-03 08:13:16 -08:00
Mark McCaskey
2dcb56571a
Implement most of extern ref counting in compiler-cranelift
2021-03-02 13:31:34 -08:00
Mark McCaskey
71a01f7e83
Simplify WasmPtr code
...
`std::mem::size_of::<T>()` already accounts for end padding. The `align_of` code
was not only a no-op, it would be incorrect if it wasn't.
Thanks to Matt Itamenye on the wasmerians slack for pointing this out!
2021-03-02 06:39:29 -08:00
Ivan Enderlin
da12f6907b
feat(api) Remove useless code.
2021-02-25 13:51:01 +01:00
Mark McCaskey
d392ce3cd7
Fix up TODOs and get tests passing again
2021-02-24 13:02:32 -08:00
Mark McCaskey
54b76cddfc
Get references passed through globals fully working via top level API
2021-02-23 11:52:31 -08:00
Mark McCaskey
79de368c5c
Improve support for references in Globals at the API level
2021-02-22 13:08:13 -08:00
Mark McCaskey
337bb8aba6
Put ExternRef in Value, remove phantom data
2021-02-19 08:06:18 -08:00
Mark McCaskey
0b34d0d86d
Revert Table::get method to return Option
2021-02-19 07:43:17 -08:00
kevaundray
afd4d28cef
typo undelying -> underlying
2021-02-18 15:09:24 +00:00
Mark McCaskey
3b7f8d71a9
Add VMFuncRef as NativeWasmType; simplify code
2021-02-17 12:45:15 -08:00
Mark McCaskey
03edab2479
Improve ExternRef API testing
2021-02-17 09:07:48 -08:00
Mark McCaskey
15c3fe6c38
Add improved support for ExternRef in the top level API
2021-02-17 08:57:59 -08:00
Mark McCaskey
12db1e46ca
Update extern ref test to pass back a new extern ref
2021-02-17 08:24:09 -08:00
Mark McCaskey
828d265428
Add basic API tests with reference types with dynamic functions
2021-02-17 08:11:07 -08:00
Mark McCaskey
b140dc2c8e
Add misc code cleanups
2021-02-10 12:13:33 -08:00
Mark McCaskey
1d3ee22991
Get spectests passing with compiler-cranelift with hacks
2021-02-10 11:20:47 -08:00
Mark McCaskey
6e3f835db8
Merge branch 'master' into feature/reference-types
2021-02-10 06:36:36 -08:00
Mark McCaskey
7b8c5b3554
More work on reference types -- wip
2021-02-09 10:54:26 -08:00
Mark McCaskey
6cfcc92d52
Implement further for compiler-cranelift; add ExternRef
2021-02-08 12:49:15 -08:00
Nick Lewycky
9e1cec01be
Prepare for 1.0.2 release
2021-02-04 19:44:49 -08:00
Ivan Enderlin
b5fec879f6
chore(api) use std::ffi::c_void to simplify code.
2021-02-04 14:01:32 +01:00
Ivan Enderlin
48a5cf0b55
feat(api) Re-use the vm::ImportInitializerFuncPtr type.
2021-02-04 14:00:36 +01:00
Mark McCaskey
ecf891e0ac
Add extra layer of indirection for funcref, update tables
...
This is still a WIP, cranelift is passing spectests but singlepass has 3
failures and LLVM is not implemented correctly
2021-02-03 07:47:25 -08:00
Mark McCaskey
63f277bce4
Make FuncRef nullable at the API level
2021-02-01 09:41:18 -08:00
Mark McCaskey
e013581fda
Update vm::Table to support more than just funcref
2021-01-29 10:19:19 -08:00
Nick Lewycky
91d399e8f4
Apply cleanups proposed by clippy.
2021-01-26 16:02:22 -08:00
Mark McCaskey
924ffd8797
Prepare for 1.0.1 release
2021-01-12 08:08:19 -08:00
Mark McCaskey
86574c6b09
Merge pull request #2005 from wasmerio/fix/emscripten-exports
...
Improve WasmerEnv, fix emscripten imports
2021-01-11 14:11:51 -08:00
Mark McCaskey
f4d317070c
Document the updates to WasmerEnv derive
2021-01-11 12:40:28 -08:00
Alexander Mescheryakov
ba5dabe3f3
Fixed broken link to wasmer-wasi
2021-01-10 22:04:03 +03:00
Mark McCaskey
cac4583b19
Add links on all crates.io badges
2021-01-07 06:48:32 -08:00
Mark McCaskey
0448f729fd
Fix up readme files, remove version numbers
2021-01-07 06:36:27 -08:00
Alexander Mescheryakov
142a788cfc
Fix examples URI
2021-01-07 13:18:07 +03:00
Mark McCaskey
bc73789cc0
Prepare for 1.0.0 release
2021-01-05 06:21:03 -08:00
Mark McCaskey
b592ed83af
Reimplement WasmPtr::get_utf8_string to be fully sound
2021-01-04 07:45:57 -08:00
Mark McCaskey
316bfa08e9
Improve docs, update cl
2021-01-04 07:37:39 -08:00
Mark McCaskey
34072cbf6f
Make WasmPtr::get_utf8_string return String
...
The old functionality is readded as an `unsafe` method,
`WasmPtr::get_utf8_str`.
It's important to note that `WasmPtr::get_utf8_string` isn't _entirely_
sound and technically should be marked `unsafe` as well, but this change
is a massive improvement over what we had before.
For future reference, the reason `WasmPtr::get_utf8_string` still has some
soundness issues is that we can't guarantee exclusive access to the memory
while parsing in the string, we temporarily hold a `&[u8]` and hope it
doesn't get mutated. It's possible to implement this method in a more
correct way by copying each byte as we read it into a `Vec` and converting
that into a String.
2021-01-04 07:23:08 -08:00
Mark McCaskey
1ac42e2e3b
Update usage of beta to rc
2020-12-23 11:33:53 -08:00
Mark McCaskey
2d1c03bea0
Prepare for 1.0.0-rc1 release
2020-12-23 11:17:07 -08:00
Simon Warta
df74a4812c
Create dedicated MiddlewareError
2020-12-23 00:07:00 +01:00
Simon Warta
c41451a547
Replace wasmparser::Result with wasmer::WasmResult in middleware
2020-12-23 00:07:00 +01:00
Mark McCaskey
e3eb529c60
Merge branch 'master' into feature/clean-up-host-env-code
2020-12-18 07:56:55 -08:00
Mark McCaskey
fc9a8f87df
Address feedback, clean up code
2020-12-18 07:54:30 -08:00
bors[bot]
8e343633df
Merge #1948
...
1948: doc: Fix links r=Hywan a=Hywan
# Description
Since the `intra-doc-links` feature has been stabilized, we can see more clearly that we have many broken links. This PR is an attempt to fix them!
# Review
- [ ] Add a short description of the the change to the CHANGELOG.md file
Co-authored-by: Ivan Enderlin <ivan@mnt.io >
2020-12-17 13:35:59 +00:00
Ivan Enderlin
78faa4fa25
doc: Fix links.
...
Since the `intra-doc-links` feature has been stabilized, we can see
more clearly that we have many broken links. This PR is an attempt to
fix them!
2020-12-17 11:24:54 +01:00
Simon Warta
9d6fc4a4ba
Expose wasmer::LLVMOptLevel
2020-12-17 10:13:07 +01:00
Simon Warta
85bb1039f8
Expose wasmer::CraneliftOptLevel
...
This is required to do something like
```rust
use wasmer::{Cranelift, CraneliftOptLevel};
let mut compiler = Cranelift::default();
compiler.opt_level(CraneliftOptLevel::None);
let engine = JIT::new(compiler).engine();
// ...
```
2020-12-17 10:13:07 +01:00
Mark McCaskey
4494bea70a
Clean up host env code, add more Send, Sync bounds
2020-12-16 08:37:47 -08:00