|
MXVM 1.8.1
Virtual Machine, Compiler, and Pascal Frontend
|
Instruction set enum, operand/instruction structs, variable types, and Variable/Variable_Value definitions. More...
#include <cstdint>#include <iostream>#include <string>#include <vector>

Go to the source code of this file.
Classes | |
| struct | mxvm::Operand |
| A single instruction operand (constant value or variable reference). More... | |
| struct | mxvm::Instruction |
| A complete MXVM instruction with opcode, operands, and optional label. More... | |
| struct | mxvm::Variable_Value |
| Runtime value storage for a variable. More... | |
| struct | mxvm::Variable |
| A named variable with type, value, and optional object association. More... | |
Namespaces | |
| namespace | mxvm |
Functions | |
| std::ostream & | operator<< (std::ostream &out, const enum Inc &i) |
| Stream insertion operator for Inc opcodes. | |
| std::ostream & | operator<< (std::ostream &out, const mxvm::Instruction &inc) |
| Stream insertion operator for Instruction. | |
| std::ostream & | operator<< (std::ostream &out, const mxvm::VarType &type) |
| Stream insertion operator for VarType. | |
| std::ostream & | operator<< (std::ostream &out, const mxvm::Keywords &key) |
| Stream insertion operator for Keywords. | |
Variables | |
| std::vector< std::string > | IncType |
| String representations of Inc opcodes, indexed by enum value. | |
| std::vector< std::string > | mxvm::keywords {"program", "object", "module", "data", "code", "section"} |
| String representations of Keywords enum values. | |
Instruction set enum, operand/instruction structs, variable types, and Variable/Variable_Value definitions.
Definition in file instruct.hpp.
| enum Inc |
MXVM instruction set opcodes.
Enumerates all supported virtual machine instructions including data movement, arithmetic, logic, control flow, stack operations, memory management, I/O, and type conversion.
Definition at line 21 of file instruct.hpp.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const enum Inc & | i ) |
Stream insertion operator for Inc opcodes.
| out | Output stream |
| i | Opcode to print |
Definition at line 23 of file instruct.cpp.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const mxvm::Instruction & | inc ) |
Stream insertion operator for Instruction.
| out | Output stream |
| inc | Instruction to format and print |
Definition at line 32 of file instruct.cpp.
References mxvm::Instruction::instruction, mxvm::Operand::op, mxvm::Instruction::op1, mxvm::Instruction::op2, mxvm::Instruction::op3, and mxvm::Instruction::vop.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const mxvm::Keywords & | key ) |
Stream insertion operator for Keywords.
| out | Output stream |
| key | Keyword to print |
Definition at line 14 of file instruct.cpp.
References mxvm::keywords.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const mxvm::VarType & | type ) |
Stream insertion operator for VarType.
| out | Output stream |
| type | Variable type to print |
Definition at line 54 of file instruct.cpp.
References mxvm::VAR_BYTE, mxvm::VAR_EXTERN, mxvm::VAR_FLOAT, mxvm::VAR_INTEGER, mxvm::VAR_POINTER, and mxvm::VAR_STRING.
|
inline |
String representations of Inc opcodes, indexed by enum value.
Definition at line 82 of file instruct.hpp.
Referenced by mxvm::buildInstructionSet(), operator<<(), mxvm::Program::print(), and mxvm::Validator::validate().