<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:fpizlo@apple.com" title="Filip Pizlo <fpizlo@apple.com>"> <span class="fn">Filip Pizlo</span></a>
</span> changed
<a class="bz_bug_link
bz_status_NEW "
title="NEW - Speed up GC by using indexed collections to track MarkedBlock::Handles and WeakSets and using bitvectors to track their states"
href="https://bugs.webkit.org/show_bug.cgi?id=161581">bug 161581</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Assignee</td>
<td>webkit-unassigned@lists.webkit.org
</td>
<td>fpizlo@apple.com
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Speed up GC by using indexed collections to track MarkedBlock::Handles and WeakSets and using bitvectors to track their states"
href="https://bugs.webkit.org/show_bug.cgi?id=161581#c3">Comment # 3</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Speed up GC by using indexed collections to track MarkedBlock::Handles and WeakSets and using bitvectors to track their states"
href="https://bugs.webkit.org/show_bug.cgi?id=161581">bug 161581</a>
from <span class="vcard"><a class="email" href="mailto:fpizlo@apple.com" title="Filip Pizlo <fpizlo@apple.com>"> <span class="fn">Filip Pizlo</span></a>
</span></b>
<pre>Created <span class=""><a href="attachment.cgi?id=288519&action=diff" name="attach_288519" title="it begins">attachment 288519</a> <a href="attachment.cgi?id=288519&action=edit" title="it begins">[details]</a></span>
it begins
I'm starting out by creating a super-flexible bitvector framework. What I have now will make FastBitVector capable of the following amazing stuff:
FastBitVector a;
FastBitVector b;
FastBitVector c;
... // do things to populate a, b, c
auto intersection = a.bitAnd(b); // Returns a view of a & b that is computed on the fly.
intersection.forEachSetBit([&] (size_t i) { print(i); }); // Super efficiently walks the words of a & b.
a.bitAnd(b.bitOr(c).bitNot()).forEachClearBit([&] (size_t i) { print (i); });</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>