vc5/src/builder.cpp
2026-01-04 23:28:32 +01:00

186 lines
2.7 KiB
C++

#include "builder.hpp"
#include "vm.hpp"
#include <utility>
using namespace vc5;
void Builder::nop()
{
auto ins = std::to_underlying(Op::Nop);
push(ins);
}
void Builder::hlt()
{
auto ins = std::to_underlying(Op::Nop);
push(ins);
}
void Builder::jmp_reg(Reg op1)
{
}
void Builder::jmp_imm(uint16_t op1)
{
}
void Builder::jnz_reg(Reg op1, Reg op2)
{
}
void Builder::jnz_imm(Reg op1, uint16_t op2)
{
}
void Builder::mov_word_load_reg(Reg dst, Reg src)
{
}
void Builder::mov_word_load_imm(Reg dst, uint16_t imm)
{
}
void Builder::mov_word_load_mem_reg(Reg dst, Reg addr, uint16_t offset)
{
}
void Builder::mov_word_load_mem_imm(Reg dst, uint16_t addr)
{
}
void Builder::mov_word_store_reg_reg(Reg dst, uint16_t offset, Reg op2)
{
}
void Builder::mov_word_store_reg_imm(Reg dst, uint16_t offset, uint16_t op2)
{
}
void Builder::mov_word_store_imm_reg(uint16_t dst, Reg op2)
{
}
void Builder::mov_word_store_imm_imm(uint16_t dst, uint16_t op2)
{
}
void Builder::mov_byte_load_reg(Reg dst, Reg src)
{
}
void Builder::mov_byte_load_imm(Reg dst, uint8_t imm)
{
}
void Builder::mov_byte_load_mem_reg(Reg dst, Reg addr, uint16_t offset)
{
}
void Builder::mov_byte_load_mem_imm(Reg dst, uint16_t addr)
{
}
void Builder::mov_byte_store_reg_reg(Reg dst, uint16_t offset, Reg op2)
{
}
void Builder::mov_byte_store_reg_imm(Reg dst, uint16_t offset, uint8_t op2)
{
}
void Builder::mov_byte_store_imm_reg(uint16_t dst, Reg op2)
{
}
void Builder::mov_byte_store_imm_imm(uint16_t dst, uint8_t op2)
{
}
void Builder::cmp_reg(Reg op1, Reg op2)
{
}
void Builder::cmp_imm(Reg op1, Reg op2)
{
}
void Builder::or_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::and_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::xor_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::shl_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::rshl_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::shr_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::rshr_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::add_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::sub_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::rsub_reg(Reg dst, Reg op1, Reg op2)
{
}
void Builder::or_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::and_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::xor_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::shl_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::rshl_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::shr_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::rshr_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::add_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::sub_imm(Reg dst, Reg op1, uint16_t op2)
{
}
void Builder::rsub_imm(Reg dst, Reg op1, uint16_t op2)
{
}