Commit Graph

112 Commits

Author SHA1 Message Date
Lachlan Sneff
8b5da1d86e Update cranelift backend to new backend abstraction 2019-04-12 09:58:29 -07:00
Lachlan Sneff
751dff0f9d Attempt to fix windows build 2019-04-09 16:46:01 -07:00
Lachlan Sneff
c212ba3619 Add implementations for typed func errors to cranelift and llvm 2019-04-09 15:53:01 -07:00
bors[bot]
77f8186507 Merge #321
321: Update to Cranelift 0.3.0 r=bjfish a=bjfish

Some API changes were addressed:
- `ModuleEnvironment` many trait methods removed: 459f6ddb26 (diff-0682a088315ee358a75d4b60bc72dafc)
- `declare_table_elements` parameter type changed: 64ea964bc0
- `UnreachableCodeReached` trap code added: 1c43ad771e
- `declare_signature` signature updated: 8a24539e0c
- `define_function_body` parameter added: 37dffdaea1
- `target_lexicon` dependency updated to version `0.3.0`

Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
Co-authored-by: Brandon Fish <bjfish@users.noreply.github.com>
2019-04-04 17:10:51 +00:00
Mark McCaskey
9e601c42f9 change func_index offset by number of imported funcs 2019-04-04 09:29:30 -07:00
Syrus Akbary
7ff51c3b9e
Update lib/clif-backend/src/module.rs
Remove unnecessary `<'a>` from Converter

Co-Authored-By: bjfish <bjfish@users.noreply.github.com>
2019-04-03 13:35:36 -05:00
Brandon Fish
5627f80548 Update to Cranelift 0.3.0 2019-04-03 00:13:40 -05:00
Ivan Enderlin
316cbc54ab doc(lib) Add basic README.md. 2019-03-29 10:17:24 +01:00
Mackenzie Clark
5294eb6b0d merge and respond to feedback 2019-03-28 11:41:45 -07:00
Mark McCaskey
09068c1a74 clean up implementation 2019-03-27 14:01:27 -07:00
Mark McCaskey
a0809dedbf change formatting to match syscalls 2019-03-26 16:57:58 -07:00
Mark McCaskey
9c58bed344 add support for symbol maps 2019-03-26 16:41:40 -07:00
Mackenzie Clark
edacb0a8a7 Merge branch 'master' into feature/vfs 2019-03-16 13:38:02 -07:00
Mackenzie Clark
14104c2c8b fix lots of warnings
fix warnings
2019-03-15 14:10:17 -07:00
Mackenzie Clark
f2488ac410 remove feature flag on custom sections 2019-03-12 13:36:11 -07:00
Mackenzie Clark
b9c3a49f3c parse and store custom sections from wasm, guarded by vfs feature flag 2019-03-12 10:45:44 -07:00
Ivan Enderlin
2c8fc5238d fix(clif-backend) Remove unused imports.
This patch removes unused imports reported by `rustc` as warnings.
2019-03-12 10:03:55 +01:00
Lachlan Sneff
17eada53f3
feat(runtime) Get ready for tiering (#257)
* Add local_function field to context

* Add local call indirection to llvm

* local call indirection

* Fix  vm test

* Fix cranelift local call indirection

* Fix unwinding on nightly
2019-03-08 15:15:16 -08:00
Lachlan Sneff
4e198bca8b merge upstream/master into wasmer-private/feature/llvm-backend 2019-03-04 13:03:32 -08:00
Lachlan Sneff
65ec10961b
Change RuntimeError type (#234)
* Change RuntimeError type and fix codebase to use it

* Fix spectests to work with new runtime error type

* Fix windows signal handler in the clif-backend

* Add missing conversion

* final windows fix
2019-03-04 12:57:26 -08:00
Mackenzie Clark
b3c60bce14
Merge branch 'master' into fix-clif-backend-module-new 2019-03-04 08:14:44 -08:00
Ivan Enderlin
5744f6896f fix(clif-backend) Module::new does not use its argument.
The `Module::new` method requires an argument (`wasm: &[u8]`) that is
never used.

This patch removes the argument, and updates the code accordingly.
2019-03-04 14:03:07 +01:00
Ivan Enderlin
42c9bdf8c2 fix(clif-backend) Remove an unused variable declaration.
The `compiled_functions` variable is declared twice. The first
declaration is never used. This patch removes it.
2019-03-04 13:59:37 +01:00
Syrus
53c8603464 Updated crates version to 0.2.0 2019-02-25 13:33:33 -08:00
Syrus Akbary
c5c967da00 Added parallel compilation (#209) 2019-02-25 12:03:48 -08:00
Lachlan Sneff
07c8975304 Fix clif backend 2019-02-22 16:20:26 -08:00
Lachlan Sneff
df03d00e74 Merge upstream/master into feature/llvm-feature 2019-02-22 14:14:46 -08:00
Lachlan Sneff
0c19824425 Fix after merge 2019-02-22 14:07:03 -08:00
Syrus
fdb2a67579 Added cache into standalone app 2019-02-22 11:42:36 -08:00
Lachlan Sneff
696fd8fce3 Update api again and change SerializedCache to Artifact 2019-02-21 17:07:04 -08:00
Lachlan Sneff
7fa818ea06 Finalize new cache api 2019-02-21 11:47:28 -08:00
Lachlan Sneff
9f40eedba8 Get caching working again 2019-02-20 16:41:41 -08:00
Lachlan Sneff
82eea00a02 Saved 2019-02-19 15:36:22 -08:00
Lachlan Sneff
3c7dc200fa close to working 2019-02-19 09:58:01 -08:00
Lachlan Sneff
e381bbd07b Use ModuleInfo instead of ModuleInner when possible 2019-02-18 11:56:20 -08:00
Lachlan Sneff
2d87f64f82 Merge master into feature/llvm-backend 2019-02-14 15:47:28 -08:00
Mackenzie Clark
6a1fdb7f91
add windows exception handling in C (#175) 2019-02-14 09:58:33 -08:00
Syrus
b6416068a8 Use vec.push instead of .insert for vmctx arg 2019-02-12 11:17:09 -08:00
Syrus
44d1a0d1f9 Fixed debug function context position 2019-02-12 10:49:43 -08:00
Syrus
c40195cf77 Fixed spectests 2019-02-12 10:04:11 -08:00
Syrus
4311a37def Fixed simple spectests example compilation 2019-02-09 20:13:58 -08:00
Lachlan Sneff
327e3a4a1a Implement many wasm instructions 2019-02-09 15:53:40 -08:00
Syrus
227d5e24cf Moved ctx to first argument in Cranelift backend 2019-02-09 14:18:53 -08:00
Lachlan Sneff
aa90a33501 Make module info store FuncSig, not Arc<FuncSig> 2019-02-08 14:19:58 -08:00
Mackenzie Clark
9a56680281
fix windows linking and appveyor build (#166) 2019-02-08 13:51:29 -08:00
Lachlan Sneff
1886b3d3c1
Naive short circuiting implementation for user panics and results. (#167)
* Add panic and result catching

* exit process on panic and user runtime error

* Complete initial implementation
2019-02-08 13:08:03 -08:00
Mackenzie Clark
46ac4e9e1a
reorganize signal module and leave stubs in windows (#162) 2019-02-07 17:08:42 -08:00
Lachlan Sneff
8d2c1956d7
Fix runtime error catching (#157) 2019-02-07 14:44:28 -08:00
Syrus
14806cb604 Fixed formatting and removed print debug statement 2019-02-07 11:37:15 -08:00
Lachlan Sneff
e147983ece fix 2019-02-07 10:45:48 -08:00