|
MXVM 1.8.1
Virtual Machine, Compiler, and Pascal Frontend
|
Intermediate code representation, execution engine, and native x64 code generation (SysV + Win64). More...
#include "mxvm/instruct.hpp"#include "mxvm/parser.hpp"#include "scanner/exception.hpp"#include <functional>#include <unordered_map>#include <variant>#include <vector>

Go to the source code of this file.
Classes | |
| class | mxvm::Stack |
| Runtime operand stack for the MXVM interpreter. More... | |
| class | mxvm::RuntimeFunction |
| Wraps a dynamically loaded native function from a shared library module. More... | |
| class | mxvm::Base |
| Base class for instruction storage, variables, labels, and external function registrations. More... | |
| class | mxvm::Program |
| Complete MXVM program: instruction interpreter and native x64 code generator. More... | |
Namespaces | |
| namespace | mxvm |
Typedefs | |
| using | mxvm::StackValue = std::variant<int64_t, void *, double, std::string> |
| Stack element: integer, pointer, double, or string. | |
| using | mxvm::runtime_call = std::function<void(Program *program, std::vector<Operand> &operands)> |
| Callback type for runtime-registered native functions. | |
Functions | |
| void | mxvm::except_assert (std::string reason, bool value) |
| Assert a condition, throwing an Exception with the given reason on failure. | |
| bool | mxvm::isFunctionReturningOwnedPtr (const std::string &funcName) |
| Check whether a named function returns an owned (heap-allocated) pointer. | |
Intermediate code representation, execution engine, and native x64 code generation (SysV + Win64).
Definition in file icode.hpp.