Commit Graph

2814 Commits

Author SHA1 Message Date
a057296618 (S32, Imm64, GPR) 2019-10-17 23:45:58 +08:00
3f35a74b84 Two more mov variants. 2019-10-17 23:40:44 +08:00
4df7973639 Add mov variants. 2019-10-17 23:34:24 +08:00
00242cdd7f Fix LEA simulation on aarch64. 2019-10-17 23:00:50 +08:00
d325635629 Increment aarch64 virtual stack size to 1MB. 2019-10-17 23:00:32 +08:00
01e81ee809 Merge branch 'master' into feature/singlepass-mac-int 2019-10-16 17:12:36 -07:00
f99d0360d2 Add registers XMM8--15 to from_dwarf_regnum and invoke_call_return_on_stack. 2019-10-16 10:34:37 -07:00
81be25d970 feat(runtime-core) Add documentation and make macros more readable.
After a long time, the macros are easy to read, but not at first
glance. I hope this PR will improve the situation: Same syntax used
everywhere, more spaces…
2019-10-16 16:07:50 +02:00
5ee311adab These were both calling i32.clz. They should be fixed. 2019-10-15 14:10:26 -07:00
4e5d559ab5 Remove dead functions LZCNT and TZCNT. 2019-10-15 13:44:18 -07:00
99f7499a05 Reimplement I32Ctz, I64Clz and I64Ctz without LZCNT or TZCNT. 2019-10-15 13:42:05 -07:00
3e854c4a3b Remove the exclusions for I32Clz. 2019-10-15 13:21:07 -07:00
cafcfd3b50 cargo fmt 2019-10-15 13:07:44 -07:00
cf3d2a830d Reimplement I32Clz without relying on LZCNT. 2019-10-15 12:50:59 -07:00
3de0c7763f Skip inline non-instruction data. 2019-10-15 22:12:08 +08:00
81d538ade2 Fix disp < 0 case. 2019-10-15 22:00:33 +08:00
ee88c459e5 Allow arbitrary size of disp. 2019-10-15 21:55:04 +08:00
feeb9cd8f9 These tests failed on mac on bors. Put them back. 2019-10-14 15:02:51 -07:00
26a4f073f0 Implement F64Min and F64Max. 2019-10-14 14:15:18 -07:00
06ffb00deb Reimplement F32Max. 2019-10-14 14:07:30 -07:00
b886a41a85 Use temp_gprs instead of hard-coding RAX/RDX. 2019-10-14 13:53:30 -07:00
5cee23455d Release the registers we acquire. Reformat. 2019-10-14 13:51:03 -07:00
336dab7fd9 Don't use utility functions in F32Min implementation. 2019-10-14 13:46:55 -07:00
765e1d3b9e Add XMM8--XMM15. These were added in x64. 2019-10-14 13:46:55 -07:00
4b89e01806 Remove commented-out code that I added so as to not lose its history in git. Apply trivial cleanups and reformat.
Remove expected test failure entries that are fixed so far.
2019-10-14 13:46:55 -07:00
963148fdce Fix F32Min for all cases including NaNs. 2019-10-14 13:46:55 -07:00
8b937afc1f Add comments to indicate the implemention we'd like to have, but can't right now. 2019-10-14 13:46:55 -07:00
0f712c90ab Don't allocate another register when it's safe to reuse dst. 2019-10-14 13:46:55 -07:00
b75e5c0c7c When we know RDX is unavailable, use RAX instead. Should be fine here. 2019-10-14 13:46:55 -07:00
d6eba03a2f Remove loc1/loc2. That intended refactoring didn't work out. 2019-10-14 13:46:55 -07:00
555d933057 Initial commit, reimplementation of F32Min. Fixes F32Min(negative_zero, zero) issue.
Also removes some previously-fixed i32 and i64 exclusions from the tests.
2019-10-14 13:46:55 -07:00
e5f7dc8274 Print the last frame in block trace output. 2019-10-14 20:23:43 +08:00
2e532fa66d Preserve fault.ip when calling middleware. 2019-10-14 20:23:27 +08:00
a525907c60 Emit state information for internal breakpoints. 2019-10-14 20:23:10 +08:00
5611bec3eb Update README.md 2019-10-13 21:52:10 -07:00
b0b0983eb8 Allow accessing execution state in middleware breakpoint handlers. 2019-10-13 20:51:39 +08:00
128b006bf7 Add a BlockTrace middleware. 2019-10-13 20:51:03 +08:00
5499a69ddc Run cargo fmt on everything. 2019-10-13 20:02:47 +08:00
c18bdd52cc Fix inline breakpoints on macOS. 2019-10-13 20:02:28 +08:00
e9f476c93b doc: add link to SO in C api example 2019-10-13 10:30:02 +02:00
36f95fc660 Support emitting inline breakpoints in singlepass. 2019-10-11 21:05:42 +08:00
94f97109ff Include backend metadata in tiering module. 2019-10-11 21:05:17 +08:00
db59127f71 Inline breakpoint support in core. 2019-10-11 21:04:53 +08:00
2e1fb7abca Update call_trace middleware to include a counter. 2019-10-11 21:04:09 +08:00
c3ff8eb540 fix(runtime-c-api) Replace unsafe code by safe code. 2019-10-11 09:26:05 +02:00
01c209fe96 feat(runtime-c-api) Move the wasi module into its own file. 2019-10-11 09:19:46 +02:00
bd8e864656 Add functions import object to get import fns and free them 2019-10-10 16:07:56 -07:00
51f619a132 Change pointer that's not modified to be const in C API 2019-10-10 11:22:45 -07:00
8ee4b7f7b0 Replace brk with undefined instruction. 2019-10-10 22:08:52 +08:00
420bfa570e Merge branch 'master' into deterministic 2019-10-10 15:55:35 +03:00