diff options
Diffstat (limited to 'src/arch/processor.c')
-rw-r--r-- | src/arch/processor.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/arch/processor.c b/src/arch/processor.c index ff2318d..8ca58a7 100644 --- a/src/arch/processor.c +++ b/src/arch/processor.c @@ -230,8 +230,7 @@ MemoryDataSize g_arch_processor_get_instruction_size(const GArchProcessor *proc) * ctx = contexte lié à l'exécution du processeur. * * data = flux de données à analyser. * * pos = position courante dans ce flux. [OUT] * -* len = taille totale des données à analyser. * -* base = position physique du bloc de code courant. * +* end = limite des données à analyser. * * addr = adresse virtuelle de l'instruction. * * format = format du fichier contenant le code. * * * @@ -243,7 +242,7 @@ MemoryDataSize g_arch_processor_get_instruction_size(const GArchProcessor *proc) * * ******************************************************************************/ -GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *proc, GProcContext *ctx, const bin_t *data, off_t *pos, off_t len, off_t base, vmpa_t addr, GBinFormat *format) +GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *proc, GProcContext *ctx, const bin_t *data, off_t *pos, off_t end, vmpa_t addr, GBinFormat *format) { GArchInstruction *result; /* Instruction à renvoyer */ off_t old_pos; /* Sauvegarde de la position */ @@ -251,7 +250,7 @@ GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *proc old_pos = *pos; - result = proc->decode(proc, ctx, data, pos, len, addr, format); + result = G_ARCH_PROCESSOR_GET_CLASS(proc)->decode(proc, ctx, data, pos, end, addr, format); if (result == NULL || result == SKIPPED_INSTR) { @@ -260,7 +259,7 @@ GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *proc skipped = (result == SKIPPED_INSTR); *pos = old_pos; - result = g_db_instruction_new_from_data(data, pos, len, base, proc); + result = g_db_instruction_new_from_data(data, pos, end, addr, proc); #ifdef DEBUG /* FIXME */ if (skipped) @@ -268,7 +267,7 @@ GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *proc #endif } - g_arch_instruction_set_location(result, base + old_pos, *pos - old_pos, addr); + g_arch_instruction_set_location(result, old_pos, *pos - old_pos, addr); return result; |