From f49d184a90e766d4d4f409160acb6b6c645156cf Mon Sep 17 00:00:00 2001 From: Sparrrgh Date: Mon, 16 Jan 2023 16:50:36 +0100 Subject: [PATCH] Add handler for LibAFL breakpoint (#17) --- linux-user/mips/cpu_loop.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/linux-user/mips/cpu_loop.c b/linux-user/mips/cpu_loop.c index d5c1c7941d..4305f5cf21 100644 --- a/linux-user/mips/cpu_loop.c +++ b/linux-user/mips/cpu_loop.c @@ -71,12 +71,29 @@ void cpu_loop(CPUMIPSState *env) # endif for(;;) { + +//// --- Begin LibAFL code --- + + if (libafl_qemu_break_asap) return; + +//// --- End LibAFL code --- + cpu_exec_start(cs); trapnr = cpu_exec(cs); cpu_exec_end(cs); process_queued_cpu_work(cs); switch(trapnr) { + +//// --- Begin LibAFL code --- + +#define EXCP_LIBAFL_BP 0xf4775747 + + case EXCP_LIBAFL_BP: + return; + +//// --- End LibAFL code --- + case EXCP_SYSCALL: env->active_tc.PC += 4; # ifdef TARGET_ABI_MIPSO32