summaryrefslogtreecommitdiff
path: root/plugins/arm
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-05-19 14:32:21 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-05-19 14:32:21 (GMT)
commitca2d0b23aac9a48b112f20a603dd0df85afc8afa (patch)
tree14641c4d3bcf25f8a7ca02034c496d3e66920656 /plugins/arm
parent0a228fb2310761c3c620bd7ae40610e091f6c5b7 (diff)
Stopped trying to resolve loaded values by all means.
Diffstat (limited to 'plugins/arm')
-rw-r--r--plugins/arm/v7/post.c23
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));
}