diff options
Diffstat (limited to 'src/arch/processor.c')
-rw-r--r-- | src/arch/processor.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/arch/processor.c b/src/arch/processor.c index fc9f773..1afb576 100644 --- a/src/arch/processor.c +++ b/src/arch/processor.c @@ -52,8 +52,11 @@ asm_instr *decode_instruction(const asm_processor *proc, const uint8_t *data, of { asm_instr *result; /* Représentation à renvoyer */ + off_t old_pos; /* Sauvegarde de la position */ + old_pos = *pos; + result = proc->fetch_instr(proc, data, pos, len, offset); @@ -63,6 +66,8 @@ asm_instr *decode_instruction(const asm_processor *proc, const uint8_t *data, of if (result == NULL) { + *pos = old_pos; + printf("err while decoding opcode 0x%0hhx at 0x%08llx\n", data[*pos], offset); result = create_db_instruction(data, pos, len); } |