aboutsummaryrefslogtreecommitdiff
path: root/helgrind/hg_errors.c
diff options
context:
space:
mode:
authorsewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-12-08 00:12:28 +0000
committersewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-12-08 00:12:28 +0000
commita781be6728a28c94aec57f793f4d084456e93684 (patch)
tree1eae8d18b75bccabf21581d668bee0daeb6d2199 /helgrind/hg_errors.c
parent8f5374ee1084af8cb46ec405a1de38c5aeb9194b (diff)
downloadvalgrind-a781be6728a28c94aec57f793f4d084456e93684.tar.gz
event_map_lookup: when looking for a previous access to an address,
find conflicting accesses that overlap the current access in any way, rather than just match at the addresses. This allows reporting of conflicts between accesses which overlap but are not the same size/alignment. Doesn't seem to always work reliably, for reasons I don't understand, but I so far failed to make a small test case. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8811 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'helgrind/hg_errors.c')
-rw-r--r--helgrind/hg_errors.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/helgrind/hg_errors.c b/helgrind/hg_errors.c
index 2c70ff62b..008e82bcb 100644
--- a/helgrind/hg_errors.c
+++ b/helgrind/hg_errors.c
@@ -315,7 +315,7 @@ UInt HG_(update_extra) ( Error* err )
}
void HG_(record_error_Race) ( Thread* thr,
- Addr data_addr, Bool isWrite, Int szB,
+ Addr data_addr, Int szB, Bool isWrite,
ExeContext* mb_lastlock )
{
XError xe;
@@ -343,7 +343,7 @@ void HG_(record_error_Race) ( Thread* thr,
xe.XE.Race.mb_lastlock = mb_lastlock;
xe.XE.Race.thr = thr;
tl_assert(isWrite == False || isWrite == True);
- // tl_assert(szB == 8 || szB == 4 || szB == 2 || szB == 1);
+ tl_assert(szB == 8 || szB == 4 || szB == 2 || szB == 1);
xe.XE.Race.descr1[0] = xe.XE.Race.descr2[0] = 0;
// FIXME: tid vs thr
// Skip on any of the conflicting-access info at this point.