Lines Matching refs:DRD_
123 extern DrdThreadId DRD_(g_drd_running_tid);
125 extern ThreadInfo* DRD_(g_threadinfo);
127 extern struct bitmap* DRD_(g_conflict_set);
128 extern Bool DRD_(verify_conflict_set);
130 extern Bool DRD_(ignore_thread_creation);
135 void DRD_(thread_trace_context_switches)(const Bool t);
136 void DRD_(thread_trace_conflict_set)(const Bool t);
137 void DRD_(thread_trace_conflict_set_bm)(const Bool t);
138 Bool DRD_(thread_get_trace_fork_join)(void);
139 void DRD_(thread_set_trace_fork_join)(const Bool t);
140 void DRD_(thread_set_segment_merging)(const Bool m);
141 int DRD_(thread_get_segment_merge_interval)(void);
142 void DRD_(thread_set_segment_merge_interval)(const int i);
143 void DRD_(thread_set_join_list_vol)(const int jlv);
145 void DRD_(thread_init)(void);
146 DrdThreadId DRD_(VgThreadIdToDrdThreadId)(const ThreadId tid);
147 DrdThreadId DRD_(NewVgThreadIdToDrdThreadId)(const ThreadId tid);
148 DrdThreadId DRD_(PtThreadIdToDrdThreadId)(const PThreadId tid);
149 ThreadId DRD_(DrdThreadIdToVgThreadId)(const DrdThreadId tid);
150 DrdThreadId DRD_(thread_pre_create)(const DrdThreadId creator,
152 DrdThreadId DRD_(thread_post_create)(const ThreadId vg_created);
153 void DRD_(thread_post_join)(DrdThreadId drd_joiner, DrdThreadId drd_joinee);
154 void DRD_(thread_delete)(const DrdThreadId tid, Bool detached);
155 void DRD_(thread_finished)(const DrdThreadId tid);
156 void DRD_(drd_thread_atfork_child)(const DrdThreadId tid);
157 void DRD_(thread_pre_cancel)(const DrdThreadId tid);
158 void DRD_(thread_set_stack_startup)(const DrdThreadId tid,
160 Addr DRD_(thread_get_stack_min)(const DrdThreadId tid);
161 Addr DRD_(thread_get_stack_min_min)(const DrdThreadId tid);
162 Addr DRD_(thread_get_stack_max)(const DrdThreadId tid);
163 SizeT DRD_(thread_get_stack_size)(const DrdThreadId tid);
164 Bool DRD_(thread_get_on_alt_stack)(const DrdThreadId tid);
165 void DRD_(thread_set_on_alt_stack)(const DrdThreadId tid,
167 Int DRD_(thread_get_threads_on_alt_stack)(void);
168 void DRD_(thread_set_pthreadid)(const DrdThreadId tid, const PThreadId ptid);
169 Bool DRD_(thread_get_joinable)(const DrdThreadId tid);
170 void DRD_(thread_set_joinable)(const DrdThreadId tid, const Bool joinable);
171 void DRD_(thread_entering_pthread_create)(const DrdThreadId tid);
172 void DRD_(thread_left_pthread_create)(const DrdThreadId tid);
174 void DRD_(thread_entering_rtld_bind_guard)(const DrdThreadId tid, int flags);
175 void DRD_(thread_leaving_rtld_bind_clear)(const DrdThreadId tid, int flags);
177 const HChar* DRD_(thread_get_name)(const DrdThreadId tid);
178 void DRD_(thread_set_name)(const DrdThreadId tid, const HChar* const name);
179 void DRD_(thread_set_vg_running_tid)(const ThreadId vg_tid);
180 void DRD_(thread_set_running_tid)(const ThreadId vg_tid,
182 int DRD_(thread_enter_synchr)(const DrdThreadId tid);
183 int DRD_(thread_leave_synchr)(const DrdThreadId tid);
184 int DRD_(thread_get_synchr_nesting_count)(const DrdThreadId tid);
185 void DRD_(thread_new_segment)(const DrdThreadId tid);
186 VectorClock* DRD_(thread_get_vc)(const DrdThreadId tid);
187 void DRD_(thread_get_latest_segment)(Segment** sg, const DrdThreadId tid);
188 void DRD_(thread_combine_vc_join)(const DrdThreadId joiner,
190 void DRD_(thread_new_segment_and_combine_vc)(DrdThreadId tid,
192 void DRD_(thread_update_conflict_set)(const DrdThreadId tid,
195 void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2);
196 void DRD_(thread_set_record_loads)(const DrdThreadId tid, const Bool enabled);
197 void DRD_(thread_set_record_stores)(const DrdThreadId tid, const Bool enabled);
198 void DRD_(thread_print_all)(void);
199 void DRD_(thread_report_races)(const DrdThreadId tid);
200 void DRD_(thread_report_races_segment)(const DrdThreadId tid,
202 void DRD_(thread_report_all_races)(void);
203 void DRD_(thread_report_conflicting_segments)(const DrdThreadId tid,
207 ULong DRD_(thread_get_context_switch_count)(void);
208 ULong DRD_(thread_get_report_races_count)(void);
209 ULong DRD_(thread_get_discard_ordered_segments_count)(void);
210 ULong DRD_(thread_get_compute_conflict_set_count)(void);
211 ULong DRD_(thread_get_update_conflict_set_count)(void);
212 ULong DRD_(thread_get_update_conflict_set_new_sg_count)(void);
213 ULong DRD_(thread_get_update_conflict_set_sync_count)(void);
214 ULong DRD_(thread_get_update_conflict_set_join_count)(void);
215 ULong DRD_(thread_get_conflict_set_bitmap_creation_count)(void);
216 ULong DRD_(thread_get_conflict_set_bitmap2_creation_count)(void);
231 Bool DRD_(IsValidDrdThreadId)(const DrdThreadId tid) in DRD_() function
234 && (DRD_(g_threadinfo)[tid].valid)); in DRD_()
239 DrdThreadId DRD_(thread_get_running_tid)(void) in DRD_() function
242 tl_assert(DRD_(g_drd_running_tid) != DRD_INVALID_THREADID); in DRD_()
244 return DRD_(g_drd_running_tid); in DRD_()
249 struct bitmap* DRD_(thread_get_conflict_set)(void) in DRD_() function
251 return DRD_(g_conflict_set); in DRD_()
259 Bool DRD_(running_thread_inside_pthread_create)(void) in DRD_() function
261 return (DRD_(g_threadinfo)[DRD_(g_drd_running_tid)] in DRD_()
270 Bool DRD_(running_thread_is_recording_loads)(void) in DRD_() function
273 tl_assert(0 <= (int)DRD_(g_drd_running_tid) in DRD_()
274 && DRD_(g_drd_running_tid) < DRD_N_THREADS in DRD_()
275 && DRD_(g_drd_running_tid) != DRD_INVALID_THREADID); in DRD_()
277 return (DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].synchr_nesting == 0 in DRD_()
278 && DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].is_recording_loads); in DRD_()
286 Bool DRD_(running_thread_is_recording_stores)(void) in DRD_() function
289 tl_assert(0 <= (int)DRD_(g_drd_running_tid) in DRD_()
290 && DRD_(g_drd_running_tid) < DRD_N_THREADS in DRD_()
291 && DRD_(g_drd_running_tid) != DRD_INVALID_THREADID); in DRD_()
293 return (DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].synchr_nesting == 0 in DRD_()
294 && DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].is_recording_stores); in DRD_()
302 void DRD_(thread_set_stack_min)(const DrdThreadId tid, const Addr stack_min) in DRD_() function
309 DRD_(g_threadinfo)[tid].stack_min = stack_min; in DRD_()
313 tl_assert(DRD_(g_threadinfo)[tid].stack_min in DRD_()
314 <= DRD_(g_threadinfo)[tid].stack_max in DRD_()
315 || DRD_(g_threadinfo)[tid].stack_max == 0); in DRD_()
317 if (UNLIKELY(stack_min < DRD_(g_threadinfo)[tid].stack_min_min)) in DRD_()
319 DRD_(g_threadinfo)[tid].stack_min_min = stack_min; in DRD_()
328 Bool DRD_(thread_address_on_stack)(const Addr a) in DRD_() function
330 return (DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].stack_min <= a in DRD_()
331 && a < DRD_(g_threadinfo)[DRD_(g_drd_running_tid)].stack_max); in DRD_()
339 Bool DRD_(thread_address_on_any_stack)(const Addr a) in DRD_() function
345 if (DRD_(g_threadinfo)[i].vg_thread_exists in DRD_()
346 && DRD_(g_threadinfo)[i].stack_min <= a in DRD_()
347 && a < DRD_(g_threadinfo)[i].stack_max) in DRD_()
357 Segment* DRD_(thread_get_segment)(const DrdThreadId tid) in DRD_() function
362 tl_assert(DRD_(g_threadinfo)[tid].sg_last); in DRD_()
364 return DRD_(g_threadinfo)[tid].sg_last; in DRD_()
369 Segment* DRD_(running_thread_get_segment)(void) in DRD_() function
371 return DRD_(thread_get_segment)(DRD_(g_drd_running_tid)); in DRD_()