@ -4,6 +4,7 @@
#define _RISCV_DISASM_H
#include "decode.h"
#include "processor.h"
#include <string>
#include <sstream>
#include <algorithm>
@ -80,7 +81,7 @@ class disasm_insn_t
class disassembler_t
{
public:
disassembler_t(int xlen);
disassembler_t(isa_parser_t* isa);
~disassembler_t();
std::string disassemble(insn_t insn) const;
@ -39,7 +39,7 @@ processor_t::processor_t(const char* isa, const char* priv, const char* varch,
register_base_instructions();
mmu = new mmu_t(sim, this);
disassembler = new disassembler_t(max_xlen);
disassembler = new disassembler_t(this);
for (auto e : custom_extensions)
register_extension(e.second);
@ -28,7 +28,7 @@ int main(int argc, char** argv)
parser.parse(argv);
isa_parser_t isa_parser(isa);
disassembler_t* disassembler = new disassembler_t(isa_parser.get_max_xlen());
disassembler_t* disassembler = new disassembler_t(&isa_parser);
if (extension) {
for (auto disasm_insn : extension()->get_disasms()) {
disassembler->add_insn(disasm_insn);