This repository has been archived on 2025-11-10 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
5d800d43668360b5752277108247fdd5c5069301
As it has no dependencies on vm specifically, and it's more necessary for any vendors who wish to target the virtual machine, it makes more sense for inst to be a lib module rather than a vm module.
Oreo's Virtual Machine (OVM)
A stack based virtual machine in C11. Deals primarily in bytes, doesn't make assertions about typing and is very simple to target.
Instructions to target
You need to link with the object files for
base.c, darr.c and
inst.c to be able to properly target the OVM. The
basic idea is to create instructions via inst_t then using the
inst(s)_write_* API to generate bytecode (and write to a file).
Then to execute the program, the virtual machine interpreter ovm.out
is used.
Description
Languages
C
70.2%
C++
26.5%
Makefile
3.3%