Commit Graph

806 Commits

Author SHA1 Message Date
96d9e39913 Specify imports instead of using a *. 2020-02-26 13:40:02 +08:00
52d4dac450 Rename feed_event's loc to source_loc 2020-02-25 17:15:17 -08:00
6f5ebb564c Allow building clif-backend without wasm-debug 2020-02-25 17:08:09 -08:00
40d823e298 Merge remote-tracking branch 'origin/master' into feature/polymorphic-v2 2020-02-26 01:45:18 +08:00
80f824e708 Auto-release trampolines. 2020-02-26 01:45:11 +08:00
b7c9c1843a Add dynamic executable memory allocation & tests to trampolines. 2020-02-26 01:44:50 +08:00
ce21910077 Prepare for 0.14.1 release
0.14.1 differs from 0.14.0 primarily in that the GNU/Linux build is
built on Ubuntu 16.04 instead of 18.04, meaning we'll use an earlier
version of GLIBC.
2020-02-24 13:20:12 -08:00
b67acbc0e3 Add ErasedFunc for type-erased functions. 2020-02-25 01:19:19 +08:00
2020901d75 Merge remote-tracking branch 'origin/master' into feature/polymorphic-v2 2020-02-25 00:56:46 +08:00
d7fca539c1 Make JitCodeDebugInfoEntryHandleInner Send and Sync 2020-02-21 15:10:58 -08:00
40e4dddc4b Add updates from feedback
Co-authored-by: Ivan Enderlin <ivan.enderlin@wanadoo.fr>
2020-02-21 14:33:32 -08:00
1e52d4b9b2 doc(readme) Fix logo. 2020-02-21 13:39:43 +01:00
3d6e915108 Merge branch 'master' into feature/debug-prototype2 2020-02-20 17:48:02 -08:00
7c5f8251e3 Flatten tuple in return type, conditionally remove more jit debug code 2020-02-20 16:59:59 -08:00
1374bf0806 Prepare for 0.14.0 release 2020-02-20 13:15:29 -08:00
0ec08b5bbd Add updates from feedback 2020-02-20 13:06:50 -08:00
65a9e04f3c Add updates from feedback
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2020-02-20 11:20:40 -08:00
64cc59179a Merge branch 'master' into feature/debug-prototype2 2020-02-19 16:13:35 -08:00
a2e531bda4 Update to use published wasm-debug; make dep optional in clif-backend 2020-02-19 15:53:36 -08:00
1ac59a31f6 Add various small improvements, update attributions file 2020-02-18 17:31:12 -08:00
3653a448f5 Clean up code, add documentation, implement pieces properly 2020-02-18 16:51:02 -08:00
e9333c5790 Merge branch 'master' into feat-runtime-core-value-try-from 2020-02-18 10:01:03 +01:00
abd44e9fba Merge branch 'master' into feat-runtime-core-cleanup-typed-func 2020-02-17 13:00:13 -08:00
8d31f0b7e9 Merge branch 'master' into feat-runtime-core-wasm-extern-type-macros 2020-02-17 20:57:27 +01:00
9013d52ea4 doc(runtime-core) Hide some traits and structs in the documentation.
Those are not necessary for the user. It's only internal
implementation, that must be public because it ends up in public
types, but the compiler infers everything automatically.
2020-02-17 16:03:54 +01:00
ad77803243 fix(runtime-core) Rename ExternalFunction to HostFunction. 2020-02-17 16:02:23 +01:00
533609ff70 chore(runtime-core) Move one statement to be closer to the definition. 2020-02-17 16:01:01 +01:00
2ee1e80f3b feat(runtime-core) Allow dynamic signature for polymorphic host functions.
This patch adds a new field in `Func`: `signature`. It contains the
signature of the host function.

For non-polymorphic host functions, the signature is computed from the
`Args` and `Rets` implementation parameters at compile-time.

For polymorphic host functions though, to be fully dynamic, the
signature given to `new_polymorphic` is used in `Func` as the correct
signature.
2020-02-17 15:50:12 +01:00
ad20a008e0 fix(runtime-core) Use explicit dyn for trait objects. 2020-02-17 15:30:25 +01:00
ff154999f3 fix(runtime-core) Remove warnings.
Because we can use the `impl_traits!` macro with only one identifier,
a warning is emitted saying the parenthesis are useless for this
specific usecase. They are required for all the other usecases
though. We can safely ignore this warning.
2020-02-17 15:20:21 +01:00
1d1ffcc10a feat(runtime-core) Implement TryFrom<native_type> for Value. 2020-02-17 14:56:43 +01:00
9088f6b9e2 feat(runtime-core) Simplify WasmExternType implementations with macros. 2020-02-17 14:53:09 +01:00
5f4561e5ef Fix compilation error on Aarch64. 2020-02-16 00:28:43 +08:00
923e4ac83a Add command line flag, make debug crate optional, clean up API 2020-02-14 12:34:25 -08:00
12373bb872 Func::new_polymorphic 2020-02-15 01:31:49 +08:00
2fe6e6f039 Global trampoline buffer. 2020-02-15 01:31:33 +08:00
e34e0bb897 Clean up, everything works 2020-02-12 17:09:30 -08:00
93dcb63348 Maybe improve safety of MemoryView Deref 2020-02-11 14:13:25 -08:00
0564000da3 Add wip debugging code 2020-02-11 09:52:21 -08:00
e17d8f20b8 Merge remote-tracking branch 'origin/master' into feature/remove-wasm-trap-info 2020-02-11 02:52:14 +08:00
073d342f01 Fix typo in comment. 2020-02-07 12:16:16 -08:00
e0aafbe9dd Remove WasmTrapInfo and passExceptionCode in the generic Box<Any> container. 2020-02-06 23:49:50 +08:00
2c44b700c8 Merge #1183
1183: Make full preemption an optional feature. r=syrusakbary a=losfair

Full preemption requires two additional memory loads on loop backedges and function calls. This PR allows disabling full preemption at code generation time, and disables it by default.

Co-authored-by: losfair <zhy20000919@hotmail.com>
Co-authored-by: Heyang Zhou <zhy20000919@hotmail.com>
2020-02-05 01:05:04 +00:00
d2fc5c8013 Cargo fmt 2020-02-05 00:45:24 +08:00
d3f2cf594a Fix comments. 2020-02-05 00:44:59 +08:00
fe5ed7b27a Improve comment for memory_bound_check_mode.
Co-Authored-By: nlewycky <nick@wasmer.io>
2020-02-05 00:35:15 +08:00
42132c42b6 Restructure to use external crate, add integration 2020-02-03 16:01:23 -08:00
5a795d560e Fix a couple typos in comments. 2020-02-03 12:41:57 -08:00
bb79df7e69 Merge remote-tracking branch 'origin/master' into feature/optional-full-preemption 2020-02-04 01:58:53 +08:00
929825cba1 Improve some docs and misc code segments 2020-01-31 15:42:18 -08:00