Introduced more DRD_ prefixes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9158 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/drd/drd_bitmap.c b/drd/drd_bitmap.c
index 9e5d1ba..928f221 100644
--- a/drd/drd_bitmap.c
+++ b/drd/drd_bitmap.c
@@ -858,7 +858,7 @@
| ((bm1r->bm0_r[k] & bm0_mask(b)) ? RHS_R : 0)
| ((bm1r->bm0_w[k] & bm0_mask(b)) ? RHS_W : 0);
Addr const a = MAKE_ADDRESS(bm2l->addr, k * BITS_PER_UWORD | b);
- if (HAS_RACE(access_mask) && ! drd_is_suppressed(a, a + 1))
+ if (HAS_RACE(access_mask) && ! DRD_(is_suppressed)(a, a + 1))
{
return 1;
}
diff --git a/drd/drd_clientobj.c b/drd/drd_clientobj.c
index 768079a..074bc16 100644
--- a/drd/drd_clientobj.c
+++ b/drd/drd_clientobj.c
@@ -134,7 +134,7 @@
p->any.first_observed_at = VG_(record_ExeContext)(VG_(get_running_tid)(), 0);
VG_(OSetGen_Insert)(s_clientobj, p);
tl_assert(VG_(OSetGen_Lookup)(s_clientobj, &a1) == p);
- drd_start_suppression(a1, a1 + 1, "clientobj");
+ DRD_(start_suppression)(a1, a1 + 1, "clientobj");
return p;
}
@@ -173,7 +173,7 @@
tl_assert(s_clientobj);
- if (! drd_is_any_suppressed(a1, a2))
+ if (! DRD_(is_any_suppressed)(a1, a2))
return;
VG_(OSetGen_ResetIter)(s_clientobj);
diff --git a/drd/drd_clientreq.c b/drd/drd_clientreq.c
index 44c662e..fef90c1 100644
--- a/drd/drd_clientreq.c
+++ b/drd/drd_clientreq.c
@@ -115,11 +115,11 @@
break;
case VG_USERREQ__DRD_START_SUPPRESSION:
- drd_start_suppression(arg[1], arg[1] + arg[2], "client");
+ DRD_(start_suppression)(arg[1], arg[1] + arg[2], "client");
break;
case VG_USERREQ__DRD_FINISH_SUPPRESSION:
- drd_finish_suppression(arg[1], arg[1] + arg[2]);
+ DRD_(finish_suppression)(arg[1], arg[1] + arg[2]);
break;
case VG_USERREQ__DRD_SUPPRESS_CURRENT_STACK:
@@ -143,8 +143,8 @@
}
#endif
thread_set_stack_startup(drd_tid, VG_(get_SP)(vg_tid));
- drd_start_suppression(topmost_sp, VG_(thread_get_stack_max)(vg_tid),
- "stack top");
+ DRD_(start_suppression)(topmost_sp, VG_(thread_get_stack_max)(vg_tid),
+ "stack top");
break;
}
@@ -153,11 +153,11 @@
break;
case VG_USERREQ__DRD_START_TRACE_ADDR:
- drd_start_tracing_address_range(arg[1], arg[1] + arg[2]);
+ DRD_(start_tracing_address_range)(arg[1], arg[1] + arg[2]);
break;
case VG_USERREQ__DRD_STOP_TRACE_ADDR:
- drd_stop_tracing_address_range(arg[1], arg[1] + arg[2]);
+ DRD_(stop_tracing_address_range)(arg[1], arg[1] + arg[2]);
break;
case VG_USERREQ__DRD_STOP_RECORDING:
diff --git a/drd/drd_clientreq.h b/drd/drd_clientreq.h
index e43d845..29cc75e 100644
--- a/drd/drd_clientreq.h
+++ b/drd/drd_clientreq.h
@@ -22,6 +22,7 @@
The GNU General Public License is contained in the file COPYING.
*/
+
/*
* This header file contains the tool-internal interface for the code that
* processes client requests.
diff --git a/drd/drd_error.c b/drd/drd_error.c
index c3eb745..c06dea9 100644
--- a/drd/drd_error.c
+++ b/drd/drd_error.c
@@ -413,7 +413,7 @@
}
}
-void drd_register_error_handlers(void)
+void DRD_(register_error_handlers)(void)
{
// Tool error reporting.
VG_(needs_tool_errors)(drd_tool_error_eq,
diff --git a/drd/drd_error.h b/drd/drd_error.h
index b72b82e..4035122 100644
--- a/drd/drd_error.h
+++ b/drd/drd_error.h
@@ -148,7 +148,7 @@
void set_show_conflicting_segments(const Bool scs);
-void drd_register_error_handlers(void);
+void DRD_(register_error_handlers)(void);
#endif /* __DRD_ERROR_H */
diff --git a/drd/drd_load_store.c b/drd/drd_load_store.c
index 160b356..d53bde6 100644
--- a/drd/drd_load_store.c
+++ b/drd/drd_load_store.c
@@ -67,10 +67,10 @@
s_drd_check_stack_accesses = c;
}
-void drd_trace_mem_access(const Addr addr, const SizeT size,
+void DRD_(trace_mem_access)(const Addr addr, const SizeT size,
const BmAccessTypeT access_type)
{
- if (drd_is_any_traced(addr, addr + size))
+ if (DRD_(is_any_traced)(addr, addr + size))
{
char vc[80];
vc_snprint(vc, sizeof(vc), thread_get_vc(thread_get_running_tid()));
@@ -99,12 +99,12 @@
static VG_REGPARM(2) void drd_trace_mem_load(const Addr addr, const SizeT size)
{
- return drd_trace_mem_access(addr, size, eLoad);
+ return DRD_(trace_mem_access)(addr, size, eLoad);
}
static VG_REGPARM(2) void drd_trace_mem_store(const Addr addr,const SizeT size)
{
- return drd_trace_mem_access(addr, size, eStore);
+ return DRD_(trace_mem_access)(addr, size, eStore);
}
static void drd_report_race(const Addr addr, const SizeT size,
@@ -134,7 +134,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_load_triggers_conflict(addr, addr + size)
- && ! drd_is_suppressed(addr, addr + size))
+ && ! DRD_(is_suppressed)(addr, addr + size))
{
drd_report_race(addr, size, eLoad);
}
@@ -145,7 +145,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_load_1_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 1))
+ && ! DRD_(is_suppressed)(addr, addr + 1))
{
drd_report_race(addr, 1, eLoad);
}
@@ -156,7 +156,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_load_2_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 2))
+ && ! DRD_(is_suppressed)(addr, addr + 2))
{
drd_report_race(addr, 2, eLoad);
}
@@ -167,7 +167,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_load_4_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 4))
+ && ! DRD_(is_suppressed)(addr, addr + 4))
{
drd_report_race(addr, 4, eLoad);
}
@@ -178,7 +178,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_load_8_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 8))
+ && ! DRD_(is_suppressed)(addr, addr + 8))
{
drd_report_race(addr, 8, eLoad);
}
@@ -195,7 +195,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_store_triggers_conflict(addr, addr + size)
- && ! drd_is_suppressed(addr, addr + size))
+ && ! DRD_(is_suppressed)(addr, addr + size))
{
drd_report_race(addr, size, eStore);
}
@@ -206,7 +206,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_store_1_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 1))
+ && ! DRD_(is_suppressed)(addr, addr + 1))
{
drd_report_race(addr, 1, eStore);
}
@@ -217,7 +217,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_store_2_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 2))
+ && ! DRD_(is_suppressed)(addr, addr + 2))
{
drd_report_race(addr, 2, eStore);
}
@@ -228,7 +228,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_store_4_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 4))
+ && ! DRD_(is_suppressed)(addr, addr + 4))
{
drd_report_race(addr, 4, eStore);
}
@@ -239,7 +239,7 @@
if (running_thread_is_recording()
&& (s_drd_check_stack_accesses || ! thread_address_on_stack(addr))
&& bm_access_store_8_triggers_conflict(addr)
- && ! drd_is_suppressed(addr, addr + 8))
+ && ! DRD_(is_suppressed)(addr, addr + 8))
{
drd_report_race(addr, 8, eStore);
}
@@ -285,7 +285,7 @@
IRExpr** argv;
IRDirty* di;
- if (UNLIKELY(drd_any_address_is_traced()))
+ if (UNLIKELY(DRD_(any_address_is_traced)()))
{
addStmtToIRSB(bb,
IRStmt_Dirty(
@@ -350,7 +350,7 @@
IRExpr** argv;
IRDirty* di;
- if (UNLIKELY(drd_any_address_is_traced()))
+ if (UNLIKELY(DRD_(any_address_is_traced)()))
{
addStmtToIRSB(bb,
IRStmt_Dirty(
@@ -407,7 +407,7 @@
addStmtToIRSB(bb, IRStmt_Dirty(di));
}
-IRSB* drd_instrument(VgCallbackClosure* const closure,
+IRSB* DRD_(instrument)(VgCallbackClosure* const closure,
IRSB* const bb_in,
VexGuestLayout* const layout,
VexGuestExtents* const vge,
diff --git a/drd/drd_load_store.h b/drd/drd_load_store.h
index f820555..9d74147 100644
--- a/drd/drd_load_store.h
+++ b/drd/drd_load_store.h
@@ -37,14 +37,14 @@
Bool DRD_(get_check_stack_accesses)(void);
void DRD_(set_check_stack_accesses)(const Bool c);
-IRSB* drd_instrument(VgCallbackClosure* const closure,
- IRSB* const bb_in,
- VexGuestLayout* const layout,
- VexGuestExtents* const vge,
- IRType const gWordTy,
- IRType const hWordTy);
-void drd_trace_mem_access(const Addr addr, const SizeT size,
- const BmAccessTypeT access_type);
+IRSB* DRD_(instrument)(VgCallbackClosure* const closure,
+ IRSB* const bb_in,
+ VexGuestLayout* const layout,
+ VexGuestExtents* const vge,
+ IRType const gWordTy,
+ IRType const hWordTy);
+void DRD_(trace_mem_access)(const Addr addr, const SizeT size,
+ const BmAccessTypeT access_type);
VG_REGPARM(2) void drd_trace_load(Addr addr, SizeT size);
VG_REGPARM(2) void drd_trace_store(Addr addr, SizeT size);
diff --git a/drd/drd_main.c b/drd/drd_main.c
index a051711..50b1d03 100644
--- a/drd/drd_main.c
+++ b/drd/drd_main.c
@@ -53,23 +53,17 @@
#include "pub_tool_tooliface.h"
-// Function declarations.
+/* Local variables. */
-static void drd_start_client_code(const ThreadId tid, const ULong bbs_done);
+static Bool DRD_(s_print_stats) = False;
+static Bool DRD_(s_var_info) = False;
+static Bool DRD_(s_show_stack_usage) = False;
-// Local variables.
-
-static Bool s_drd_print_stats = False;
-static Bool s_drd_var_info = False;
-static Bool s_show_stack_usage = False;
-
-
-//
-// Implement the needs_command_line_options for drd.
-//
-
-static Bool drd_process_cmd_line_option(Char* arg)
+/**
+ * Implement the needs_command_line_options for drd.
+ */
+static Bool DRD_(process_cmd_line_option)(Char* arg)
{
int check_stack_accesses = -1;
int exclusive_threshold_ms = -1;
@@ -90,11 +84,11 @@
Char* trace_address = 0;
VG_BOOL_CLO (arg, "--check-stack-var", check_stack_accesses)
- else VG_BOOL_CLO(arg, "--drd-stats", s_drd_print_stats)
+ else VG_BOOL_CLO(arg, "--drd-stats", DRD_(s_print_stats))
else VG_BOOL_CLO(arg,"--report-signal-unlocked",s_drd_report_signal_unlocked)
else VG_BOOL_CLO(arg, "--segment-merging", segment_merging)
else VG_BOOL_CLO(arg, "--show-confl-seg", show_confl_seg)
- else VG_BOOL_CLO(arg, "--show-stack-usage", s_show_stack_usage)
+ else VG_BOOL_CLO(arg, "--show-stack-usage", DRD_(s_show_stack_usage))
else VG_BOOL_CLO(arg, "--trace-barrier", trace_barrier)
else VG_BOOL_CLO(arg, "--trace-clientobj", trace_clientobj)
else VG_BOOL_CLO(arg, "--trace-cond", trace_cond)
@@ -106,7 +100,7 @@
else VG_BOOL_CLO(arg, "--trace-segment", trace_segment)
else VG_BOOL_CLO(arg, "--trace-semaphore", trace_semaphore)
else VG_BOOL_CLO(arg, "--trace-suppr", trace_suppression)
- else VG_BOOL_CLO(arg, "--var-info", s_drd_var_info)
+ else VG_BOOL_CLO(arg, "--var-info", DRD_(s_var_info))
else VG_NUM_CLO (arg, "--exclusive-threshold", exclusive_threshold_ms)
else VG_NUM_CLO (arg, "--shared-threshold", shared_threshold_ms)
else VG_STR_CLO (arg, "--trace-addr", trace_address)
@@ -131,7 +125,7 @@
if (trace_address)
{
const Addr addr = VG_(strtoll16)(trace_address, 0);
- drd_start_tracing_address_range(addr, addr + 1);
+ DRD_(start_tracing_address_range)(addr, addr + 1);
}
if (trace_barrier != -1)
barrier_set_trace(trace_barrier);
@@ -154,12 +148,12 @@
if (trace_semaphore != -1)
semaphore_set_trace(trace_semaphore);
if (trace_suppression != -1)
- suppression_set_trace(trace_suppression);
+ DRD_(suppression_set_trace)(trace_suppression);
return True;
}
-static void drd_print_usage(void)
+static void DRD_(print_usage)(void)
{
VG_(printf)(
" --check-stack-var=yes|no Whether or not to report data races on\n"
@@ -198,7 +192,7 @@
VG_(replacement_malloc_print_usage)();
}
-static void drd_print_debug_usage(void)
+static void DRD_(print_debug_usage)(void)
{
VG_(printf)(
" --drd-stats=yes|no Print statistics about DRD activity [no].\n"
@@ -268,9 +262,9 @@
{
tl_assert(a1 < a1 + len);
- if (UNLIKELY(drd_any_address_is_traced()))
+ if (UNLIKELY(DRD_(any_address_is_traced)()))
{
- drd_trace_mem_access(a1, len, eStart);
+ DRD_(trace_mem_access)(a1, len, eStart);
}
}
@@ -296,15 +290,15 @@
tl_assert(a1 < a2);
- if (UNLIKELY(drd_any_address_is_traced()))
+ if (UNLIKELY(DRD_(any_address_is_traced)()))
{
- drd_trace_mem_access(a1, len, eEnd);
+ DRD_(trace_mem_access)(a1, len, eEnd);
}
if (! is_stack_mem || DRD_(get_check_stack_accesses)())
{
thread_stop_using_mem(a1, a2);
clientobj_stop_using_mem(a1, a2);
- drd_suppression_stop_using_mem(a1, a2);
+ DRD_(suppression_stop_using_mem)(a1, a2);
}
}
@@ -314,16 +308,17 @@
drd_stop_using_mem(a1, len, False);
}
-/** Suppress data race reports on all addresses contained in .plt and
- * .got.plt sections inside the address range [ a, a + len [. The data in
- * these sections is modified by _dl_relocate_object() every time a function
- * in a shared library is called for the first time. Since the first call
- * to a function in a shared library can happen from a multithreaded context,
- * such calls can cause conflicting accesses. See also Ulrich Drepper's
- * paper "How to Write Shared Libraries" for more information about relocation
- * (http://people.redhat.com/drepper/dsohowto.pdf).
+/**
+ * Suppress data race reports on all addresses contained in .plt and
+ * .got.plt sections inside the address range [ a, a + len [. The data in
+ * these sections is modified by _dl_relocate_object() every time a function
+ * in a shared library is called for the first time. Since the first call
+ * to a function in a shared library can happen from a multithreaded context,
+ * such calls can cause conflicting accesses. See also Ulrich Drepper's
+ * paper "How to Write Shared Libraries" for more information about relocation
+ * (http://people.redhat.com/drepper/dsohowto.pdf).
*/
-static void suppress_relocation_conflicts(const Addr a, const SizeT len)
+static void DRD_(suppress_relocation_conflicts)(const Addr a, const SizeT len)
{
const DebugInfo* di;
@@ -345,7 +340,7 @@
VG_(printf)("Suppressing .plt @ 0x%lx size %ld\n", avma, size);
#endif
tl_assert(VG_(seginfo_sect_kind)(NULL, 0, avma) == Vg_SectPLT);
- drd_start_suppression(avma, avma + size, ".plt");
+ DRD_(start_suppression)(avma, avma + size, ".plt");
}
avma = VG_(seginfo_get_gotplt_avma)(di);
@@ -357,7 +352,7 @@
VG_(printf)("Suppressing .got.plt @ 0x%lx size %ld\n", avma, size);
#endif
tl_assert(VG_(seginfo_sect_kind)(NULL, 0, avma) == Vg_SectGOTPLT);
- drd_start_suppression(avma, avma + size, ".gotplt");
+ DRD_(start_suppression)(avma, avma + size, ".gotplt");
}
}
}
@@ -371,7 +366,7 @@
drd_start_using_mem(a, len);
- suppress_relocation_conflicts(a, len);
+ DRD_(suppress_relocation_conflicts)(a, len);
}
/* Called by the core when the stack of a thread grows, to indicate that */
@@ -447,10 +442,10 @@
}
if (! DRD_(get_check_stack_accesses)())
{
- drd_start_suppression(thread_get_stack_max(drd_created)
- - thread_get_stack_size(drd_created),
- thread_get_stack_max(drd_created),
- "stack");
+ DRD_(start_suppression)(thread_get_stack_max(drd_created)
+ - thread_get_stack_size(drd_created),
+ thread_get_stack_max(drd_created),
+ "stack");
}
}
@@ -472,7 +467,7 @@
? ""
: " (which is a detached thread)");
}
- if (s_show_stack_usage)
+ if (DRD_(s_show_stack_usage))
{
const SizeT stack_size = thread_get_stack_size(drd_tid);
const SizeT used_stack
@@ -502,8 +497,7 @@
// Implementation of the tool interface.
//
-static
-void drd_post_clo_init(void)
+static void DRD_(post_clo_init)(void)
{
# if defined(VGP_x86_linux) || defined(VGP_amd64_linux) \
|| defined(VGP_ppc32_linux) || defined(VGP_ppc64_linux)
@@ -512,7 +506,7 @@
VG_(printf)("\nWARNING: DRD has only been tested on Linux.\n\n");
# endif
- if (s_drd_var_info)
+ if (DRD_(s_var_info))
{
VG_(needs_var_info)();
}
@@ -524,11 +518,10 @@
thread_set_vg_running_tid(tid);
}
-static
-void drd_fini(Int exitcode)
+static void DRD_(fini)(Int exitcode)
{
// thread_print_all();
- if (VG_(clo_verbosity) > 1 || s_drd_print_stats)
+ if (VG_(clo_verbosity) > 1 || DRD_(s_print_stats))
{
ULong update_conflict_set_count;
ULong dsnsc;
@@ -585,17 +578,17 @@
" by Bart Van Assche.");
VG_(details_bug_reports_to) (VG_BUGS_TO);
- VG_(basic_tool_funcs) (drd_post_clo_init,
- drd_instrument,
- drd_fini);
+ VG_(basic_tool_funcs) (DRD_(post_clo_init),
+ DRD_(instrument),
+ DRD_(fini));
// Command line stuff.
- VG_(needs_command_line_options)(drd_process_cmd_line_option,
- drd_print_usage,
- drd_print_debug_usage);
+ VG_(needs_command_line_options)(DRD_(process_cmd_line_option),
+ DRD_(print_usage),
+ DRD_(print_debug_usage));
// Error handling.
- drd_register_error_handlers();
+ DRD_(register_error_handlers)();
// Core event tracking.
VG_(track_pre_mem_read) (drd_pre_mem_read);
@@ -621,7 +614,7 @@
DRD_(clientreq_init)();
- drd_suppression_init();
+ DRD_(suppression_init)();
clientobj_init();
}
diff --git a/drd/drd_suppression.c b/drd/drd_suppression.c
index a66eca0..6e7cc08 100644
--- a/drd/drd_suppression.c
+++ b/drd/drd_suppression.c
@@ -31,31 +31,35 @@
#include "pub_tool_libcprint.h" // Vg_DebugMsg
-// Local variables.
+/* Global variables. */
-static struct bitmap* s_suppressed;
-static Bool s_trace_suppression;
-Bool g_any_address_traced = False;
+Bool DRD_(g_any_address_traced) = False;
-// Function definitions.
+/* Local variables. */
-void suppression_set_trace(const Bool trace_suppression)
+static struct bitmap* DRD_(s_suppressed);
+static Bool DRD_(s_trace_suppression);
+
+
+/* Function definitions. */
+
+void DRD_(suppression_set_trace)(const Bool trace_suppression)
{
- s_trace_suppression = trace_suppression;
+ DRD_(s_trace_suppression) = trace_suppression;
}
-void drd_suppression_init(void)
+void DRD_(suppression_init)(void)
{
- tl_assert(s_suppressed == 0);
- s_suppressed = bm_new();
- tl_assert(s_suppressed);
+ tl_assert(DRD_(s_suppressed) == 0);
+ DRD_(s_suppressed) = bm_new();
+ tl_assert(DRD_(s_suppressed));
}
-void drd_start_suppression(const Addr a1, const Addr a2,
- const char* const reason)
+void DRD_(start_suppression)(const Addr a1, const Addr a2,
+ const char* const reason)
{
- if (s_trace_suppression)
+ if (DRD_(s_trace_suppression))
{
VG_(message)(Vg_DebugMsg, "start suppression of 0x%lx sz %ld (%s)",
a1, a2 - a1, reason);
@@ -63,12 +67,12 @@
tl_assert(a1 < a2);
// tl_assert(! drd_is_any_suppressed(a1, a2));
- bm_access_range_store(s_suppressed, a1, a2);
+ bm_access_range_store(DRD_(s_suppressed), a1, a2);
}
-void drd_finish_suppression(const Addr a1, const Addr a2)
+void DRD_(finish_suppression)(const Addr a1, const Addr a2)
{
- if (s_trace_suppression)
+ if (DRD_(s_trace_suppression))
{
VG_(message)(Vg_DebugMsg, "finish suppression of 0x%lx sz %ld",
a1, a2 - a1);
@@ -76,13 +80,13 @@
}
tl_assert(a1 < a2);
- if (! drd_is_suppressed(a1, a2))
+ if (! DRD_(is_suppressed)(a1, a2))
{
VG_(message)(Vg_DebugMsg, "?? [0x%lx,0x%lx[ not suppressed ??", a1, a2);
VG_(get_and_pp_StackTrace)(VG_(get_running_tid)(), 12);
tl_assert(False);
}
- bm_clear_store(s_suppressed, a1, a2);
+ bm_clear_store(DRD_(s_suppressed), a1, a2);
}
/**
@@ -90,9 +94,9 @@
* bytes in the range a1 .. a2 - 1 inclusive. Return false in case the range
* is only partially suppressed or not suppressed at all.
*/
-Bool drd_is_suppressed(const Addr a1, const Addr a2)
+Bool DRD_(is_suppressed)(const Addr a1, const Addr a2)
{
- return bm_has(s_suppressed, a1, a2, eStore);
+ return bm_has(DRD_(s_suppressed), a1, a2, eStore);
}
/**
@@ -100,46 +104,47 @@
* of the bytes in the range a1 .. a2 - 1 inclusive. Return false in case none
* of the bytes in the specified range is suppressed.
*/
-Bool drd_is_any_suppressed(const Addr a1, const Addr a2)
+Bool DRD_(is_any_suppressed)(const Addr a1, const Addr a2)
{
- return bm_has_any_store(s_suppressed, a1, a2);
+ return bm_has_any_store(DRD_(s_suppressed), a1, a2);
}
-void drd_start_tracing_address_range(const Addr a1, const Addr a2)
+void DRD_(start_tracing_address_range)(const Addr a1, const Addr a2)
{
tl_assert(a1 < a2);
- bm_access_range_load(s_suppressed, a1, a2);
- if (! g_any_address_traced)
+ bm_access_range_load(DRD_(s_suppressed), a1, a2);
+ if (! DRD_(g_any_address_traced))
{
- g_any_address_traced = True;
+ DRD_(g_any_address_traced) = True;
}
}
-void drd_stop_tracing_address_range(const Addr a1, const Addr a2)
+void DRD_(stop_tracing_address_range)(const Addr a1, const Addr a2)
{
tl_assert(a1 < a2);
- bm_clear_load(s_suppressed, a1, a2);
- if (g_any_address_traced)
+ bm_clear_load(DRD_(s_suppressed), a1, a2);
+ if (DRD_(g_any_address_traced))
{
- g_any_address_traced = bm_has_any_load(s_suppressed, 0, ~(Addr)0);
+ DRD_(g_any_address_traced)
+ = bm_has_any_load(DRD_(s_suppressed), 0, ~(Addr)0);
}
}
-Bool drd_is_any_traced(const Addr a1, const Addr a2)
+Bool DRD_(is_any_traced)(const Addr a1, const Addr a2)
{
- return bm_has_any_load(s_suppressed, a1, a2);
+ return bm_has_any_load(DRD_(s_suppressed), a1, a2);
}
-void drd_suppression_stop_using_mem(const Addr a1, const Addr a2)
+void DRD_(suppression_stop_using_mem)(const Addr a1, const Addr a2)
{
- if (s_trace_suppression)
+ if (DRD_(s_trace_suppression))
{
Addr b;
for (b = a1; b < a2; b++)
{
- if (bm_has_1(s_suppressed, b, eStore))
+ if (bm_has_1(DRD_(s_suppressed), b, eStore))
{
VG_(message)(Vg_DebugMsg,
"stop_using_mem(0x%lx, %ld) finish suppression of 0x%lx",
@@ -149,5 +154,5 @@
}
tl_assert(a1);
tl_assert(a1 < a2);
- bm_clear(s_suppressed, a1, a2);
+ bm_clear(DRD_(s_suppressed), a1, a2);
}
diff --git a/drd/drd_suppression.h b/drd/drd_suppression.h
index cfe4a01..9484822 100644
--- a/drd/drd_suppression.h
+++ b/drd/drd_suppression.h
@@ -2,28 +2,29 @@
#define __PUB_CORE_DRD_H
+#include "drd_basics.h"
#include "pub_tool_basics.h"
-extern Bool g_any_address_traced;
+extern Bool DRD_(g_any_address_traced);
-void suppression_set_trace(const Bool trace_suppression);
-void drd_suppression_init(void);
-void drd_start_suppression(const Addr a1, const Addr a2,
+void DRD_(suppression_set_trace)(const Bool trace_suppression);
+void DRD_(suppression_init)(void);
+void DRD_(start_suppression)(const Addr a1, const Addr a2,
const char* const reason);
-void drd_finish_suppression(const Addr a1, const Addr a2);
-Bool drd_is_suppressed(const Addr a1, const Addr a2);
-Bool drd_is_any_suppressed(const Addr a1, const Addr a2);
-void drd_start_tracing_address_range(const Addr a1, const Addr a2);
-void drd_stop_tracing_address_range(const Addr a1, const Addr a2);
-Bool drd_is_any_traced(const Addr a1, const Addr a2);
-void drd_suppression_stop_using_mem(const Addr a1, const Addr a2);
+void DRD_(finish_suppression)(const Addr a1, const Addr a2);
+Bool DRD_(is_suppressed)(const Addr a1, const Addr a2);
+Bool DRD_(is_any_suppressed)(const Addr a1, const Addr a2);
+void DRD_(start_tracing_address_range)(const Addr a1, const Addr a2);
+void DRD_(stop_tracing_address_range)(const Addr a1, const Addr a2);
+Bool DRD_(is_any_traced)(const Addr a1, const Addr a2);
+void DRD_(suppression_stop_using_mem)(const Addr a1, const Addr a2);
-static __inline__ Bool drd_any_address_is_traced(void)
+static __inline__ Bool DRD_(any_address_is_traced)(void)
{
- return g_any_address_traced;
+ return DRD_(g_any_address_traced);
}
diff --git a/drd/drd_thread.c b/drd/drd_thread.c
index 8ca0547..42f2144 100644
--- a/drd/drd_thread.c
+++ b/drd/drd_thread.c
@@ -266,9 +266,9 @@
if (! DRD_(get_check_stack_accesses)())
{
- drd_finish_suppression(thread_get_stack_max(drd_joinee)
- - thread_get_stack_size(drd_joinee),
- thread_get_stack_max(drd_joinee));
+ DRD_(finish_suppression)(thread_get_stack_max(drd_joinee)
+ - thread_get_stack_size(drd_joinee),
+ thread_get_stack_max(drd_joinee));
}
thread_delete(drd_joinee);
mutex_thread_delete(drd_joinee);
diff --git a/drd/tests/drd_bitmap_test.c b/drd/tests/drd_bitmap_test.c
index f653f42..ea12300 100644
--- a/drd/tests/drd_bitmap_test.c
+++ b/drd/tests/drd_bitmap_test.c
@@ -39,7 +39,7 @@
{ UInt ret; va_list vargs; va_start(vargs, format); ret = vprintf(format, vargs); va_end(vargs); return ret; }
UInt VG_(message)(VgMsgKind kind, const HChar* format, ...)
{ UInt ret; va_list vargs; va_start(vargs, format); ret = vprintf(format, vargs); va_end(vargs); printf("\n"); return ret; }
-Bool drd_is_suppressed(const Addr a1, const Addr a2)
+Bool DRD_(is_suppressed)(const Addr a1, const Addr a2)
{ assert(0); }