introduces new decoder to interp backend

This commit is contained in:
2024-07-24 12:28:35 +02:00
parent b1306c3a47
commit c6b99cd155
2 changed files with 26 additions and 70 deletions

View File

@ -46,6 +46,7 @@
#include <sstream>
#include <vm/instruction_decoder.h>
#ifndef FMT_HEADER_ONLY
#define FMT_HEADER_ONLY
#endif
@ -153,6 +154,7 @@ private:
uint32_t mask;
typename arch::traits<ARCH>::opcode_e op;
};
const std::array<instruction_descriptor, 87> instr_descr = {{
/* entries are: size, valid value, valid mask, function ptr */
{32, 0b00000000000000000000000000110111, 0b00000000000000000000000001111111, arch::traits<ARCH>::opcode_e::LUI},
@ -243,6 +245,7 @@ private:
{16, 0b1100000000000010, 0b1110000000000011, arch::traits<ARCH>::opcode_e::C__SWSP},
{16, 0b0000000000000000, 0b1111111111111111, arch::traits<ARCH>::opcode_e::DII},
}};
//needs to be declared after instr_descr
decoder instr_decoder;