|
From: <sv...@va...> - 2009-05-10 06:10:50
|
Author: bart
Date: 2009-05-10 07:10:47 +0100 (Sun, 10 May 2009)
New Revision: 9811
Log:
Minimized diffs with trunk.
Modified:
branches/DRDDEV/drd/drd_bitmap.c
branches/DRDDEV/drd/pub_drd_bitmap.h
Modified: branches/DRDDEV/drd/drd_bitmap.c
===================================================================
--- branches/DRDDEV/drd/drd_bitmap.c 2009-05-10 06:02:09 UTC (rev 9810)
+++ branches/DRDDEV/drd/drd_bitmap.c 2009-05-10 06:10:47 UTC (rev 9811)
@@ -210,7 +210,8 @@
DRD_(bm_access_range)(bm, a1, a1 + 8, eLoad);
}
-void DRD_(bm_access_range_store)(struct bitmap* const bm, Addr a1, Addr a2)
+void DRD_(bm_access_range_store)(struct bitmap* const bm,
+ const Addr a1, const Addr a2)
{
Addr b, b_next;
@@ -660,7 +661,8 @@
* Clear all references to stores in bitmap bm starting at address a1 and
* up to but not including address a2.
*/
-void DRD_(bm_clear_store)(struct bitmap* const bm, Addr a1, Addr a2)
+void DRD_(bm_clear_store)(struct bitmap* const bm,
+ const Addr a1, const Addr a2)
{
Addr b, b_next;
@@ -993,33 +995,6 @@
}
}
-/** Compute *lhs ^= *rhs. */
-void bm_xor(struct bitmap* const lhs, struct bitmap* const rhs)
-{
- struct bitmap2* bm2l;
- struct bitmap2* bm2r;
-
- /* It's not possible to have two independent iterators over the same OSet, */
- /* so complain if lhs == rhs. */
- tl_assert(lhs != rhs);
-
- VG_(OSetGen_ResetIter)(rhs->oset);
-
- for ( ; (bm2r = VG_(OSetGen_Next)(rhs->oset)) != 0; )
- {
- bm2l = VG_(OSetGen_Lookup)(lhs->oset, &bm2r->addr);
- if (bm2l)
- {
- tl_assert(bm2l != bm2r);
- bm2_xor(bm2l, bm2r);
- }
- else
- {
- bm2_insert_copy(lhs, bm2r);
- }
- }
-}
-
/**
* Report whether there are any RW / WR / WW patterns in lhs and rhs.
* @param lhs First bitmap.
@@ -1158,22 +1133,3 @@
bm2l->bm1.bm0_w[k] |= bm2r->bm1.bm0_w[k];
}
}
-
-/** Compute *bm2l ^= *bm2r. */
-void bm2_xor(struct bitmap2* const bm2l, const struct bitmap2* const bm2r)
-{
- unsigned k;
-
- tl_assert(bm2l);
- tl_assert(bm2r);
- tl_assert(bm2l->addr == bm2r->addr);
-
- for (k = 0; k < BITMAP1_UWORD_COUNT; k++)
- {
- bm2l->bm1.bm0_r[k] ^= bm2r->bm1.bm0_r[k];
- }
- for (k = 0; k < BITMAP1_UWORD_COUNT; k++)
- {
- bm2l->bm1.bm0_w[k] ^= bm2r->bm1.bm0_w[k];
- }
-}
Modified: branches/DRDDEV/drd/pub_drd_bitmap.h
===================================================================
--- branches/DRDDEV/drd/pub_drd_bitmap.h 2009-05-10 06:02:09 UTC (rev 9810)
+++ branches/DRDDEV/drd/pub_drd_bitmap.h 2009-05-10 06:10:47 UTC (rev 9811)
@@ -116,7 +116,6 @@
void DRD_(bm_swap)(struct bitmap* const bm1, struct bitmap* const bm2);
void DRD_(bm_merge2)(struct bitmap* const lhs,
struct bitmap* const rhs);
-void bm_xor(struct bitmap* const lhs, struct bitmap* const rhs);
int DRD_(bm_has_races)(struct bitmap* const bm1,
struct bitmap* const bm2);
void DRD_(bm_report_races)(ThreadId const tid1, ThreadId const tid2,
@@ -130,7 +129,6 @@
/* Second-level bitmaps. */
void bm2_clear(struct bitmap2* const bm2);
-void bm2_xor(struct bitmap2* const bm2l, const struct bitmap2* const bm2r);
void bm2_print(const struct bitmap2* const bm2);
ULong bm_get_bitmap2_creation_count(void);
|