Home | History | Annotate | Download | only in drd

Lines Matching refs:Segment

48 static void thread_append_segment(const DrdThreadId tid, Segment* const sg);
49 static void thread_discard_segment(const DrdThreadId tid, Segment* const sg);
124 /** Enables/disables segment merging. */
131 /** Get the segment merging interval. */
137 /** Set the segment merging interval. */
272 Segment* p;
291 * Create the first segment for a newly started thread.
325 /* Create an initial segment for the newly created thread. */
517 Segment* sg;
518 Segment* sg_prev;
824 /** Append a new segment at the end of the segment list. */
826 void thread_append_segment(const DrdThreadId tid, Segment* const sg)
850 * Remove a segment from the segment list of thread threadid, and free the
854 void thread_discard_segment(const DrdThreadId tid, Segment* const sg)
879 * Returns a pointer to the vector clock of the most recent segment associated
884 Segment* latest_sg;
894 * Return the latest segment of thread 'tid' and increment its reference count.
896 void DRD_(thread_get_latest_segment)(Segment** sg, const DrdThreadId tid)
898 Segment* latest_sg;
920 Segment* latest_sg;
945 Segment* latest_sg;
993 Segment* sg;
994 Segment* sg_next;
1013 * DRD the set CS consists of the latest segment of each thread combined with
1019 * Segment* sg;
1037 Segment* const sg1,
1038 Segment* const sg2)
1049 Segment* sg;
1073 * or discarding real data races. For the theoretical background of segment
1075 * and Koen De Bosschere. Bounding the number of segment histories during
1082 * every time a new segment is created. The property equiv(s1, s2) is defined
1087 * segment s is the latest segment of a thread or because it can become the
1088 * immediate predecessor of a new segment due to a synchronization operation.
1098 Segment* sg;
1106 Segment* const sg_next = sg->thr_next;
1125 * Create a new segment for the specified thread, and discard any segments
1130 Segment* last_sg;
1131 Segment* new_sg;
1205 * Update the vector clock of the last segment of thread tid with the
1206 * the vector clock of segment sg.
1208 static void thread_combine_vc_sync(DrdThreadId tid, const Segment* sg)
1245 * Create a new segment for thread tid and update the vector clock of the last
1246 * segment of this thread with the vector clock of segment sg. Call this
1248 * until the memory accesses in the segment sg finished.
1250 void DRD_(thread_new_segment_and_combine_vc)(DrdThreadId tid, const Segment* sg)
1276 Segment* p;
1305 * Print the segment information for all threads.
1312 Segment* p;
1357 const Segment* const p)
1367 Segment* q;
1381 Segment* q_next;
1388 "Other segment start (thread %u)\n", i);
1395 "Other segment end (thread %u)\n", i);
1413 Segment* p;
1454 * accesses of all segments that are unordered to the current segment of the
1460 Segment* p;
1504 Segment* q;
1514 "conflict set: [%u] merging segment %s\n",
1525 "conflict set: [%u] ignoring segment %s\n",
1549 * updated from old_vc to its current value, either because a new segment has
1556 Segment* p;
1582 Segment* q;
1600 "conflict set: [%u] %s segment %s\n", j,
1622 "conflict set: [%u] %s segment %s\n", j,
1638 Segment* q;
1688 * because a new segment has been created.