summaryrefslogtreecommitdiff
path: root/src/arch/processor-int.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2017-08-07 21:50:38 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2017-08-07 21:50:38 (GMT)
commita9328553fc558bca2e75f2c93b35acc5518d9568 (patch)
treece15e5259df278d386683dac217ec2b4a86e7c94 /src/arch/processor-int.h
parent5f55377ff6c014d513f13b76ec5faf56c31da478 (diff)
Stored all errors detected when loading and disassembling a binary file.
Diffstat (limited to 'src/arch/processor-int.h')
-rw-r--r--src/arch/processor-int.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/arch/processor-int.h b/src/arch/processor-int.h
index 0a95fde..a308bb8 100644
--- a/src/arch/processor-int.h
+++ b/src/arch/processor-int.h
@@ -59,6 +59,16 @@ typedef GArchInstruction * (* disass_instr_fc) (const GArchProcessor *, GProcCon
+/* Description d'une erreur */
+typedef struct _proc_error
+{
+ ArchProcessingError type; /* Type d'erreur */
+
+ vmpa2t addr; /* Localisation du problème */
+ char *desc; /* Description du soucis */
+
+} proc_error;
+
/* Couverture d'un groupe d'instructions */
struct _instr_coverage
{
@@ -70,8 +80,6 @@ struct _instr_coverage
};
-
-
/* Définition générique d'un processeur d'architecture (instance) */
struct _GArchProcessor
{
@@ -92,6 +100,13 @@ struct _GArchProcessor
gint locked; /* Statut d'accès à la liste */
#endif
+ proc_error *errors; /* Liste d'erreurs rencontrées */
+ size_t error_count; /* Taille de cette liste */
+ GMutex error_mutex; /* Verrou pour l'accès */
+#ifndef NDEBUG
+ gint error_locked; /* Statut d'accès à la liste */
+#endif
+
instr_coverage *coverages; /* Liste de couvertures */
size_t cov_allocated; /* Taille de la liste allouée */
size_t cov_count; /* Taille de la liste utilisée */