summaryrefslogtreecommitdiff
path: root/src/arch/processor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/processor.h')
-rw-r--r--src/arch/processor.h29
1 files changed, 7 insertions, 22 deletions
diff --git a/src/arch/processor.h b/src/arch/processor.h
index 5726197..8529d50 100644
--- a/src/arch/processor.h
+++ b/src/arch/processor.h
@@ -25,31 +25,10 @@
#define _ARCH_PROCESSOR_H
-#include <sys/types.h>
-
-
-#include "operand.h" /* AsmSyntax */
-#include "instruction.h"
-
-
-
-/* FIXME : lieu de définition temporaire */
-
-/* Mode d'adressage à utiliser */
-typedef enum _AdressMode
-{
- ADM_32BITS, /* Adresses sur 32 bits */
- ADM_64BITS /* Adresses sur 64 bits */
-
-} AdressMode;
-
-
-
-
-
#include <glib-object.h>
+#include "instruction.h"
#include "../common/endianness.h"
@@ -73,6 +52,9 @@ GType g_arch_processor_get_type(void);
/* Fournit le boustime du processeur d'une architecture. */
SourceEndian g_arch_processor_get_endianness(const GArchProcessor *);
+/* Fournit la taille de l'espace mémoire d'une architecture. */
+MemoryDataSize g_arch_processor_get_memory_size(const GArchProcessor *);
+
/* Décode une instruction dans un flux de données. */
GArchInstruction *g_arch_processor_decode_instruction(const GArchProcessor *, const bin_t *, off_t *, off_t, off_t, vmpa_t);
@@ -99,6 +81,9 @@ bool init_all_processors(void);
/* Fournit le processeur d'architecture correspondant à un type. */
GArchProcessor *get_arch_processor_for_type(ArchProcessorType);
+/* Fournit le processeur d'architecture lié à un format. */
+GArchProcessor *get_arch_processor_from_format(const exe_format *);
+
#endif /* _ARCH_PROCESSOR_H */