projects
/
c11tester.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add macro for recording atomic statics and report data races
[c11tester.git]
/
datarace.cc
diff --git
a/datarace.cc
b/datarace.cc
index f988596f492343f7db2519cf5a83af3bce41821e..544fced0485690e67aabee2d56f8fcbf47d16b1c 100644
(file)
--- a/
datarace.cc
+++ b/
datarace.cc
@@
-16,6
+16,7
@@
static void *memory_base;
static void *memory_top;
static RaceSet * raceset;
static void *memory_top;
static RaceSet * raceset;
+#ifdef COLLECT_STAT
static unsigned int store8_count = 0;
static unsigned int store16_count = 0;
static unsigned int store32_count = 0;
static unsigned int store8_count = 0;
static unsigned int store16_count = 0;
static unsigned int store32_count = 0;
@@
-25,6
+26,7
@@
static unsigned int load8_count = 0;
static unsigned int load16_count = 0;
static unsigned int load32_count = 0;
static unsigned int load64_count = 0;
static unsigned int load16_count = 0;
static unsigned int load32_count = 0;
static unsigned int load64_count = 0;
+#endif
static const ModelExecution * get_execution()
{
static const ModelExecution * get_execution()
{
@@
-1212,6
+1214,7
@@
void raceCheckWrite8(thread_id_t thread, const void *location)
raceCheckWrite_firstIt(thread, location, &old_shadowval, &new_shadowval);
}
raceCheckWrite_firstIt(thread, location, &old_shadowval, &new_shadowval);
}
+#ifdef COLLECT_STAT
void print_normal_accesses()
{
model_print("store 8 count: %u\n", store8_count);
void print_normal_accesses()
{
model_print("store 8 count: %u\n", store8_count);
@@
-1224,3
+1227,4
@@
void print_normal_accesses()
model_print("load 32 count: %u\n", load32_count);
model_print("load 64 count: %u\n", load64_count);
}
model_print("load 32 count: %u\n", load32_count);
model_print("load 64 count: %u\n", load64_count);
}
+#endif