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
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
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
losfair
04d8df0a46
Add comments and remove unneeded static
s.
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
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
Mark McCaskey
8a096a09e4
Remove extra register use in sign extension instructions
2019-11-18 11:47:58 -08:00
Mark McCaskey
344132cc89
Merge branch 'master' into feature/singlepass-sign-extension
2019-11-18 11:38:12 -08:00
Mark McCaskey
8b6a7b77fc
Clean up from feedback
2019-11-18 11:36:49 -08:00
losfair
2776daedfa
Fix entry with more than 5/6 arguments.
2019-11-19 03:04:07 +08:00
losfair
ddbdb3e585
Ignore extra arguments.
2019-11-19 02:46:31 +08:00
losfair
06a7e5424b
Inline entry trampolines.
2019-11-19 02:39:51 +08:00
losfair
d7308c361d
Fix call_indirect on imported functions.
2019-11-19 01:25:01 +08:00
losfair
1eed6ce8f8
Fix CONSTRUCT_STACK_AND_CALL_WASM for aarch64.
2019-11-18 02:06:31 +08:00
losfair
5d2ee4fcc8
Fix floating point comparision involving NaNs.
2019-11-18 01:39:44 +08:00
losfair
1db6425cd5
Merge remote-tracking branch 'origin/master' into feature/singlepass-aarch64
2019-11-17 04:36:22 +08:00
Mark McCaskey
7631aee4f4
Add sign extension spec tests; add sign extension to singlepass
2019-11-15 21:54:34 -08:00
anb
3b2d751c55
Enable compilation for specific target
...
By exposing the target information through `CompilerConfig`,
compiler(only LLVM at the moment) could create a machine with
different CPU feature flags other than current host, which makes it
capable to "cross compile" to some degree.
Update #959
2019-11-15 18:51:59 -08:00