23
23
<div class="contents">
24
<h1>Processor specific optimizations for SSE4.2 instructions<br/>
26
[<a class="el" href="a00112.html">BitMagic C++ Library</a>]</small>
24
<h1>BitMagic C++ Library</h1>
25
<p>For more information please visit: <a href="http://bmagic.sourceforge.net.">http://bmagic.sourceforge.net.</a>
26
<a href="#_details">More...</a></p>
28
28
<p><div class="dynheader">
29
Collaboration diagram for Processor specific optimizations for SSE4.2 instructions:</div>
29
Collaboration diagram for BitMagic C++ Library:</div>
30
30
<div class="dynsection">
31
31
<center><table><tr><td><img src="a00117.png" border="0" alt="" usemap="#a00117_map"/>
32
32
<map name="a00117_map" id="a00117">
33
<area shape="rect" href="a00112.html" title="For more information please visit: http://bmagic.sourceforge.net." alt="" coords="5,5,149,35"/></map></td></tr></table></center>
33
<area shape="rect" href="a00122.html" title="Processor specific optimizations for SSE2 instructions" alt="" coords="203,5,541,35"/><area shape="rect" href="a00123.html" title="Processor specific optimizations for SSE4.2 instructions" alt="" coords="197,59,547,88"/><area shape="rect" href="a00121.html" title="Small sets functionality" alt="" coords="293,112,451,141"/><area shape="rect" href="a00124.html" title="Set algorithms" alt="" coords="320,165,424,195"/><area shape="rect" href="a00120.html" title="BIT functions" alt="" coords="323,219,421,248"/><area shape="rect" href="a00118.html" title="This is the main group." alt="" coords="284,272,460,301"/><area shape="rect" href="a00119.html" title="GAP functions" alt="" coords="320,325,424,355"/><area shape="rect" href="a00126.html" title="bvector serialization" alt="" coords="304,379,440,408"/><area shape="rect" href="a00127.html" title="Memory Allocation" alt="" coords="308,432,436,461"/></map></td></tr></table></center>
36
36
<table border="0" cellpadding="0" cellspacing="0">
37
<tr><td colspan="2"><h2>Functions</h2></td></tr>
38
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00110.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00117.html#ga266ed6594dc786e46c1f353443dc41fe">bm::sse4_bit_count</a> (const __m128i *block, const __m128i *block_end)</td></tr>
39
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00110.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00117.html#gad686391db4cdc6382ae6785f62981474">bm::sse4_bit_block_calc_count_change</a> (const __m128i *BMRESTRICT block, const __m128i *BMRESTRICT block_end, unsigned *BMRESTRICT bit_count)</td></tr>
37
<tr><td colspan="2"><h2>Modules</h2></td></tr>
38
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00118.html">The Main bvector<> Group</a></td></tr>
40
<p><tr><td class="mdescLeft"> </td><td class="mdescRight"><p>This is the main group. </p>
43
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00119.html">GAP functions</a></td></tr>
44
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00120.html">BIT functions</a></td></tr>
45
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00121.html">Small sets functionality</a></td></tr>
46
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html">Processor specific optimizations for SSE2 instructions</a></td></tr>
47
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00123.html">Processor specific optimizations for SSE4.2 instructions</a></td></tr>
48
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html">Set algorithms</a></td></tr>
49
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00126.html">bvector serialization</a></td></tr>
50
<tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00127.html">Memory Allocation</a></td></tr>
41
<hr/><h2>Function Documentation</h2>
42
<a class="anchor" id="gad686391db4cdc6382ae6785f62981474"></a><!-- doxytag: member="bm::sse4_bit_block_calc_count_change" ref="gad686391db4cdc6382ae6785f62981474" args="(const __m128i *BMRESTRICT block, const __m128i *BMRESTRICT block_end, unsigned *BMRESTRICT bit_count)" -->
44
<div class="memproto">
45
<table class="memname">
47
<td class="memname"><a class="el" href="a00110.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> bm::sse4_bit_block_calc_count_change </td>
49
<td class="paramtype">const __m128i *BMRESTRICT </td>
50
<td class="paramname"> <em>block</em>, </td>
53
<td class="paramkey"></td>
55
<td class="paramtype">const __m128i *BMRESTRICT </td>
56
<td class="paramname"> <em>block_end</em>, </td>
59
<td class="paramkey"></td>
61
<td class="paramtype">unsigned *BMRESTRICT </td>
62
<td class="paramname"> <em>bit_count</em></td><td> </td>
67
<td></td><td></td><td><code> [inline]</code></td>
72
<p>SSE4.2 optimized bitcounting and number of GAPs </p>
74
<p>Definition at line <a class="el" href="a00094_source.html#l00199">199</a> of file <a class="el" href="a00094_source.html">bmsse4.h</a>.</p>
76
<p>Referenced by <a class="el" href="a00090_source.html#l02569">bm::bit_block_calc_count_change()</a>.</p>
80
<a class="anchor" id="ga266ed6594dc786e46c1f353443dc41fe"></a><!-- doxytag: member="bm::sse4_bit_count" ref="ga266ed6594dc786e46c1f353443dc41fe" args="(const __m128i *block, const __m128i *block_end)" -->
82
<div class="memproto">
83
<table class="memname">
85
<td class="memname"><a class="el" href="a00110.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a> bm::sse4_bit_count </td>
87
<td class="paramtype">const __m128i * </td>
88
<td class="paramname"> <em>block</em>, </td>
91
<td class="paramkey"></td>
93
<td class="paramtype">const __m128i * </td>
94
<td class="paramname"> <em>block_end</em></td><td> </td>
99
<td></td><td></td><td><code> [inline]</code></td>
104
<p>SSE4.2 optimized bitcounting . </p>
106
<p>Definition at line <a class="el" href="a00094_source.html#l00054">54</a> of file <a class="el" href="a00094_source.html">bmsse4.h</a>.</p>
111
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Nov 22 10:49:40 2009 for BitMagic by
52
<hr/><a name="_details"></a><h2>Detailed Description</h2>
53
<p>For more information please visit: <a href="http://bmagic.sourceforge.net.">http://bmagic.sourceforge.net.</a> </p>
55
<hr size="1"/><address style="text-align: right;"><small>Generated on Fri Jan 8 20:09:19 2010 for BitMagic by
112
56
<a href="http://www.doxygen.org/index.html">
113
57
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>