diff --git a/include/dynarmic/A32/a32.h b/include/dynarmic/A32/a32.h index 11eccde6..aeaa8e03 100644 --- a/include/dynarmic/A32/a32.h +++ b/include/dynarmic/A32/a32.h @@ -12,12 +12,6 @@ #include -namespace Dynarmic { -namespace IR { -class LocationDescriptor; -} -} - namespace Dynarmic { namespace A32 { @@ -92,10 +86,10 @@ public: } /** - * @param descriptor Basic block descriptor. - * @return A string containing disassembly of the host machine code produced for the basic block. + * Debugging: Disassemble all of compiled code. + * @return A string containing disassembly of all host machine code produced. */ - std::string Disassemble(const IR::LocationDescriptor& descriptor); + std::string Disassemble() const; private: bool is_executing = false; diff --git a/src/backend/x64/a32_interface.cpp b/src/backend/x64/a32_interface.cpp index b8b3f671..02f61887 100644 --- a/src/backend/x64/a32_interface.cpp +++ b/src/backend/x64/a32_interface.cpp @@ -310,8 +310,8 @@ void Jit::LoadContext(const Context& ctx) { impl->jit_state.TransferJitState(ctx.impl->jit_state, reset_rsb); } -std::string Jit::Disassemble(const IR::LocationDescriptor& descriptor) { - return impl->Disassemble(descriptor); +std::string Jit::Disassemble() const { + return Common::DisassembleX64(impl->block_of_code.GetCodeBegin(), impl->block_of_code.getCurr()); } } // namespace Dynarmic::A32 diff --git a/tests/A32/fuzz_arm.cpp b/tests/A32/fuzz_arm.cpp index c8990618..6731f119 100644 --- a/tests/A32/fuzz_arm.cpp +++ b/tests/A32/fuzz_arm.cpp @@ -240,7 +240,7 @@ static void RunTestInstance(Dynarmic::A32::Jit& jit, A32Unicorn& uni fmt::print("\n"); fmt::print("x86_64:\n"); - fmt::print("{}\n", jit.Disassemble(A32::LocationDescriptor{initial_pc, A32::PSR{cpsr}, A32::FPSCR{fpscr}})); + fmt::print("{}\n", jit.Disassemble()); fmt::print("Interrupts:\n"); for (const auto& i : uni_env.interrupts) { diff --git a/tests/A32/fuzz_thumb.cpp b/tests/A32/fuzz_thumb.cpp index 082c168d..da354f06 100644 --- a/tests/A32/fuzz_thumb.cpp +++ b/tests/A32/fuzz_thumb.cpp @@ -166,7 +166,7 @@ static void RunInstance(size_t run_number, ThumbTestEnv& test_env, A32Unicorn