// See LICENSE for license details. #ifndef _RISCV_DISASM_H #define _RISCV_DISASM_H #include "decode.h" #include #include struct disasm_insn_t; class disassembler { public: disassembler(); ~disassembler(); std::string disassemble(insn_t insn); private: static const int HASH_SIZE = 256; std::vector chain[HASH_SIZE+1]; void add_insn(disasm_insn_t* insn); const disasm_insn_t* lookup(insn_t insn); }; #endif