]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
DRD: More source code cleanup (constant propagation).
authorBart Van Assche <bvanassche@acm.org>
Sat, 12 Mar 2011 12:34:44 +0000 (12:34 +0000)
committerBart Van Assche <bvanassche@acm.org>
Sat, 12 Mar 2011 12:34:44 +0000 (12:34 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11631

drd/drd_main.c
drd/drd_thread.c
drd/drd_thread.h

index 73984048be5aaa743297612744ab108fe438f93e..dd9f558c32944406ac483cf992e4cf1d7cbbbebb 100644 (file)
@@ -343,7 +343,7 @@ void drd_stop_using_mem(const Addr a1, const SizeT len,
 
    if (!is_stack_mem || DRD_(get_check_stack_accesses)())
    {
-      DRD_(thread_stop_using_mem)(a1, a2, False);
+      DRD_(thread_stop_using_mem)(a1, a2);
       DRD_(clientobj_stop_using_mem)(a1, a2);
       DRD_(suppression_stop_using_mem)(a1, a2);
    }
index 95f13d6332ba50902a669b2b7033230bdb6401d1..11c5ca8201534c8f6974b3463ea9ec5b2c6beed9 100644 (file)
@@ -1150,8 +1150,7 @@ void DRD_(thread_new_segment_and_combine_vc)(DrdThreadId tid, const Segment* sg)
  * [ a1, a2 [, e.g. because of a call to free() or a stack pointer
  * increase.
  */
-void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2,
-                                 const Bool dont_clear_access)
+void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2)
 {
    DrdThreadId other_user;
    unsigned i;
@@ -1161,22 +1160,12 @@ void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2,
    for (i = 0; i < DRD_N_THREADS; i++)
    {
       Segment* p;
-      for (p = DRD_(g_threadinfo)[i].first; p; p = p->next)
-      {
+      for (p = DRD_(g_threadinfo)[i].first; p; p = p->next) {
          if (other_user == DRD_INVALID_THREADID
-             && i != DRD_(g_drd_running_tid))
-         {
-            if (UNLIKELY((!dont_clear_access
-                          && DRD_(bm_test_and_clear)(DRD_(sg_bm)(p), a1, a2))
-                         || (dont_clear_access
-                             && DRD_(bm_has_any_access)(DRD_(sg_bm)(p), a1, a2))
-                         ))
-            {
+             && i != DRD_(g_drd_running_tid)) {
+            if (UNLIKELY(DRD_(bm_test_and_clear)(DRD_(sg_bm)(p), a1, a2)))
                other_user = i;
-            }
-            continue;
-         }
-         if (!dont_clear_access)
+         } else
             DRD_(bm_clear)(DRD_(sg_bm)(p), a1, a2);
       }
    }
index 8d63467acf6cef469dab3b892398732a7e2ee820..6b73d8c0bcad848139596ba2291127d0251fa0f6 100644 (file)
@@ -171,8 +171,7 @@ void DRD_(thread_new_segment_and_combine_vc)(DrdThreadId tid,
 void DRD_(thread_update_conflict_set)(const DrdThreadId tid,
                                       const VectorClock* const old_vc);
 
-void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2,
-                                 const Bool dont_clear_access);
+void DRD_(thread_stop_using_mem)(const Addr a1, const Addr a2);
 void DRD_(thread_set_record_loads)(const DrdThreadId tid, const Bool enabled);
 void DRD_(thread_set_record_stores)(const DrdThreadId tid, const Bool enabled);
 void DRD_(thread_print_all)(void);