<p dir="ltr"><br>
On Jan 17, 2013 4:14 AM, "Dmitry Vyukov" <<a href="mailto:dvyukov@google.com">dvyukov@google.com</a>> wrote:<br>
><br>
> Author: dvyukov<br>
> Date: Thu Jan 17 06:13:03 2013<br>
> New Revision: 172710<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=172710&view=rev">http://llvm.org/viewvc/llvm-project?rev=172710&view=rev</a><br>
> Log:<br>
> tsan: fix a bug</p>
<p dir="ltr">A little more specificity might be nice, though perhaps simply 'fix a typo' would suffice here.</p>
<p dir="ltr">><br>
> Modified:<br>
>     compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h<br>
><br>
> Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h?rev=172710&r1=172709&r2=172710&view=diff">http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h?rev=172710&r1=172709&r2=172710&view=diff</a><br>

> ==============================================================================<br>
> --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h (original)<br>
> +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_lfstack.h Thu Jan 17 06:13:03 2013<br>
> @@ -52,7 +52,7 @@<br>
>        if (cur == 0)<br>
>          return 0;<br>
>        T *nxt = cur->next;<br>
> -      u64 cnt = (cmp & kCounterBits);<br>
> +      u64 cnt = (cmp & kCounterMask);</p>
<p dir="ltr">While sometimes these sorts of issues, when found by inspection, are hard to concoct tests for, I'll ask anyway, just in case: could you add a test case for this?</p>
<p dir="ltr">>        u64 xch = (u64)(uptr)nxt | cnt;<br>
>        if (atomic_compare_exchange_weak(&head_, &cmp, xch,<br>
>                                         memory_order_acquire))<br>
><br>
><br>
> _______________________________________________<br>
> llvm-commits mailing list<br>
> <a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</p>