mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-10-30 15:39:02 -05:00 
			
		
		
		
	arm_dynarmic: Support BKPT instruction
This commit is contained in:
		| @@ -12,6 +12,7 @@ | ||||
| #include "core/core.h" | ||||
| #include "core/core_cpu.h" | ||||
| #include "core/core_timing.h" | ||||
| #include "core/gdbstub/gdbstub.h" | ||||
| #include "core/hle/kernel/process.h" | ||||
| #include "core/hle/kernel/svc.h" | ||||
| #include "core/memory.h" | ||||
| @@ -79,6 +80,16 @@ public: | ||||
|         case Dynarmic::A64::Exception::SendEventLocal: | ||||
|         case Dynarmic::A64::Exception::Yield: | ||||
|             return; | ||||
|         case Dynarmic::A64::Exception::Breakpoint: | ||||
|             if (GDBStub::IsServerEnabled()) { | ||||
|                 parent.SetPC(pc); | ||||
|                 Kernel::Thread* thread = Kernel::GetCurrentThread(); | ||||
|                 parent.SaveContext(thread->context); | ||||
|                 GDBStub::Break(); | ||||
|                 GDBStub::SendTrap(thread, 5); | ||||
|                 return; | ||||
|             } | ||||
|             [[fallthrough]]; | ||||
|         default: | ||||
|             ASSERT_MSG(false, "ExceptionRaised(exception = {}, pc = {:X})", | ||||
|                        static_cast<std::size_t>(exception), pc); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MerryMage
					MerryMage