Nugget
Loading...
Searching...
No Matches
Namespaces | Typedefs | Functions
encoder.hh File Reference
#include <stdint.h>
#include "mips.hh"
Include dependency graph for encoder.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Mips
 
namespace  Mips::Encoder
 

Typedefs

using Mips::Encoder::Reg = Mips::Reg
 

Functions

constexpr uint32_t Mips::Encoder::iclass (uint32_t v)
 
constexpr uint32_t Mips::Encoder::dstVal (Reg r)
 
constexpr uint32_t Mips::Encoder::tgtVal (Reg r)
 
constexpr uint32_t Mips::Encoder::srcVal (Reg r)
 
constexpr uint32_t Mips::Encoder::add (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::add (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::addu (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::addu (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::addi (Reg tgt, Reg src, int16_t value)
 
constexpr uint32_t Mips::Encoder::addi (Reg tgt, int16_t value)
 
constexpr uint32_t Mips::Encoder::addiu (Reg tgt, Reg src, int16_t value)
 
constexpr uint32_t Mips::Encoder::addiu (Reg tgt, int16_t value)
 
constexpr uint32_t Mips::Encoder::andd (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::andd (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::andi (Reg tgt, Reg src, uint16_t value)
 
constexpr uint32_t Mips::Encoder::andi (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::lui (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::nor (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::nor (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::orr (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::orr (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::ori (Reg tgt, Reg src, uint16_t value)
 
constexpr uint32_t Mips::Encoder::ori (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::slt (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::slt (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::sltu (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::sltu (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::slti (Reg tgt, Reg src, int16_t value)
 
constexpr uint32_t Mips::Encoder::slti (Reg tgt, int16_t value)
 
constexpr uint32_t Mips::Encoder::sltiu (Reg tgt, Reg src, uint16_t value)
 
constexpr uint32_t Mips::Encoder::sltiu (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::sub (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::sub (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::subu (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::subu (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::xorr (Reg dst, Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::xorr (Reg dst, Reg tgt)
 
constexpr uint32_t Mips::Encoder::xori (Reg tgt, Reg src, uint16_t value)
 
constexpr uint32_t Mips::Encoder::xori (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::sll (Reg dst, Reg tgt, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::sll (Reg dst, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::sllv (Reg dst, Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::sllv (Reg dst, Reg src)
 
constexpr uint32_t Mips::Encoder::sra (Reg dst, Reg tgt, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::sra (Reg dst, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::srav (Reg dst, Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::srav (Reg dst, Reg src)
 
constexpr uint32_t Mips::Encoder::srl (Reg dst, Reg tgt, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::srl (Reg dst, uint16_t sa)
 
constexpr uint32_t Mips::Encoder::srlv (Reg dst, Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::srlv (Reg dst, Reg src)
 
constexpr uint32_t Mips::Encoder::div (Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::divu (Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::mfhi (Reg dst)
 
constexpr uint32_t Mips::Encoder::mflo (Reg dst)
 
constexpr uint32_t Mips::Encoder::mthi (Reg dst)
 
constexpr uint32_t Mips::Encoder::mtlo (Reg dst)
 
constexpr uint32_t Mips::Encoder::mult (Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::multu (Reg src, Reg tgt)
 
constexpr uint32_t Mips::Encoder::beq (Reg src, Reg tgt, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bgez (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bgezal (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bgtz (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::blez (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bltz (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bltzal (Reg src, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bne (Reg src, Reg tgt, int16_t offset)
 
constexpr uint32_t Mips::Encoder::brk (uint32_t code)
 
constexpr uint32_t Mips::Encoder::j (uint32_t addr)
 
constexpr uint32_t Mips::Encoder::jal (uint32_t addr)
 
constexpr uint32_t Mips::Encoder::jalr (Reg src, Reg dst=Reg::RA)
 
constexpr uint32_t Mips::Encoder::jr (Reg src)
 
constexpr uint32_t Mips::Encoder::syscall ()
 
constexpr uint32_t Mips::Encoder::lb (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lbu (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lh (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lhu (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lw (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lwl (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::lwr (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::sb (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::sh (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::sw (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::swl (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::swr (Reg tgt, int16_t offset, Reg src)
 
constexpr uint32_t Mips::Encoder::mfc0 (Reg tgt, uint8_t dst)
 
constexpr uint32_t Mips::Encoder::mtc0 (Reg tgt, uint8_t dst)
 
constexpr uint32_t Mips::Encoder::rfe ()
 
constexpr uint32_t Mips::Encoder::nop ()
 
constexpr uint32_t Mips::Encoder::li (Reg tgt, int16_t value)
 
constexpr uint32_t Mips::Encoder::liu (Reg tgt, uint16_t value)
 
constexpr uint32_t Mips::Encoder::move (Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::nott (Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::nott (Reg tgt)
 
constexpr uint32_t Mips::Encoder::neg (Reg tgt, Reg src)
 
constexpr uint32_t Mips::Encoder::neg (Reg tgt)
 
constexpr uint32_t Mips::Encoder::b (int16_t offset)
 
constexpr uint32_t Mips::Encoder::beqz (Reg tgt, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bnez (Reg tgt, int16_t offset)
 
constexpr uint32_t Mips::Encoder::bal (int16_t offset)