diff options
-rw-r--r-- | plugins/arm/v7/post.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/plugins/arm/v7/post.c b/plugins/arm/v7/post.c index ad839cf..c430d65 100644 --- a/plugins/arm/v7/post.c +++ b/plugins/arm/v7/post.c @@ -50,10 +50,6 @@ void post_process_ldr_instructions(GArchInstruction *instr, GArchProcessor *proc GBinFormat *bfmt; /* Version basique du format */ GTargetOperand *new; /* Instruction de ciblage */ vmpa2t target; /* Défination finale précise */ - mrange_t trange; /* Etendue du symbole à créer */ - VMPA_BUFFER(loc); /* Espace pour une conversion */ - char name[5 + VMPA_MAX_LEN]; /* Etiquette à constituer */ - GBinSymbol *symbol; /* Nouveau symbole construit */ g_arch_instruction_lock_operands(instr); @@ -70,23 +66,10 @@ void post_process_ldr_instructions(GArchInstruction *instr, GArchProcessor *proc new = G_TARGET_OPERAND(g_target_operand_new(MDS_32_BITS_UNSIGNED, &target)); if (!g_target_operand_resolve(new, bfmt, true)) - { - addr &= ~0x1; + g_object_unref(G_OBJECT(new)); - init_mrange(&trange, &target, 0); - - vmpa2_virt_to_string(&target, MDS_UNDEFINED, loc, NULL); - snprintf(name, sizeof(name), "loc_%s", loc + 2); - - symbol = g_binary_symbol_new(&trange, STP_CODE_LABEL); - g_binary_symbol_set_alt_label(symbol, name); - g_binary_format_add_symbol(bfmt, symbol); - - g_target_operand_resolve(new, bfmt, true); - - } - - _g_arch_instruction_replace_operand(instr, op, G_ARCH_OPERAND(new)); + else + _g_arch_instruction_replace_operand(instr, op, G_ARCH_OPERAND(new)); } |