diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2010-12-20 00:28:36 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2010-12-20 00:28:36 (GMT) |
commit | 56deaf395c65658102ef0111cfc072d65335331a (patch) | |
tree | ba6d6fd0dbc781e9ad3b3cf6b2eb529a7d7a6aa3 /src/arch/instruction.h | |
parent | d9fdfcf887a7a596a68db2500bb5e4d0b692abb6 (diff) |
Begun to clean the code by moving the disassembling process into disass/.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@202 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/instruction.h')
-rw-r--r-- | src/arch/instruction.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/arch/instruction.h b/src/arch/instruction.h index 4dcba44..7932fdc 100644 --- a/src/arch/instruction.h +++ b/src/arch/instruction.h @@ -90,12 +90,34 @@ void g_arch_instruction_detach_operand(GArchInstruction *, GArchOperand *); /* Traduit une instruction en version humainement lisible. */ char *g_arch_instruction_get_text(const GArchInstruction *, const GExeFormat *, AsmSyntax); + + +/* ------------------- DEFINITION DES LIAISONS ENTRE INSTRUCTIONS ------------------- */ + + /* Informe sur une éventuelle référence à une autre instruction. */ 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); +/* Etablit un lien entre deux instructions. */ +void g_arch_instruction_link_with(GArchInstruction *, GArchInstruction *, InstructionLinkType); + +/* Indique si l'instruction a une ou plusieurs origines. */ +bool g_arch_instruction_has_sources(const GArchInstruction *); + +/* Indique si l'instruction a une suite autre que la suivante. */ +bool g_arch_instruction_has_destinations(const GArchInstruction *); + +/* Fournit les destinations d'une instruction donnée. */ +size_t g_arch_instruction_get_destinations(const GArchInstruction *, GArchInstruction ***, InstructionLinkType **); + + + +/* --------------------- CONVERSIONS DU FORMAT DES INSTRUCTIONS --------------------- */ + + /* Décompile une instruction de façon générique. */ GDecInstruction *g_arch_instruction_decompile(const GArchInstruction *, GDecContext *); |