summaryrefslogtreecommitdiff
path: root/src/arch/instruction-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/instruction-int.h')
-rw-r--r--src/arch/instruction-int.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/arch/instruction-int.h b/src/arch/instruction-int.h
index 9a23bf2..f8998a1 100644
--- a/src/arch/instruction-int.h
+++ b/src/arch/instruction-int.h
@@ -26,6 +26,7 @@
#include "instruction.h"
+#include "../analysis/storage/storage.h"
#include "../common/array.h"
#include "../glibext/objhole.h"
@@ -58,6 +59,13 @@ typedef GBufferLine * (* print_instruction_fc) (const GArchInstruction *, GBuffe
/* Liste les registres lus et écrits par l'instruction. */
typedef void (* get_instruction_rw_regs_fc) (const GArchInstruction *, GArchRegister ***, size_t *, GArchRegister ***, size_t *);
+/* Charge un contenu depuis une mémoire tampon. */
+typedef bool (* load_instruction_fc) (GArchInstruction *, GObjectStorage *, packed_buffer_t *);
+
+/* Sauvegarde un contenu dans une mémoire tampon. */
+typedef bool (* store_instruction_fc) (GArchInstruction *, GObjectStorage *, packed_buffer_t *);
+
+
/* Informations glissées dans la structure GObject de GArchOperand */
typedef struct _instr_extra_data_t
@@ -142,6 +150,9 @@ struct _GArchInstructionClass
print_instruction_fc print; /* Imprime l'ensemble */
+ load_instruction_fc load; /* Chargement depuis un tampon */
+ store_instruction_fc store; /* Conservation dans un tampon */
+
//get_instruction_rw_regs_fc get_rw_regs; /* Liste des registres liés */
};