Commit Graph

41 Commits

Author SHA1 Message Date
Ben Vanik
638d9631af Fixing register allocation bug. 2014-01-26 17:38:40 -08:00
Ben Vanik
f55fb17e1b MUL/MUL_HI/DIV 2014-01-26 16:09:25 -08:00
Ben Vanik
ebaf8aa16d Fixing extends. Xbyak doesn't have good validation, so expecting more :( 2014-01-26 15:46:10 -08:00
Ben Vanik
e52a7bc3af Fixing things, breaking others. 2014-01-26 15:10:39 -08:00
Ben Vanik
122761835e Adding new instructions and cleaning things up a bit. 2014-01-26 12:14:29 -08:00
Ben Vanik
bbf3b4bdab Fixing tail calls. 2014-01-26 11:45:58 -08:00
Ben Vanik
aadf92e4ea 'Fixing' register clobbering by disabling a bunch of nonvolatile regs. 2014-01-26 11:18:12 -08:00
Ben Vanik
ac59b61851 Fixing register eviction. 2014-01-26 11:17:53 -08:00
Ben Vanik
5eeeee7093 Fixing jumps. 2014-01-26 11:17:12 -08:00
Ben Vanik
3e52a99adf Fiddling with stack. Still wrong. 2014-01-26 04:34:29 -08:00
Ben Vanik
495edda8d8 Logging comments like IVM. 2014-01-26 04:01:51 -08:00
Ben Vanik
51ae8299d9 Fixing stack size. 2014-01-26 03:54:50 -08:00
Ben Vanik
20c8eb1561 Making debug disassembly look a bit better. 2014-01-26 03:24:55 -08:00
Ben Vanik
cb352c6c86 Fancy templated helpers. 2014-01-26 03:17:03 -08:00
Ben Vanik
ecf0988ddb Removing SET_RETURN_ADDRESS - hopefully it'll never be needed again. 2014-01-26 01:18:59 -08:00
Ben Vanik
8789fd4134 Heuristically detecting ret - probably breaks some things. 2014-01-26 01:09:25 -08:00
Ben Vanik
c74f35552a (air quotes) "register allocation" without spills. 2014-01-25 23:36:59 -08:00
Ben Vanik
c4d6c7a526 Reducing value count. IVM could take advantage of this. 2014-01-25 22:47:21 -08:00
Ben Vanik
0cca23cdd7 Source map in DebugInfo. IVM needs to port its stuff over eventually. 2014-01-25 21:20:28 -08:00
Ben Vanik
4609339c5a JIT hackery. Not quite working. 2014-01-25 20:30:41 -08:00
Ben Vanik
8ae6053d0f Deleting LIR and such, wiring up for HIR->x64. 2014-01-24 22:26:15 -08:00
Ben Vanik
faa75c9407 Making debug info toggles a flag to allow finer control. 2014-01-13 21:12:10 -08:00
Ben Vanik
036d12581e VECTOR_SHR/_SHA. Fixing some disasm stuff. 2014-01-08 22:15:00 -08:00
Ben Vanik
894f22cd0b Oh FFS. LOAD_CLOCK. 2014-01-08 00:12:22 -08:00
Ben Vanik
d1528e24bb Removing REM, adding MUL_HI, renaming MULADD/MULSUB. 2014-01-06 22:17:49 -08:00
Ben Vanik
3dcbcce38d POW2/LOG2 for vexptefp/vlogefp. 2014-01-06 18:13:16 -08:00
Ben Vanik
a8eff63dbc Adding skeleton for reg allocator. 2014-01-04 02:57:53 -08:00
Ben Vanik
93ea56179a Moving LoadAcquire/StoreRelease behavior up into HIR. 2014-01-04 00:50:48 -08:00
Ben Vanik
88b631b160 Emitting more x64. 2014-01-04 00:30:43 -08:00
Ben Vanik
2468645bf2 Making functions naked for now, as it makes life way easier. 2014-01-02 23:53:18 -08:00
Ben Vanik
99c200fda5 Fixing warning. 2014-01-02 23:39:53 -08:00
Ben Vanik
73d934b37b Emitting functions and SEH info for call stacks. 2014-01-02 23:11:16 -08:00
Ben Vanik
9ef2d1baf6 Calling generated code. Woo. 2014-01-02 20:56:21 -08:00
Ben Vanik
e14d3379cb Hooking up code emission. 2014-01-02 20:41:13 -08:00
Ben Vanik
125e7278c6 Ugh. Replacing the fancy templates with hand coded sequences for now. 2014-01-02 00:00:14 -08:00
Ben Vanik
3e4f93a6a9 Playing with sequences. 2013-12-30 00:11:36 -08:00
Ben Vanik
08cff81f6a HIR->LIR flow. 2013-12-29 23:51:51 -08:00
Ben Vanik
63f11732a5 Wiring up the LIR flow. 2013-12-29 22:05:41 -08:00
Ben Vanik
dec0e35957 More X64 backend skeleton work. 2013-12-29 19:54:17 -08:00
Ben Vanik
3d01efffac LIR skeleton, renaming some types to prevent conflict. 2013-12-29 14:28:46 -08:00
Ben Vanik
fdb6a5cfa3 Initial Alloy implementation.
This is a regression in functionality and performance, but a much better
foundation for the future of the project (I think). It can run basic
apps under an SSA interpreter but doesn't support some of the features
required to do real 360 apps yet.
2013-12-06 22:57:16 -08:00