summaryrefslogtreecommitdiff
path: root/src/arch/storage.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/storage.h')
-rw-r--r--src/arch/storage.h27
1 files changed, 21 insertions, 6 deletions
diff --git a/src/arch/storage.h b/src/arch/storage.h
index 002897a..35e3a7d 100644
--- a/src/arch/storage.h
+++ b/src/arch/storage.h
@@ -72,23 +72,38 @@ GObject *g_asm_storage_create_object(GAsmStorage *, packed_buffer *);
/* Sauvegarde le type d'un objet instancié. */
bool g_asm_storage_store_object_gtype(GAsmStorage *, GObject *, packed_buffer *);
+/* Type de fichier intermédiaire */
+typedef enum _StorageFileType
+{
+ SFT_INSTRUCTION, /* Pour instructions */
+ SFT_OPERAND, /* Pour opérandes */
+ SFT_REGISTER /* Pour registres */
+
+} StorageFileType;
+
/* Charge des données rassemblées. */
-bool _g_asm_storage_load_data(const GAsmStorage *, bool, packed_buffer *, off64_t);
+bool _g_asm_storage_load_data(const GAsmStorage *, StorageFileType, packed_buffer *, off64_t);
#define g_asm_storage_load_instruction_data(s, b, p) \
- _g_asm_storage_load_data(s, true, b, p)
+ _g_asm_storage_load_data(s, SFT_INSTRUCTION, b, p)
#define g_asm_storage_load_operand_data(s, b, p) \
- _g_asm_storage_load_data(s, false, b, p)
+ _g_asm_storage_load_data(s, SFT_OPERAND, b, p)
+
+#define g_asm_storage_load_register_data(s, b, p) \
+ _g_asm_storage_load_data(s, SFT_REGISTER, b, p)
/* Sauvegarde des données rassemblées. */
-bool _g_asm_storage_store_data(const GAsmStorage *, bool, packed_buffer *, off64_t *);
+bool _g_asm_storage_store_data(const GAsmStorage *, StorageFileType, packed_buffer *, off64_t *);
#define g_asm_storage_store_instruction_data(s, b, p) \
- _g_asm_storage_store_data(s, true, b, p)
+ _g_asm_storage_store_data(s, SFT_INSTRUCTION, b, p)
#define g_asm_storage_store_operand_data(s, b, p) \
- _g_asm_storage_store_data(s, false, b, p)
+ _g_asm_storage_store_data(s, SFT_OPERAND, b, p)
+
+#define g_asm_storage_store_register_data(s, b, p) \
+ _g_asm_storage_store_data(s, SFT_REGISTER, b, p)
/* Lance une restauration complète d'unsauvegarde compressée. */
bool g_asm_storage_open(GAsmStorage *, GBinFormat *, wgroup_id_t);