diff --git a/ujit_asm.c b/ujit_asm.c index 7846179dcc..c99ad37d66 100644 --- a/ujit_asm.c +++ b/ujit_asm.c @@ -909,6 +909,13 @@ void cqo(codeblock_t* cb) cb_write_bytes(cb, 2, 0x48, 0x99); } +/// Interrupt 3 - trap to debugger +void int3(codeblock_t* cb) +{ + //cb.writeASM("INT 3"); + cb_write_byte(cb, 0xCC); +} + /* // div - Unsigned integer division alias div = writeRMUnary!( diff --git a/ujit_asm.h b/ujit_asm.h index aeb6023e70..73a7d8153e 100644 --- a/ujit_asm.h +++ b/ujit_asm.h @@ -285,6 +285,7 @@ void cmovz(codeblock_t* cb, x86opnd_t dst, x86opnd_t src); void cmp(codeblock_t* cb, x86opnd_t opnd0, x86opnd_t opnd1); void cdq(codeblock_t* cb); void cqo(codeblock_t* cb); +void int3(codeblock_t* cb); void ja(codeblock_t* cb, size_t label_idx); void jae(codeblock_t* cb, size_t label_idx); void jb(codeblock_t* cb, size_t label_idx);