aboutsummaryrefslogtreecommitdiff
path: root/drd
diff options
context:
space:
mode:
authorbart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9>2009-06-03 20:01:44 +0000
committerbart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9>2009-06-03 20:01:44 +0000
commit82c54c4d81b24bdfd3837d69ccbb2a69f8780848 (patch)
tree694850fedf8568c37eeacd97dea33f59c1d24f56 /drd
parent48fcfc637d883e24ddc10233b17a5198d352edde (diff)
downloadvalgrind-82c54c4d81b24bdfd3837d69ccbb2a69f8780848.tar.gz
Updated documentation of PCQ annotations.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10233 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'drd')
-rw-r--r--drd/drd.h21
1 files changed, 17 insertions, 4 deletions
diff --git a/drd/drd.h b/drd/drd.h
index 8e1e858f0..499d246a2 100644
--- a/drd/drd.h
+++ b/drd/drd.h
@@ -174,16 +174,29 @@
#define ANNOTATE_RWLOCK_RELEASED(rwlock, is_w) \
DRDCL_(annotate_rwlock)(rwlock, 3, is_w)
-/** @todo Implement this annotation. */
+/**
+ * Tell DRD that a FIFO queue has been created. The abbreviation PCQ stands for
+ * <em>producer-consumer</em>.
+ */
#define ANNOTATE_PCQ_CREATE(pcq) do { } while(0)
-/** @todo Implement this annotation. */
+/** Tell DRD that a FIFO queue has been destroyed. */
#define ANNOTATE_PCQ_DESTROY(pcq) do { } while(0)
-/** @todo Implement this annotation. */
+/**
+ * Tell DRD that an element has been added to the FIFO queue at address pcq.
+ */
#define ANNOTATE_PCQ_PUT(pcq) do { } while(0)
-/** @todo Implement this annotation. */
+/**
+ * Tell DRD that an element has been removed from the FIFO queue at address pcq,
+ * and that DRD should insert a happens-before relationship between the memory
+ * accesses that occurred before the corresponding ANNOTATE_PCQ_PUT(pcq)
+ * annotation and the memory accesses after this annotation. Correspondence
+ * between PUT and GET annotations happens in FIFO order. Since locking
+ * of the queue is needed anyway to add elements to or to remove elements from
+ * the queue, for DRD all four FIFO annotations are defined as no-ops.
+ */
#define ANNOTATE_PCQ_GET(pcq) do { } while(0)
/**