Ben Vanik
|
e6320dada5
|
Most of the memory instructions.
Not sure this is correct, as it crashes pretty early on.
|
2013-05-24 16:16:39 -07:00 |
Ben Vanik
|
e724fe3e60
|
Adding some ALU instructions.
|
2013-05-24 14:21:39 -07:00 |
Ben Vanik
|
8965caa833
|
Adding an option to disable register caching.
Until things work I'm not going to bother with that optimization.
|
2013-05-24 11:18:50 -07:00 |
Ben Vanik
|
b8323c3055
|
Preparing some control instructions for proper emitting.
|
2013-05-24 03:51:58 -07:00 |
Ben Vanik
|
bf8f068fa5
|
Disabling tail calls.
|
2013-05-24 03:29:21 -07:00 |
Ben Vanik
|
2242778fff
|
Fixing trace calls. Disabling logging of redirector.
|
2013-05-24 02:42:41 -07:00 |
Ben Vanik
|
eb9b9b0321
|
Adding bl (unconditional only).
|
2013-05-24 02:21:12 -07:00 |
Ben Vanik
|
2153256109
|
Fixing line endings.
|
2013-05-24 01:41:02 -07:00 |
Ben Vanik
|
605d66ecf6
|
Adding the first instructions, mfspr/mtspr.
|
2013-05-24 01:37:02 -07:00 |
Ben Vanik
|
71bd3c799f
|
Local variables setup and spilling/filling.
|
2013-05-24 00:50:56 -07:00 |
Ben Vanik
|
376226c59a
|
Adding basic block labels.
Probably correct.
|
2013-05-24 00:06:46 -07:00 |
Ben Vanik
|
a81babac1e
|
Adding comments to the disasm and implementing kernel calls.
|
2013-05-23 23:39:48 -07:00 |
Ben Vanik
|
74ae66aa0a
|
Cleanup and tracing.
|
2013-05-23 23:22:27 -07:00 |
Ben Vanik
|
d7d0b94aab
|
x64 emitter now generating redirection blocks and patching them up.
|
2013-05-23 22:09:04 -07:00 |
Ben Vanik
|
12444f6305
|
Compiles, runs, and hangs in normal wait.
|
2013-05-23 18:46:09 -07:00 |
Ben Vanik
|
1b833b6789
|
Removing libjit backend.
|
2013-05-23 18:05:03 -07:00 |
Ben Vanik
|
bedf86d259
|
Adding 'x64' backend.
Does not compile.
|
2013-05-23 18:04:12 -07:00 |
Ben Vanik
|
86002b2f44
|
Removing old llvm cruft.
|
2013-05-23 17:51:03 -07:00 |
Ben Vanik
|
63cee87420
|
Removing library loader, as it's not used.
|
2013-05-23 17:50:05 -07:00 |
Ben Vanik
|
57b486c4ad
|
Removing libjit, because it is pretty terrible.
|
2013-05-23 17:48:01 -07:00 |
Ben Vanik
|
7f4f448369
|
Adding beaengine.
|
2013-05-23 17:39:03 -07:00 |
Ben Vanik
|
4eafb6b070
|
Adding asmjit.
|
2013-05-23 17:30:13 -07:00 |
Ben Vanik
|
eee856be04
|
Tweaking things again. Now not getting very far. Sigh.
|
2013-05-23 15:52:57 -07:00 |
Ben Vanik
|
f08e80efbc
|
Fixing calling into code. Interpreter can now be used.
|
2013-05-23 15:44:45 -07:00 |
Ben Vanik
|
9487fa027c
|
libjit doesn't encode mov with imm64 offsets, fixing.
|
2013-05-23 13:55:09 -07:00 |
Ben Vanik
|
70a9a1053e
|
The previous truncation was useless.
|
2013-05-23 13:16:39 -07:00 |
Ben Vanik
|
89672e111d
|
Optimizing memory accesses a bit by letting libjit use relative addressing.
|
2013-05-23 11:46:26 -07:00 |
Ben Vanik
|
fc8eb3d40a
|
Adding disassembly to traces and bumping libjit.
|
2013-05-23 11:39:29 -07:00 |
Ben Vanik
|
730dba4aea
|
Adding addzex.
|
2013-05-23 02:13:04 -07:00 |
Ben Vanik
|
7d95098792
|
Fix for bswap16
|
2013-05-23 02:05:08 -07:00 |
Ben Vanik
|
d6f2a0b3f0
|
Adding --trace_branches.
Simple output right now, can always be enhanced.
|
2013-05-23 01:31:41 -07:00 |
Ben Vanik
|
4495637616
|
Making sure shim calls are cdecl.
|
2013-05-23 01:04:14 -07:00 |
Ben Vanik
|
426fccdbb4
|
Bumping libjit to fix the tail call bug.
|
2013-05-23 00:55:16 -07:00 |
Ben Vanik
|
6bde04de26
|
Flushing logging.
|
2013-05-23 00:26:55 -07:00 |
Ben Vanik
|
1a01d365b5
|
Making code dumps conditional on --log_codegen
|
2013-05-22 22:01:34 -07:00 |
Ben Vanik
|
fcb66660c0
|
(partial) addx and logging compiled addresses.
|
2013-05-22 21:53:21 -07:00 |
Ben Vanik
|
5cb8cf2630
|
Hacky ALU ops. Need overflow checks.
|
2013-05-22 21:14:16 -07:00 |
Ben Vanik
|
9ed911cdad
|
Fixing comparisons and disabling OutputDebugString logging.
|
2013-05-22 21:11:27 -07:00 |
Ben Vanik
|
2d01dced5a
|
Adding back invalid instruction logs.
|
2013-05-22 20:58:48 -07:00 |
Ben Vanik
|
f2c16c24f3
|
Basic control instructions (no indirection branches yet).
|
2013-05-22 20:15:04 -07:00 |
Ben Vanik
|
1bcb3e8f92
|
Many more ALU instructions.
|
2013-05-22 18:51:06 -07:00 |
Ben Vanik
|
64b619023d
|
Adding back in quite a few instructions.
|
2013-05-22 18:03:43 -07:00 |
Ben Vanik
|
c0dd60bde8
|
Adding memory access/etc.
Needs byte swapping.
|
2013-05-22 15:02:26 -07:00 |
Ben Vanik
|
7227ba2693
|
Setting up register fill/spill.
|
2013-05-22 13:37:44 -07:00 |
Ben Vanik
|
16d2b73a73
|
Main codegen loop now running through instructions.
|
2013-05-22 13:10:07 -07:00 |
Ben Vanik
|
dad99769cb
|
Prepping for basic block generation.
|
2013-05-22 11:53:52 -07:00 |
Ben Vanik
|
33e2bc01ee
|
Kernel call thunks and cleanup on exports.
|
2013-05-22 11:30:53 -07:00 |
Ben Vanik
|
37f93d2974
|
Calling to/from native works!
|
2013-05-22 11:13:27 -07:00 |
Ben Vanik
|
0c127828af
|
Disabling libjit warnings. Now down to 12.
|
2013-05-21 17:11:48 -07:00 |
Ben Vanik
|
65a8d3c039
|
libjit now uses beaengine for disassembly.
Fixes #20.
|
2013-05-21 17:06:30 -07:00 |