rubyx/lib/vm
2014-05-06 12:42:43 +03:00
..
block.rb getting a _start and _exit, just missing the actual code 2014-05-06 00:12:04 +03:00
code.rb getting a _start and _exit, just missing the actual code 2014-05-06 00:12:04 +03:00
context.rb cleanup 2014-05-05 15:59:29 +03:00
function_call.rb gets rid of conversion approach, ast compiles 2014-05-05 10:13:49 +03:00
function.rb work on function entry and exit. fix stack instructions 2014-05-06 12:42:43 +03:00
instruction.rb cleanup 2014-05-05 15:59:29 +03:00
kernel.rb work on function entry and exit. fix stack instructions 2014-05-06 12:42:43 +03:00
machine.rb so close i can smell it, checkpoint 2014-05-03 22:18:04 +03:00
program.rb work on function entry and exit. fix stack instructions 2014-05-06 12:42:43 +03:00
README.markdown created own directory for parser 2014-04-27 15:38:07 +03:00
string_literal.rb getting a _start and _exit, just missing the actual code 2014-05-06 00:12:04 +03:00
values.rb getting a _start and _exit, just missing the actual code 2014-05-06 00:12:04 +03:00

Virtual Machine

This is the logic that uses the generated ast to produce code, using the asm layer.

Apart from shuffeling things around from one layer to the other, it keeps track about registers and provides the stack glue. All the stuff a compiler would usually do.

Also all syscalls are abstracted as functions.