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
losfair
08a1dd3e8c
Merge master and add documentation.
2019-11-13 14:52:22 +08:00
losfair
e2956e7b1a
Run cargo fmt
2019-11-13 14:34:04 +08:00
losfair
47f1e2a4ef
Fix parameter loading.
2019-11-13 14:18:21 +08:00
losfair
c552514fd2
Disable NaN canonicalizing on aarch64.
2019-11-13 11:35:44 +08:00
Ivan Enderlin
11f34a9285
feat(clif-backend,singlepass-backend) Feed imported functions with FuncCtx.vmctx
.
2019-11-12 00:51:57 +01:00
losfair
03c5614203
Rerun cargo fmt
2019-11-11 02:00:16 +08:00
losfair
899fbed35d
Merge master.
2019-11-11 01:42:43 +08:00
losfair
001213716e
Add fneg.
2019-11-07 01:30:27 +08:00
losfair
6135a004a4
Add itruncf/fconverti fast path.
2019-11-07 01:11:25 +08:00
Ivan Enderlin
a4ba429ed0
feat(singlepass-backend) Inject FuncCtx
to the function pointer of an host function.
2019-11-06 14:48:46 +01:00
Ivan Enderlin
edb6cbefca
fix(runtime-core) Share the definition of Trampoline
across all the backends.
...
This patch updates all the backends to use the definition of
`Trampoline` as defined in the `wasmer_runtime_core::typed_func`
module. That way, there is no copy of that type, and as such, it is
easier to avoid regression (a simple `cargo check` does the job).
This patch also formats the `use` statements in the updated files.
2019-10-30 13:10:34 +01:00
bors[bot]
77527c23ce
Merge #877
...
877: Reimplement F32Min, F32Max, F64Min and F64Max. r=nlewycky a=nlewycky
# Description
Reimplement F32Min, F32Max, F64Min and F64Max.
Adds XMM8--15 registers. Adds VMOVA, VBLEND and VXORP, and the VCMPUNORD and VCMPORD comparisons.
Fixes 419 test failures.
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-10-22 17:33:44 +00:00
Ivan Enderlin
e559b54309
fix(singlepass-backend) Use wasmparser from runtime-core
.
...
The `wasmer-runtime-core` crate re-exports the `wasmparser`
crate. This patch updates the `singlepass-backend` crate to use
`wasmparser` through the `wasmer-runtime-core` crate, which removes a
direct dependency for this crate.
2019-10-18 11:22:40 +02:00
losfair
d325635629
Increment aarch64 virtual stack size to 1MB.
2019-10-17 23:00:32 +08:00