251 Commits

Author SHA1 Message Date
Yuji Yamamoto
b23436d1bb
🐛 Correct error message when trying to build on non-supported targets 2020-03-23 11:55:31 +09:00
Yuji Yamamoto
0df0a1cccb
Support Android
I'll send a PR after https://github.com/rust-lang/libc/pull/1622 is merged and released
2020-03-23 11:55:31 +09:00
losfair
c25ba627df Add comment for call argument list preprocessing. 2020-03-18 23:41:10 +08:00
losfair
ea0cd7286e Cargo fmt 2020-03-18 01:03:55 +08:00
losfair
3a18b70d31 Merge remote-tracking branch 'origin/feature/singlepass-nan-cncl' into feature/singlepass-nan-cncl 2020-03-18 01:03:30 +08:00
losfair
86dde8cab2 Add missing movs. 2020-03-18 01:02:59 +08:00
Heyang Zhou
bfc3b8292c
Apply suggestions from code review
Co-Authored-By: nlewycky <nick@wasmer.io>
2020-03-18 00:58:50 +08:00
losfair
8e92e3208a Disable canonicalization for aarch64. 2020-03-18 00:47:52 +08:00
losfair
1d9f0c53e1 Style fixes and fix missing canonicalization at function call. 2020-03-18 00:42:10 +08:00
losfair
4357c15046 Fix missing canonicalizations. 2020-03-17 13:52:11 +08:00
losfair
5d26d92d9b Add switch to turn on/off NaN canonicalization. 2020-03-16 23:40:02 +08:00
losfair
8ea7bfd563 NaN canonicalization by tracking values. 2020-03-16 00:43:19 +08:00
losfair
7e2ede3960 Fix floating point return values. 2020-03-10 03:16:22 +08:00
losfair
65962f0186 Add a translation layer before import call in singlepass. 2020-03-10 02:46:13 +08:00
Mark McCaskey
52d4dac450 Rename feed_event's loc to source_loc 2020-02-25 17:15:17 -08:00
Mark McCaskey
40e4dddc4b Add updates from feedback
Co-authored-by: Ivan Enderlin <ivan.enderlin@wanadoo.fr>
2020-02-21 14:33:32 -08:00
Mark McCaskey
7c5f8251e3 Flatten tuple in return type, conditionally remove more jit debug code 2020-02-20 16:59:59 -08:00
Mark McCaskey
64cc59179a
Merge branch 'master' into feature/debug-prototype2 2020-02-19 16:13:35 -08:00
losfair
ed826cb389 Cleanup various FIXMEs and remove protect_unix. 2020-02-18 02:35:19 +08:00
Mark McCaskey
e34e0bb897 Clean up, everything works 2020-02-12 17:09:30 -08:00
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
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
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
Nick Lewycky
3381e8867c Fix some assorted warnings. 2019-12-02 17:00:37 -08:00