Commit Graph

209 Commits

Author SHA1 Message Date
Mark McCaskey
ef60f08740 Merge branch 'master' into feature/reference-types 2021-03-23 09:42:34 -07:00
Ivan Enderlin
4b752ed498 chore: Use loupe 0.1.0. 2021-03-23 11:18:31 +01:00
Mark McCaskey
979b9da566 Merge branch 'master' into feature/reference-types 2021-03-22 11:51:04 -07:00
Ivan Enderlin
2afed4d813 feat: Use latest version of loupe. 2021-03-22 11:43:46 +01:00
Ivan Enderlin
fc4637bfdb Merge branch 'master' into feat-memory-usage 2021-03-22 11:43:04 +01:00
Ivan Enderlin
026520998c feat: Start implementing loupe::MemoryUsage on wasmer::Store. 2021-03-22 11:42:28 +01:00
Ivan Enderlin
9c1ec38a9a feat(compiler-cranelift) Migrate to the recent changes in wasmer-types. 2021-03-18 14:41:37 +01:00
Mark McCaskey
2a541e072b Merge branch 'master' into feature/reference-types 2021-03-16 12:28:05 -07:00
Mark McCaskey
bfc91dc445 Feature gate wasmer::ExternRef 2021-03-16 09:24:13 -07:00
Mark McCaskey
f26de7ea54 Disable dynamic ref counting in compiler-cranelift
This will leak extern refs but lets all spec tests pass. We can follow up later
to resolve the leaking of ExternRefs, but most of this PR should land on
master/main now.
2021-03-15 12:51:04 -07:00
Mark McCaskey
3dcba53309 Add wip commit, more ref counting improvements 2021-03-05 11:58:21 -08:00
Mark McCaskey
af3e3e5ff4 Fix up extern ref counting for globals + misc cleanups 2021-03-05 08:01:52 -08:00
Mark McCaskey
96e9baad52 Add preliminary ref counting to compiler cranelift
Still a WIP, not all cases are covered and we're not testing very thoroughly yet
2021-03-04 10:28:55 -08: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
Nick Lewycky
b14afa1342 Implement all reference types instructions in compiler-llvm.
Remove spectest ignores for reference types tests on llvm.

Extend llvm ABIs to pass externref and funcref.

Expose all libcalls through the Libcalls enum.

Add support for all libcalls to llvm object_file.rs, even libcalls that we aren't using.

Add missing no_mangle to libcalls.
Change 'memory' to 'memory32' in libcalls in preparation for the memory64 proposal.
Remove 'local' from 'wasmer_local_memory_copy' in libcalls to fit naming convention.
Add mangling of externref and funcref for llvm-debug-dir.
Mark 'wasmer_func_ref' readonly.
2021-03-01 11:53:12 -08:00
hanabi1224
321bea4ded Upgrade cranelift to 0.70 2021-02-27 19:09:45 +08:00
Mark McCaskey
148aa41ec8 Get compiler singlepass passing reference types spec tests
Also implement `elem.drop` which seems to have been missing
2021-02-25 09:16:31 -08:00
Mark McCaskey
72b4a6ed8b Fix memory leak with imported funcrefs 2021-02-16 09:32:42 -08:00
Nick Lewycky
efa9176179 Remove dev-dependency on cranelift 0.67. 2021-02-10 13:44:27 -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
0a17424368 Update wasmparser and core spectests 2021-02-09 11:57:54 -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
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
924ffd8797 Prepare for 1.0.1 release 2021-01-12 08:08:19 -08:00
Mark McCaskey
3654cb17a5 Fix RUSTSEC-2021-0003 2021-01-11 12:51:07 -08: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
Mark McCaskey
bc73789cc0 Prepare for 1.0.0 release 2021-01-05 06:21:03 -08:00
Simon Warta
82e9c0c18f Fix spelling WASM -> Wasm 2021-01-03 21:59:11 +01: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
271c767785 Replace all usages of to_wasm_error 2020-12-22 09:17:09 +01:00
Mark McCaskey
95b0970b8f Enable clippy linting and fix issues 2020-12-18 11:50:27 -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
5a08680fc3 Update lib/compiler-cranelift/src/config.rs
Co-authored-by: Julien BIANCHI <contact@jubianchi.Fr>
2020-12-17 14:34:11 +01: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
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
59df6917d8 Prepare for 1.0.0-beta2 release 2020-12-16 07:41:59 -08:00
Ivan Enderlin
a9947943a2 doc(compiler-cranelift) Fix a typo. 2020-12-14 15:23:34 +01:00
Syrus Akbary
1ee0146954 Fix all compilation issues simplifying the code 2020-12-04 15:58:38 -08:00
Syrus
13e6f29c29 Set compiler config to be owned (following wasm-c-api) 2020-12-04 02:39:19 -08:00
Syrus Akbary
2fac4356a8 Added Cranelift x64 experimental feature flag 2020-12-02 23:02:24 -08:00
Mark McCaskey
e928a832a8 Update mentions of alpha to beta 2020-12-02 11:01:54 -08:00
Mark McCaskey
947e7d394f Prepare for 1.0.0-beta1 release 2020-12-01 17:15:46 -08:00
nlewycky
f110c4d308 Merge branch 'master' into feature/middleware 2020-11-30 15:12:02 -08:00
Ivan Enderlin
6eaeeeb60c feat: Use the same version of smallvec everywhere. 2020-11-26 16:56:59 +01:00