|
MXVM 1.8.1
Virtual Machine, Compiler, and Pascal Frontend
|
This is the complete list of members for mxvm::Program, including all inherited members.
| add_allocated(const std::string &name, Variable &v) | mxvm::Base | |
| add_extern(const std::string &mod, const std::string &name, bool module) | mxvm::Base | |
| add_filename(const std::string &fname) | mxvm::Base | |
| add_global(const std::string &objname, const std::string &name, const Variable &v) | mxvm::Base | |
| add_instruction(const Instruction &i) | mxvm::Base | |
| add_label(const std::string &name, uint64_t address, bool f) | mxvm::Base | |
| add_object(const std::string &name, Program *prog) | mxvm::Base | |
| add_runtime_extern(const std::string &mod_name, const std::string &mod, const std::string &func_name, const std::string &name) | mxvm::Base | |
| add_standard() | mxvm::Program | |
| add_variable(const std::string &name, const Variable &v) | mxvm::Base | |
| addVariables(Variable &dest, Variable &src1, Variable &src2) | mxvm::Program | |
| allocated | mxvm::Base | static |
| args | mxvm::Program | private |
| assembly_code | mxvm::Base | |
| Base()=default | mxvm::Base | |
| Base(Base &&other) noexcept | mxvm::Base | |
| base | mxvm::Base | static |
| carry_flag | mxvm::Program | private |
| CMP_FLOAT enum value | mxvm::Program | private |
| CMP_INTEGER enum value | mxvm::Program | private |
| CMP_NONE enum value | mxvm::Program | private |
| createTempVariable(VarType type, const std::string &value) | mxvm::Program | |
| divVariables(Variable &dest, Variable &src1, Variable &src2) | mxvm::Program | |
| escapeNewLines(const std::string &text) | mxvm::Program | static |
| exec() | mxvm::Program | |
| exec_add(const Instruction &instr) | mxvm::Program | |
| exec_alloc(const Instruction &instr) | mxvm::Program | |
| exec_and(const Instruction &instr) | mxvm::Program | |
| exec_call(const Instruction &instr) | mxvm::Program | |
| exec_cmp(const Instruction &instr) | mxvm::Program | |
| exec_div(const Instruction &instr) | mxvm::Program | |
| exec_done(const Instruction &instr) | mxvm::Program | |
| exec_exit(const Instruction &instr) | mxvm::Program | |
| exec_fcmp(const Instruction &instr) | mxvm::Program | |
| exec_free(const Instruction &instr) | mxvm::Program | |
| exec_getline(const Instruction &instr) | mxvm::Program | |
| exec_invoke(const Instruction &instr) | mxvm::Program | |
| exec_ja(const Instruction &instr) | mxvm::Program | |
| exec_jae(const Instruction &instr) | mxvm::Program | |
| exec_jb(const Instruction &instr) | mxvm::Program | |
| exec_jbe(const Instruction &instr) | mxvm::Program | |
| exec_jc(const Instruction &instr) | mxvm::Program | |
| exec_je(const Instruction &instr) | mxvm::Program | |
| exec_jg(const Instruction &instr) | mxvm::Program | |
| exec_jge(const Instruction &instr) | mxvm::Program | |
| exec_jl(const Instruction &instr) | mxvm::Program | |
| exec_jle(const Instruction &instr) | mxvm::Program | |
| exec_jmp(const Instruction &instr) | mxvm::Program | |
| exec_jnc(const Instruction &instr) | mxvm::Program | |
| exec_jne(const Instruction &instr) | mxvm::Program | |
| exec_jno(const Instruction &instr) | mxvm::Program | |
| exec_jnp(const Instruction &instr) | mxvm::Program | |
| exec_jns(const Instruction &instr) | mxvm::Program | |
| exec_jnz(const Instruction &instr) | mxvm::Program | |
| exec_jo(const Instruction &instr) | mxvm::Program | |
| exec_jp(const Instruction &instr) | mxvm::Program | |
| exec_js(const Instruction &instr) | mxvm::Program | |
| exec_jz(const Instruction &instr) | mxvm::Program | |
| exec_lea(const Instruction &instr) | mxvm::Program | |
| exec_load(const Instruction &instr) | mxvm::Program | |
| exec_mod(const Instruction &instr) | mxvm::Program | |
| exec_mov(const Instruction &instr) | mxvm::Program | |
| exec_mul(const Instruction &instr) | mxvm::Program | |
| exec_neg(const Instruction &instr) | mxvm::Program | |
| exec_not(const Instruction &instr) | mxvm::Program | |
| exec_or(const Instruction &instr) | mxvm::Program | |
| exec_pop(const Instruction &instr) | mxvm::Program | |
| exec_print(const Instruction &instr) | mxvm::Program | |
| exec_push(const Instruction &instr) | mxvm::Program | |
| exec_realloc(const Instruction &instr) | mxvm::Program | |
| exec_ret(const Instruction &instr) | mxvm::Program | |
| exec_return(const Instruction &instr) | mxvm::Program | |
| exec_stack_load(const Instruction &instr) | mxvm::Program | |
| exec_stack_store(const Instruction &instr) | mxvm::Program | |
| exec_stack_sub(const Instruction &instr) | mxvm::Program | |
| exec_store(const Instruction &instr) | mxvm::Program | |
| exec_string_print(const Instruction &instr) | mxvm::Program | |
| exec_sub(const Instruction &instr) | mxvm::Program | |
| exec_to_float(const Instruction &instr) | mxvm::Program | |
| exec_to_int(const Instruction &instr) | mxvm::Program | |
| exec_xor(const Instruction &instr) | mxvm::Program | |
| exitCode | mxvm::Program | private |
| external | mxvm::Base | |
| external_functions | mxvm::Base | |
| filename | mxvm::Program | |
| filenames | mxvm::Base | static |
| flatten(Program *program) | mxvm::Program | |
| flatten_external(Program *root, const std::string &e, RuntimeFunction &r) | mxvm::Program | |
| flatten_inc(Program *root, Instruction &i) | mxvm::Program | |
| flatten_label(Program *root, int64_t offset, const std::string &label, bool func) | mxvm::Program | |
| gen_add(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_alloc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_arth(std::ostream &out, std::string arth, const Instruction &i) | mxvm::Program | |
| gen_bitop(std::ostream &out, const std::string &opc, const Instruction &i) | mxvm::Program | |
| gen_call(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_cmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_div(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_done(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_exit(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_fcmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_free(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_getline(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_invoke(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jae(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jbe(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jnc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jno(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jnp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jns(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jo(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_jp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_js(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_lea(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_load(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_mod(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_mov(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_mul(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_neg(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_not(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_optimize(const std::string &code, const Platform &platform) | mxvm::Program | |
| gen_pop(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_print(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_push(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_realloc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_ret(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_return(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_stack_load(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_stack_store(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_stack_sub(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_store(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_sub(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_to_float(std::ostream &out, const Instruction &i) | mxvm::Program | |
| gen_to_int(std::ostream &out, const Instruction &i) | mxvm::Program | |
| generateCode(const Platform &platform, bool obj, std::ostream &out) | mxvm::Program | |
| generateFunctionCall(std::ostream &out, const std::string &name, std::vector< Operand > &op) | mxvm::Program | |
| generateInstruction(std::ostream &out, const Instruction &i) | mxvm::Program | |
| generateInvokeCall(std::ostream &out, std::vector< Operand > &op) | mxvm::Program | |
| generateLoadVar(std::ostream &out, int reg, const Operand &op) | mxvm::Program | |
| generateLoadVar(std::ostream &out, VarType type, std::string reg, const Operand &op) | mxvm::Program | |
| getExitCode() const | mxvm::Program | inline |
| getMangledName(const std::string &var) | mxvm::Program | |
| getMangledName(const Operand &op) | mxvm::Program | |
| getObjectByName(const std::string &name) | mxvm::Program | |
| getPlatformSymbolName(const std::string &name) | mxvm::Program | |
| getRegisterByIndex(int index, VarType type) | mxvm::Program | |
| getVariable(const std::string &name) | mxvm::Program | |
| greater_flag | mxvm::Program | private |
| inc | mxvm::Base | |
| isConstant(const std::string &value) | mxvm::Program | |
| isFunctionValid(const std::string &label) | mxvm::Program | |
| isVariable(const std::string &name) | mxvm::Program | |
| labels | mxvm::Base | |
| last_call_ret_type | mxvm::Program | |
| last_call_returns_owned | mxvm::Program | |
| last_call_returns_owned_ptr | mxvm::Program | private |
| last_cmp_type | mxvm::Program | private |
| LastCmpType enum name | mxvm::Program | private |
| less_flag | mxvm::Program | private |
| main_function | mxvm::Program | private |
| memoryDump(std::ostream &out) | mxvm::Program | |
| mulVariables(Variable &dest, Variable &src1, Variable &src2) | mxvm::Program | |
| name | mxvm::Program | |
| object | mxvm::Program | |
| object_external | mxvm::Program | private |
| object_map | mxvm::Base | static |
| objects | mxvm::Program | |
| operator=(Program &&other) noexcept | mxvm::Program | inline |
| mxvm::Base::operator=(Base &&other) noexcept | mxvm::Base | |
| optimize_core(const std::string &code) | mxvm::Program | |
| optimize_darwin(const std::string &code) | mxvm::Program | |
| parent | mxvm::Program | |
| Parser class | mxvm::Program | friend |
| pc | mxvm::Program | private |
| platform | mxvm::Program | |
| post(std::ostream &out) | mxvm::Program | |
| print(std::ostream &out) | mxvm::Program | |
| printFormatted(const std::string &format, const std::vector< Variable * > &args, bool output=true) | mxvm::Program | |
| Program() | mxvm::Program | |
| Program(Program &&other) noexcept | mxvm::Program | inline |
| result | mxvm::Program | |
| root_name | mxvm::Base | static |
| running | mxvm::Program | private |
| setArgs(const std::vector< std::string > &argv) | mxvm::Program | |
| setMainBase(Base *b) | mxvm::Base | inline |
| setObject(bool obj) | mxvm::Program | |
| setVariableFromConstant(Variable &var, const std::string &value) | mxvm::Program | |
| setVariableFromString(Variable &var, const std::string &value) | mxvm::Program | |
| stack | mxvm::Program | |
| stop() | mxvm::Program | |
| subVariables(Variable &dest, Variable &src1, Variable &src2) | mxvm::Program | |
| sysv_analyzeRegAlloc(bool uses_std_module) | mxvm::Program | |
| sysv_emitFlushRegs(std::ostream &out) | mxvm::Program | |
| sysv_emitLoadVar(std::ostream &out, const std::string &dstReg, const Operand &src) | mxvm::Program | |
| sysv_emitReloadRegs(std::ostream &out) | mxvm::Program | |
| sysv_emitRestoreRegs(std::ostream &out) | mxvm::Program | |
| sysv_emitSaveRegs(std::ostream &out) | mxvm::Program | |
| sysv_emitStoreVar(std::ostream &out, const std::string &srcReg, const Operand &dest) | mxvm::Program | |
| sysv_emitStoreVarImm(std::ostream &out, const std::string &imm, const Operand &dest) | mxvm::Program | |
| sysv_reg_save_order | mxvm::Program | |
| sysv_reg_vars | mxvm::Program | |
| validateNames(Validator &v) | mxvm::Program | |
| variableFromOperand(const Operand &op) | mxvm::Program | |
| vars | mxvm::Base | |
| x64_analyzeRegAlloc(bool uses_std_module) | mxvm::Program | |
| x64_direct_stack_adjust(std::ostream &out, int64_t bytes) | mxvm::Program | |
| x64_emit_iob_func(std::ostream &out, int index, const std::string &dstReg) | mxvm::Program | |
| x64_emitFlushRegs(std::ostream &out) | mxvm::Program | |
| x64_emitLoadVar(std::ostream &out, const std::string &dstReg, const Operand &src) | mxvm::Program | |
| x64_emitReloadRegs(std::ostream &out) | mxvm::Program | |
| x64_emitRestoreRegs(std::ostream &out) | mxvm::Program | |
| x64_emitSaveRegs(std::ostream &out) | mxvm::Program | |
| x64_emitStoreVar(std::ostream &out, const std::string &srcReg, const Operand &dest) | mxvm::Program | |
| x64_emitStoreVarImm(std::ostream &out, const std::string &imm, const Operand &dest) | mxvm::Program | |
| x64_gen_alloc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_arth(std::ostream &out, std::string arth, const Instruction &i) | mxvm::Program | |
| x64_gen_bitop(std::ostream &out, const std::string &opc, const Instruction &i) | mxvm::Program | |
| x64_gen_call(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_cmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_div(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_done(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_exit(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_fcmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_free(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_getline(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_invoke(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jae(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jbe(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jmp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jnc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jno(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jnp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jns(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jo(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_jp(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_js(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_lea(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_load(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_mod(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_mov(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_neg(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_not(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_pop(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_print(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_push(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_realloc(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_ret(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_return(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_stack_load(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_stack_store(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_stack_sub(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_store(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_to_float(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_gen_to_int(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_generateCode(const Platform &platform, bool obj, std::ostream &out) | mxvm::Program | |
| x64_generateFunctionCall(std::ostream &out, const std::string &name, std::vector< Operand > &args) | mxvm::Program | |
| x64_generateInstruction(std::ostream &out, const Instruction &i) | mxvm::Program | |
| x64_generateInvokeCall(std::ostream &out, std::vector< Operand > &op) | mxvm::Program | |
| x64_generateLoadVar(std::ostream &out, int r, const Operand &op) | mxvm::Program | |
| x64_generateLoadVar(std::ostream &out, VarType type, std::string reg, const Operand &op) | mxvm::Program | |
| x64_getRegisterByIndex(int index, VarType type) | mxvm::Program | |
| x64_reg_save_order | mxvm::Program | |
| x64_reg_vars | mxvm::Program | |
| x64_release_call_area(std::ostream &out, size_t frame) | mxvm::Program | |
| x64_reserve_call_area(std::ostream &out, size_t spill_bytes) | mxvm::Program | |
| xmm_offset | mxvm::Program | private |
| zero_flag | mxvm::Program | private |
| ~Base()=default | mxvm::Base | |
| ~Program() | mxvm::Program |