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 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
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
bors[bot]
e568c4a374
Merge #972
...
972: Prepare for 0.10.2 release r=MarkMcCaskey a=MarkMcCaskey
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-11-18 19:44:33 +00: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
8ebf8986f0
Reduce stack size.
2019-11-19 03:15:12 +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
Mark McCaskey
2cbc748188
Revert "Update Rust version to 1.39.0."
2019-11-18 09:59:07 -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
cbaa94a7fa
Fix movsx(S32, S64).
2019-11-18 01:08:39 +08:00
losfair
08beb99baa
Fix popcnt.
2019-11-17 05:15:10 +08:00
losfair
021a75244e
Reformat code for rust 1.39.
2019-11-17 04:39:39 +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