summaryrefslogtreecommitdiff
path: root/src/arch/instruction.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2010-11-11 01:22:43 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2010-11-11 01:22:43 (GMT)
commitb33a52031c0d44a79604bc8d9036c30bffd020cb (patch)
treec825e3330684ca57f7c423328cd116b2d6ec0f6a /src/arch/instruction.h
parent828124e38d266e382bb1477ef51c9fac8e81c591 (diff)
Built some expressions for the decompilation tree.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@190 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/instruction.h')
-rw-r--r--src/arch/instruction.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/arch/instruction.h b/src/arch/instruction.h
index a9e2bd2..4dcba44 100644
--- a/src/arch/instruction.h
+++ b/src/arch/instruction.h
@@ -32,6 +32,8 @@
#include "archbase.h"
#include "operand.h"
+#include "../decomp/context.h"
+#include "../decomp/instruction.h"
#include "../format/executable.h"
@@ -77,7 +79,7 @@ void g_arch_instruction_attach_extra_operand(GArchInstruction *, GArchOperand *)
size_t g_arch_instruction_count_operands(const GArchInstruction *);
/* Fournit un opérande donné d'une instruction. */
-const GArchOperand *g_arch_instruction_get_operand(GArchInstruction *, size_t);
+GArchOperand *g_arch_instruction_get_operand(const GArchInstruction *, size_t);
/* Remplace un opérande d'une instruction par un autre. */
void g_arch_instruction_replace_operand(GArchInstruction *, GArchOperand *, const GArchOperand *);
@@ -94,6 +96,9 @@ InstructionLinkType g_arch_instruction_get_link(const GArchInstruction *, vmpa_t
/* Indique si l'instruction correspond à un retour de fonction. */
bool g_arch_instruction_is_return(const GArchInstruction *instr);
+/* Décompile une instruction de façon générique. */
+GDecInstruction *g_arch_instruction_decompile(const GArchInstruction *, GDecContext *);
+
/* -------------------- TRAITEMENT DES INSTRUCTIONS PAR ENSEMBLE -------------------- */