summaryrefslogtreecommitdiff
path: root/src/arch/context-int.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2015-11-26 23:30:01 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2015-11-26 23:30:01 (GMT)
commit6b1a70c16f83a926f7b1f1fb2af5d6a2e017737b (patch)
tree8ffb0b3d8f3063c612f8cebe4f00a65f8b029a52 /src/arch/context-int.h
parenta93a5dca1a7292b7e61ae09b74f3252e04b73488 (diff)
Used several threads without lock to disassemble binary code.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@610 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/context-int.h')
-rw-r--r--src/arch/context-int.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/arch/context-int.h b/src/arch/context-int.h
index 64465a2..086a8ec 100644
--- a/src/arch/context-int.h
+++ b/src/arch/context-int.h
@@ -29,6 +29,10 @@
+/* Granularité des allocations */
+#define DP_ALLOC_BLOCK 10
+
+
/* Ajoute une adresse virtuelle comme point de départ de code. */
typedef void (* push_drop_point_fc) (GProcContext *, virt_t);
@@ -39,7 +43,9 @@ struct _GProcContext
GObject parent; /* A laisser en premier */
virt_t *drop_points; /* Liste de points de départ */
- size_t dp_count; /* Taille de cette liste */
+ size_t dp_allocated; /* Taille de liste allouée */
+ size_t dp_count; /* Quantité utile de la liste */
+ GMutex dp_access; /* Accès à la liste FIFO */
vmpa2t *extra_symbols; /* Adresses de symboles */
size_t esyms_count; /* Nombres de nouveautés */
@@ -54,6 +60,10 @@ struct _GProcContextClass
push_drop_point_fc push_point; /* Inclusion de points de chute*/
+ /* Signaux */
+
+ void (* drop_point_pushed) (GProcContext *);
+
};