308 Commits

Author SHA1 Message Date
losfair
c6861d1827 Merge remote-tracking branch 'origin/master' into fix/singlepass-indirect-call 2020-02-12 02:55:48 +08:00
losfair
e0aafbe9dd Remove WasmTrapInfo and passExceptionCode in the generic Box<Any> container. 2020-02-06 23:49:50 +08:00
losfair
ee9ddb18fc Fix singlepass miscompilation on Operator::CallIndirect. 2020-02-06 23:10:55 +08:00
Heyang Zhou
b5a629b065
Use less-than to compare sizes.
Co-Authored-By: nlewycky <nick@wasmer.io>
2020-02-05 00:37:40 +08:00
losfair
60c7d1e0fc Fix register zeroing in emit_compare_and_swap. 2020-02-04 01:58:21 +08:00
losfair
455783aa21 Make full preemption an optional feature. 2020-02-01 01:12:06 +08:00
MikaelUrankar
fcbdada259 Port to FreeBSD 2020-01-28 21:49:55 +01:00
losfair
74eb11352a Merge remote-tracking branch 'origin/master' into feature/unified-exceptions 2020-01-21 01:10:40 +08:00
Mark McCaskey
430524ce51 Prepare for 0.13.1 release 2020-01-16 14:07:18 -08:00
Mark McCaskey
3c996bc821 Prepare for 0.13.0 release 2020-01-15 11:09:47 -08:00
losfair
d3ebb5fbc8 Merge remote-tracking branch 'origin/master' into feature/unified-exceptions 2020-01-16 03:01:21 +08:00
Syrus
a1d8b9aa5b Move backend_id to static str 2020-01-13 15:40:09 +01:00
losfair
42e5e7881f Merge remote-tracking branch 'origin/master' into feature/unified-exceptions 2020-01-13 22:36:55 +08:00
losfair
9e2080def1 Run cargo fmt. 2020-01-10 02:54:50 +08:00
losfair
0a23327401 Emit exception table in singlepass. 2020-01-10 02:54:23 +08:00
Syrus
d7154fe791 Remove Backend dependency 2020-01-07 16:12:39 +01:00
Syrus
d4e964519d Move requires pre validation into the ModuleCodeGenerator 2020-01-07 16:10:46 +01:00
Syrus
c4d70a6b75 Use Arc instead of Rc 2019-12-20 20:37:47 -08:00
Syrus
2404203ae4 Improved based on feedback 2019-12-20 19:03:49 -08:00
Syrus
527d7072b3 Remove unsafe transmute copy 2019-12-20 18:52:30 -08:00
Syrus
294cc28135 Move inline breakpoint outside of runtime backend
There was some code smell leaking inline breakpoint implementation into the runtime core backend instead of the compiler itself
2019-12-20 18:26:56 -08:00
Mark McCaskey
adecb36d15 Update to 0.45.0 wasmparser Operator names in singlepass-backend 2019-12-20 17:15:38 -08:00
Nick Lewycky
bba0129150 Remove comments with register names that might not be right and don't really matter. 2019-12-20 16:20:58 -08:00
Nick Lewycky
e738a9f2b5 Name the magic constants in the singlepass backend. 2019-12-20 16:20:58 -08:00
Nick Lewycky
b7929e6561 Add support for non-trapping float to int conversions in singlepass+AArch64. 2019-12-20 16:20:58 -08:00
Nick Lewycky
d52c193e84 Finish implementation of trunc_sat in singlepass x86-64. 2019-12-20 16:20:58 -08:00
Nick Lewycky
442c40f5f1 Initial implementatio of trunc-sat instructions in singlepass. 27 test failures. 2019-12-20 16:20:58 -08:00
Mark McCaskey
5888f44e95 Cargo fmt with Rust 1.39.0 2019-12-19 14:06:27 -05:00
Mark McCaskey
6a74b7e994 Prepare for 0.12.0 release 2019-12-18 17:24:29 -05:00
losfair
5521352f52 singlepass: Use a valid instruction as the inline breakpoint marker. (AArch64) 2019-12-17 00:33:18 +08:00
Syrus Akbary
298adfd338
Merge branch 'master' into feature/runtime-error-send 2019-12-10 13:59:12 -08:00
Nick Lewycky
0a278c55ee For error handling and breakpoints, use Box<Any + Send> instead of Box<Any>. 2019-12-09 21:00:01 -08:00
Patrick Ventuzelo
a0c628c063 fix unwrap bug + replace assert, unreachable in singlepass codegen 2019-12-09 15:18:08 +01:00
Mark McCaskey
176b938cb6
Remove wasmparser dep from singlepass 2019-12-05 11:59:26 -08:00
Mark McCaskey
c7f3abd27e
Merge branch 'master' into deterministic 2019-12-05 11:50:16 -08:00
Nick Lewycky
3381e8867c Fix some assorted warnings. 2019-12-02 17:00:37 -08:00
losfair
04d8df0a46 Add comments and remove unneeded statics. 2019-12-03 01:46:06 +08:00
losfair
513427be93 Remove singlepass codegen dependence on runtime memory. 2019-11-29 01:30:08 +08:00
Heyang Zhou
24ead779d6
Remove extra '.'.
Co-Authored-By: nlewycky <nick@wasmer.io>
2019-11-28 03:25:05 +08:00
losfair
cfa0635026 Add caching support for singlepass backend. 2019-11-28 02:49:52 +08:00
Mark McCaskey
bb1e7a8d78 Prepare for 0.11.0 release 2019-11-22 11:18:06 -08:00
losfair
0c7545ded7 Tell dynasm we are generating x64 code in emitter_x64. 2019-11-20 02:09:32 +08:00
losfair
d56fd96395 Merge remote-tracking branch 'origin/master' into feature/singlepass-aarch64 2019-11-20 01:54:34 +08:00
losfair
c9aa37fc99 Cleanup. 2019-11-20 01:48:20 +08:00
losfair
34bb321e66 Rename emit_host_redirection. 2019-11-20 01:34:45 +08:00
losfair
98052f82b9 Unmap stack after call. 2019-11-20 01:27:48 +08:00
losfair
3d48115586 Allocate a big enough stack for invoke(). 2019-11-20 01:07:02 +08:00
losfair
a7577dfcef Try further reducing preallocated stack size. 2019-11-20 00:37:38 +08:00
bors[bot]
8ffd380006
Merge #973
973: Add sign extension spec tests; add sign extension to singlepass r=nlewycky a=MarkMcCaskey

Adds missing spectests from official repo, implements instructions for singlepass

# Review

- [ ] Add a short description of the the change to the CHANGELOG.md file


Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <5770194+markmccaskey@users.noreply.github.com>
2019-11-18 22:16:49 +00:00
Mark McCaskey
8a096a09e4 Remove extra register use in sign extension instructions 2019-11-18 11:47:58 -08:00