rubyx/lib/vm
2014-05-14 11:33:23 +03:00
..
block.rb clean up intruction instantiation and fix tests 2014-05-14 10:47:30 +03:00
c_machine.rb clean up intruction instantiation and fix tests 2014-05-14 10:47:30 +03:00
call_site.rb add more functionality to get while to work (not there yet) 2014-05-14 11:33:23 +03:00
code.rb crystal says Hello. 2014-05-06 21:36:28 +03:00
constants.rb checkpointing on the mad road to register allocation 2014-05-13 18:21:24 +03:00
context.rb checkpointing on the mad road to register allocation 2014-05-13 18:21:24 +03:00
function.rb coming together, more and more each day 2014-05-13 21:06:12 +03:00
instruction.rb clean up intruction instantiation and fix tests 2014-05-14 10:47:30 +03:00
program.rb rename function_call to call_site in all levels to avoid confusion 2014-05-13 21:15:02 +03:00
README.markdown created own directory for parser 2014-04-27 15:38:07 +03:00
values.rb add more functionality to get while to work (not there yet) 2014-05-14 11:33:23 +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.