~ubuntu-branches/ubuntu/oneiric/bmagic/oneiric

« back to all changes in this revision

Viewing changes to doc/html/a00099.html

  • Committer: Bazaar Package Importer
  • Author(s): Roberto C. Sanchez
  • Date: 2011-03-03 12:22:16 UTC
  • mfrom: (4.1.8 sid)
  • Revision ID: james.westby@ubuntu.com-20110303122216-qll5migewxnxe3s5
Tags: 3.7.0-1
* New upstream release (Closes: #615929)
* Update to Standards-Version 3.9.1 (no changes)
* Specify Debian source format as '3.0 (quilt)'

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
 
<title>BitMagic: bmsse4.h File Reference</title>
 
5
<title>BitMagic: bmsse_util.h File Reference</title>
6
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8
8
</head>
27
27
  </div>
28
28
</div>
29
29
<div class="contents">
30
 
<h1>bmsse4.h File Reference</h1><code>#include &lt;mmintrin.h&gt;</code><br/>
31
 
<code>#include &lt;emmintrin.h&gt;</code><br/>
32
 
<code>#include &lt;smmintrin.h&gt;</code><br/>
33
 
<code>#include &quot;<a class="el" href="a00093_source.html">bmdef.h</a>&quot;</code><br/>
34
 
<code>#include &quot;<a class="el" href="a00100_source.html">bmsse_util.h</a>&quot;</code><br/>
35
 
<div class="dynheader">
36
 
Include dependency graph for bmsse4.h:</div>
37
 
<div class="dynsection">
38
 
<div class="center"><img src="a00147.png" border="0" usemap="#bmsse4_8h_map" alt=""/></div>
39
 
<map name="bmsse4_8h_map" id="bmsse4_8h">
40
 
<area shape="rect" href="a00093.html" title="bmdef.h" alt="" coords="336,83,403,112"/><area shape="rect" href="a00100.html" title="bmsse_util.h" alt="" coords="427,83,523,112"/></map>
41
 
</div>
42
 
<div class="dynheader">
 
30
<h1>bmsse_util.h File Reference</h1><div class="dynheader">
43
31
This graph shows which files directly or indirectly include this file:</div>
44
32
<div class="dynsection">
45
 
<div class="center"><img src="a00148.png" border="0" usemap="#bmsse4_8hdep_map" alt=""/></div>
46
 
<map name="bmsse4_8hdep_map" id="bmsse4_8hdep">
47
 
<area shape="rect" href="a00088.html" title="bm.h" alt="" coords="500,83,551,112"/><area shape="rect" href="a00089.html" title="bmalgo.h" alt="" coords="5,160,80,189"/><area shape="rect" href="a00115.html" title="sample9.cpp" alt="" coords="11,237,107,267"/><area shape="rect" href="a00097.html" title="bmserial.h" alt="" coords="155,160,235,189"/><area shape="rect" href="a00110.html" title="sample4.cpp" alt="" coords="165,237,261,267"/><area shape="rect" href="a00096.html" title="bmrandom.h" alt="" coords="309,160,403,189"/><area shape="rect" href="a00107.html" title="sample10.cpp" alt="" coords="347,237,448,267"/><area shape="rect" href="a00106.html" title="sample1.cpp" alt="" coords="477,160,573,189"/><area shape="rect" href="a00108.html" title="sample2.cpp" alt="" coords="597,160,693,189"/><area shape="rect" href="a00109.html" title="sample3.cpp" alt="" coords="717,160,813,189"/><area shape="rect" href="a00111.html" title="sample5.cpp" alt="" coords="837,160,933,189"/><area shape="rect" href="a00112.html" title="sample6.cpp" alt="" coords="957,160,1053,189"/><area shape="rect" href="a00113.html" title="sample7.cpp" alt="" coords="1077,160,1173,189"/><area shape="rect" href="a00114.html" title="sample8.cpp" alt="" coords="1197,160,1293,189"/></map>
 
33
<div class="center"><img src="a00148.png" border="0" usemap="#bmsse__util_8hdep_map" alt=""/></div>
 
34
<map name="bmsse__util_8hdep_map" id="bmsse__util_8hdep">
 
35
<area shape="rect" href="a00098.html" title="bmsse4.h" alt="" coords="444,83,521,112"/><area shape="rect" href="a00097.html" title="bmsse2.h" alt="" coords="545,83,623,112"/><area shape="rect" href="a00087.html" title="bm.h" alt="" coords="457,160,508,189"/><area shape="rect" href="a00088.html" title="bmalgo.h" alt="" coords="5,237,80,267"/><area shape="rect" href="a00114.html" title="sample9.cpp" alt="" coords="11,315,107,344"/><area shape="rect" href="a00096.html" title="bmserial.h" alt="" coords="155,237,235,267"/><area shape="rect" href="a00109.html" title="sample4.cpp" alt="" coords="165,315,261,344"/><area shape="rect" href="a00095.html" title="bmrandom.h" alt="" coords="309,237,403,267"/><area shape="rect" href="a00106.html" title="sample10.cpp" alt="" coords="347,315,448,344"/><area shape="rect" href="a00105.html" title="sample1.cpp" alt="" coords="477,237,573,267"/><area shape="rect" href="a00107.html" title="sample2.cpp" alt="" coords="597,237,693,267"/><area shape="rect" href="a00108.html" title="sample3.cpp" alt="" coords="717,237,813,267"/><area shape="rect" href="a00110.html" title="sample5.cpp" alt="" coords="837,237,933,267"/><area shape="rect" href="a00111.html" title="sample6.cpp" alt="" coords="957,237,1053,267"/><area shape="rect" href="a00113.html" title="sample8.cpp" alt="" coords="1077,237,1173,267"/></map>
48
36
</div>
49
37
 
50
38
<p><a href="a00099_source.html">Go to the source code of this file.</a></p>
51
39
<table border="0" cellpadding="0" cellspacing="0">
 
40
<tr><td colspan="2"><h2>Data Structures</h2></td></tr>
 
41
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00084.html">bm::sse_empty_guard</a></td></tr>
 
42
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">SSE2 reinitialization guard class.  <a href="a00084.html#_details">More...</a><br/></td></tr>
52
43
<tr><td colspan="2"><h2>Namespaces</h2></td></tr>
53
 
<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00116.html">bm</a></td></tr>
54
 
<tr><td colspan="2"><h2>Defines</h2></td></tr>
55
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a9b8caa31ab90cbfbc99b5728352e5456">VECT_XOR_ARR_2_MASK</a>(dst, src, src_end, mask)&nbsp;&nbsp;&nbsp;sse2_xor_arr_2_mask((__m128i*)(dst), (__m128i*)(src), (__m128i*)(src_end), mask)</td></tr>
56
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a7d425b68d8217dc37d33c660e39a61e1">VECT_ANDNOT_ARR_2_MASK</a>(dst, src, src_end, mask)&nbsp;&nbsp;&nbsp;sse2_andnot_arr_2_mask((__m128i*)(dst), (__m128i*)(src), (__m128i*)(src_end), mask)</td></tr>
57
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#ae022e7bc509d97359a348393a6b25b99">VECT_BITCOUNT</a>(first, last)&nbsp;&nbsp;&nbsp;sse4_bit_count((__m128i*) (first), (__m128i*) (last))</td></tr>
58
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a3459200618dab65142340f1abd760eb9">VECT_BITCOUNT_AND</a>(first, last, mask)&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_and)</td></tr>
59
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a07583d48db4ede7eadbc3156e9dd7d3b">VECT_BITCOUNT_OR</a>(first, last, mask)&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_or)</td></tr>
60
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a9954c72d227a3ca78df22a56efad6baf">VECT_BITCOUNT_XOR</a>(first, last, mask)&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_xor)</td></tr>
61
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a98aaf230431767be4838323266d0b493">VECT_BITCOUNT_SUB</a>(first, last, mask)&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_sub)</td></tr>
62
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#aa31c7d6d7d4cd67e1cc86c08221446ce">VECT_INVERT_ARR</a>(first, last)&nbsp;&nbsp;&nbsp;sse2_invert_arr(first, last);</td></tr>
63
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#aa6a3504bb5449abf6f5ec084b2ddfac6">VECT_AND_ARR</a>(dst, src, src_end)&nbsp;&nbsp;&nbsp;sse2_and_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td></tr>
64
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#ae3cdeec275429ea0d60668da63e96df8">VECT_OR_ARR</a>(dst, src, src_end)&nbsp;&nbsp;&nbsp;sse2_or_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td></tr>
65
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#af079345cbcb256bb6216c0446fd775f2">VECT_SUB_ARR</a>(dst, src, src_end)&nbsp;&nbsp;&nbsp;sse2_sub_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td></tr>
66
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a1f520ac49859f992de5c00f43b851179">VECT_XOR_ARR</a>(dst, src, src_end)&nbsp;&nbsp;&nbsp;sse2_xor_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td></tr>
67
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#a72b713f259e0542169a1228bebadcede">VECT_COPY_BLOCK</a>(dst, src, src_end)&nbsp;&nbsp;&nbsp;sse2_copy_block((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td></tr>
68
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00099.html#acefd3b9d39a2e2fb0c9d2aa5c3812e0b">VECT_SET_BLOCK</a>(dst, dst_end, value)&nbsp;&nbsp;&nbsp;sse2_set_block((__m128i*) dst, (__m128i*) (dst_end), (value))</td></tr>
 
44
<tr><td class="memItemLeft" align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00115.html">bm</a></td></tr>
69
45
<tr><td colspan="2"><h2>Functions</h2></td></tr>
70
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00116.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#ga266ed6594dc786e46c1f353443dc41fe">bm::sse4_bit_count</a> (const __m128i *block, const __m128i *block_end)</td></tr>
71
 
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00116.html#a6d8f327a7d19c11125ac77383a34e986">bm::op_xor</a> (unsigned a, unsigned b)</td></tr>
72
 
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00116.html#a0ed9a1bcd143f7763b4b59ef442f6994">bm::op_or</a> (unsigned a, unsigned b)</td></tr>
73
 
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE unsigned&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00116.html#a515b2862b33efd4e36d72e4ba7729199">bm::op_and</a> (unsigned a, unsigned b)</td></tr>
74
 
<tr><td class="memTemplParams" colspan="2">template&lt;class Func &gt; </td></tr>
75
 
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="a00116.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a>&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00116.html#a295c6323a972a90e28c36e6012427a26">bm::sse4_bit_count_op</a> (const __m128i *BMRESTRICT block, const __m128i *BMRESTRICT block_end, const __m128i *BMRESTRICT mask_block, Func sse2_func)</td></tr>
76
 
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00116.html#aa3824d882a037396370b16f2f0a8bf37">bm::id_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.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>
 
46
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga75c6ddeb0d8a279caa92341878309b50">bm::sse2_xor_arr_2_mask</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end, <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> mask)</td></tr>
 
47
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">XOR array elements to specified mask dst = *src ^ mask.  <a href="a00122.html#ga75c6ddeb0d8a279caa92341878309b50"></a><br/></td></tr>
 
48
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#gab7b21f448684c4d84927792661e67ed5">bm::sse2_andnot_arr_2_mask</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end, <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> mask)</td></tr>
 
49
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Inverts array elements and NOT them to specified mask dst = ~*src &amp; mask.  <a href="a00122.html#gab7b21f448684c4d84927792661e67ed5"></a><br/></td></tr>
 
50
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga795b544f311409a55da4ee61a3cd939a">bm::sse2_and_arr</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end)</td></tr>
 
51
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">AND array elements against another array dst &amp;= *src.  <a href="a00122.html#ga795b544f311409a55da4ee61a3cd939a"></a><br/></td></tr>
 
52
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga3a7d61e4e8ad8791ab38fd1c3436aa67">bm::sse2_or_arr</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end)</td></tr>
 
53
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">OR array elements against another array dst |= *src.  <a href="a00122.html#ga3a7d61e4e8ad8791ab38fd1c3436aa67"></a><br/></td></tr>
 
54
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#gaf1a5ad26557cc4d71d7421c35a8445fe">bm::sse2_xor_arr</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end)</td></tr>
 
55
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">OR array elements against another array dst ^= *src.  <a href="a00122.html#gaf1a5ad26557cc4d71d7421c35a8445fe"></a><br/></td></tr>
 
56
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#gac99f3b138f8a5e8ffb1296b129f618f0">bm::sse2_sub_arr</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end)</td></tr>
 
57
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">AND-NOT (SUB) array elements against another array dst &amp;= ~*src.  <a href="a00122.html#gac99f3b138f8a5e8ffb1296b129f618f0"></a><br/></td></tr>
 
58
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga302f4fcd0abf355957b305d16d04f452">bm::sse2_set_block</a> (__m128i *BMRESTRICT dst, __m128i *BMRESTRICT dst_end, <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> value)</td></tr>
 
59
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">SSE2 block memset dst = value.  <a href="a00122.html#ga302f4fcd0abf355957b305d16d04f452"></a><br/></td></tr>
 
60
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga571dd54af5c555cad9dfa6bef4561777">bm::sse2_copy_block</a> (__m128i *BMRESTRICT dst, const __m128i *BMRESTRICT src, const __m128i *BMRESTRICT src_end)</td></tr>
 
61
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">SSE2 block copy dst = *src.  <a href="a00122.html#ga571dd54af5c555cad9dfa6bef4561777"></a><br/></td></tr>
 
62
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00122.html#ga8d506147673d88005f92caee7f5dd23a">bm::sse2_invert_arr</a> (<a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *first, <a class="el" href="a00115.html#a17fd5ba52db3ddda05e6f8dd5000a1a4">bm::word_t</a> *last)</td></tr>
 
63
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Invert array elements dst = ~*dst or dst ^= *dst.  <a href="a00122.html#ga8d506147673d88005f92caee7f5dd23a"></a><br/></td></tr>
 
64
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE __m128i&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00115.html#ac0c75fb7b3dc61602843ac4e1b9b7ef5">bm::sse2_and</a> (__m128i a, __m128i b)</td></tr>
 
65
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE __m128i&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00115.html#adea798a9a95a04845c33876087a2f46b">bm::sse2_or</a> (__m128i a, __m128i b)</td></tr>
 
66
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE __m128i&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00115.html#a6f5de19ee3e1be05037908b4777c4da8">bm::sse2_xor</a> (__m128i a, __m128i b)</td></tr>
 
67
<tr><td class="memItemLeft" align="right" valign="top">BMFORCEINLINE __m128i&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00115.html#ab3e6d46fcba1bc2a1a5390c10f571382">bm::sse2_sub</a> (__m128i a, __m128i b)</td></tr>
77
68
</table>
78
 
<hr/><h2>Define Documentation</h2>
79
 
<a class="anchor" id="aa6a3504bb5449abf6f5ec084b2ddfac6"></a><!-- doxytag: member="bmsse4.h::VECT_AND_ARR" ref="aa6a3504bb5449abf6f5ec084b2ddfac6" args="(dst, src, src_end)" -->
80
 
<div class="memitem">
81
 
<div class="memproto">
82
 
      <table class="memname">
83
 
        <tr>
84
 
          <td class="memname">#define VECT_AND_ARR</td>
85
 
          <td>(</td>
86
 
          <td class="paramtype">dst, </td>
87
 
        </tr>
88
 
        <tr>
89
 
          <td class="paramkey"></td>
90
 
          <td></td>
91
 
          <td class="paramtype">src, </td>
92
 
        </tr>
93
 
        <tr>
94
 
          <td class="paramkey"></td>
95
 
          <td></td>
96
 
          <td class="paramtype">src_end&nbsp;</td>
97
 
          <td class="paramname"></td>
98
 
          <td>&nbsp;)&nbsp;</td>
99
 
          <td>&nbsp;&nbsp;&nbsp;sse2_and_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td>
100
 
        </tr>
101
 
      </table>
102
 
</div>
103
 
<div class="memdoc">
104
 
 
105
 
<p>Definition at line <a class="el" href="a00099_source.html#l00213">213</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
106
 
 
107
 
<p>Referenced by <a class="el" href="a00094_source.html#l03321">bm::bit_block_and()</a>.</p>
108
 
 
109
 
</div>
110
 
</div>
111
 
<a class="anchor" id="a7d425b68d8217dc37d33c660e39a61e1"></a><!-- doxytag: member="bmsse4.h::VECT_ANDNOT_ARR_2_MASK" ref="a7d425b68d8217dc37d33c660e39a61e1" args="(dst, src, src_end, mask)" -->
112
 
<div class="memitem">
113
 
<div class="memproto">
114
 
      <table class="memname">
115
 
        <tr>
116
 
          <td class="memname">#define VECT_ANDNOT_ARR_2_MASK</td>
117
 
          <td>(</td>
118
 
          <td class="paramtype">dst, </td>
119
 
        </tr>
120
 
        <tr>
121
 
          <td class="paramkey"></td>
122
 
          <td></td>
123
 
          <td class="paramtype">src, </td>
124
 
        </tr>
125
 
        <tr>
126
 
          <td class="paramkey"></td>
127
 
          <td></td>
128
 
          <td class="paramtype">src_end, </td>
129
 
        </tr>
130
 
        <tr>
131
 
          <td class="paramkey"></td>
132
 
          <td></td>
133
 
          <td class="paramtype">mask&nbsp;</td>
134
 
          <td class="paramname"></td>
135
 
          <td>&nbsp;)&nbsp;</td>
136
 
          <td>&nbsp;&nbsp;&nbsp;sse2_andnot_arr_2_mask((__m128i*)(dst), (__m128i*)(src), (__m128i*)(src_end), mask)</td>
137
 
        </tr>
138
 
      </table>
139
 
</div>
140
 
<div class="memdoc">
141
 
 
142
 
<p>Definition at line <a class="el" href="a00099_source.html#l00192">192</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
143
 
 
144
 
</div>
145
 
</div>
146
 
<a class="anchor" id="ae022e7bc509d97359a348393a6b25b99"></a><!-- doxytag: member="bmsse4.h::VECT_BITCOUNT" ref="ae022e7bc509d97359a348393a6b25b99" args="(first, last)" -->
147
 
<div class="memitem">
148
 
<div class="memproto">
149
 
      <table class="memname">
150
 
        <tr>
151
 
          <td class="memname">#define VECT_BITCOUNT</td>
152
 
          <td>(</td>
153
 
          <td class="paramtype">first, </td>
154
 
        </tr>
155
 
        <tr>
156
 
          <td class="paramkey"></td>
157
 
          <td></td>
158
 
          <td class="paramtype">last&nbsp;</td>
159
 
          <td class="paramname"></td>
160
 
          <td>&nbsp;)&nbsp;</td>
161
 
          <td>&nbsp;&nbsp;&nbsp;sse4_bit_count((__m128i*) (first), (__m128i*) (last))</td>
162
 
        </tr>
163
 
      </table>
164
 
</div>
165
 
<div class="memdoc">
166
 
 
167
 
<p>Definition at line <a class="el" href="a00099_source.html#l00195">195</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
168
 
 
169
 
<p>Referenced by <a class="el" href="a00094_source.html#l02681">bm::bit_block_calc_count()</a>.</p>
170
 
 
171
 
</div>
172
 
</div>
173
 
<a class="anchor" id="a3459200618dab65142340f1abd760eb9"></a><!-- doxytag: member="bmsse4.h::VECT_BITCOUNT_AND" ref="a3459200618dab65142340f1abd760eb9" args="(first, last, mask)" -->
174
 
<div class="memitem">
175
 
<div class="memproto">
176
 
      <table class="memname">
177
 
        <tr>
178
 
          <td class="memname">#define VECT_BITCOUNT_AND</td>
179
 
          <td>(</td>
180
 
          <td class="paramtype">first, </td>
181
 
        </tr>
182
 
        <tr>
183
 
          <td class="paramkey"></td>
184
 
          <td></td>
185
 
          <td class="paramtype">last, </td>
186
 
        </tr>
187
 
        <tr>
188
 
          <td class="paramkey"></td>
189
 
          <td></td>
190
 
          <td class="paramtype">mask&nbsp;</td>
191
 
          <td class="paramname"></td>
192
 
          <td>&nbsp;)&nbsp;</td>
193
 
          <td>&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_and)</td>
194
 
        </tr>
195
 
      </table>
196
 
</div>
197
 
<div class="memdoc">
198
 
 
199
 
<p>Definition at line <a class="el" href="a00099_source.html#l00198">198</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
200
 
 
201
 
<p>Referenced by <a class="el" href="a00094_source.html#l03355">bm::bit_block_and_count()</a>.</p>
202
 
 
203
 
</div>
204
 
</div>
205
 
<a class="anchor" id="a07583d48db4ede7eadbc3156e9dd7d3b"></a><!-- doxytag: member="bmsse4.h::VECT_BITCOUNT_OR" ref="a07583d48db4ede7eadbc3156e9dd7d3b" args="(first, last, mask)" -->
206
 
<div class="memitem">
207
 
<div class="memproto">
208
 
      <table class="memname">
209
 
        <tr>
210
 
          <td class="memname">#define VECT_BITCOUNT_OR</td>
211
 
          <td>(</td>
212
 
          <td class="paramtype">first, </td>
213
 
        </tr>
214
 
        <tr>
215
 
          <td class="paramkey"></td>
216
 
          <td></td>
217
 
          <td class="paramtype">last, </td>
218
 
        </tr>
219
 
        <tr>
220
 
          <td class="paramkey"></td>
221
 
          <td></td>
222
 
          <td class="paramtype">mask&nbsp;</td>
223
 
          <td class="paramname"></td>
224
 
          <td>&nbsp;)&nbsp;</td>
225
 
          <td>&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_or)</td>
226
 
        </tr>
227
 
      </table>
228
 
</div>
229
 
<div class="memdoc">
230
 
 
231
 
<p>Definition at line <a class="el" href="a00099_source.html#l00201">201</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
232
 
 
233
 
<p>Referenced by <a class="el" href="a00094_source.html#l03596">bm::bit_block_or_count()</a>.</p>
234
 
 
235
 
</div>
236
 
</div>
237
 
<a class="anchor" id="a98aaf230431767be4838323266d0b493"></a><!-- doxytag: member="bmsse4.h::VECT_BITCOUNT_SUB" ref="a98aaf230431767be4838323266d0b493" args="(first, last, mask)" -->
238
 
<div class="memitem">
239
 
<div class="memproto">
240
 
      <table class="memname">
241
 
        <tr>
242
 
          <td class="memname">#define VECT_BITCOUNT_SUB</td>
243
 
          <td>(</td>
244
 
          <td class="paramtype">first, </td>
245
 
        </tr>
246
 
        <tr>
247
 
          <td class="paramkey"></td>
248
 
          <td></td>
249
 
          <td class="paramtype">last, </td>
250
 
        </tr>
251
 
        <tr>
252
 
          <td class="paramkey"></td>
253
 
          <td></td>
254
 
          <td class="paramtype">mask&nbsp;</td>
255
 
          <td class="paramname"></td>
256
 
          <td>&nbsp;)&nbsp;</td>
257
 
          <td>&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_sub)</td>
258
 
        </tr>
259
 
      </table>
260
 
</div>
261
 
<div class="memdoc">
262
 
 
263
 
<p>Definition at line <a class="el" href="a00099_source.html#l00207">207</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
264
 
 
265
 
<p>Referenced by <a class="el" href="a00094_source.html#l03517">bm::bit_block_sub_count()</a>.</p>
266
 
 
267
 
</div>
268
 
</div>
269
 
<a class="anchor" id="a9954c72d227a3ca78df22a56efad6baf"></a><!-- doxytag: member="bmsse4.h::VECT_BITCOUNT_XOR" ref="a9954c72d227a3ca78df22a56efad6baf" args="(first, last, mask)" -->
270
 
<div class="memitem">
271
 
<div class="memproto">
272
 
      <table class="memname">
273
 
        <tr>
274
 
          <td class="memname">#define VECT_BITCOUNT_XOR</td>
275
 
          <td>(</td>
276
 
          <td class="paramtype">first, </td>
277
 
        </tr>
278
 
        <tr>
279
 
          <td class="paramkey"></td>
280
 
          <td></td>
281
 
          <td class="paramtype">last, </td>
282
 
        </tr>
283
 
        <tr>
284
 
          <td class="paramkey"></td>
285
 
          <td></td>
286
 
          <td class="paramtype">mask&nbsp;</td>
287
 
          <td class="paramname"></td>
288
 
          <td>&nbsp;)&nbsp;</td>
289
 
          <td>&nbsp;&nbsp;&nbsp;sse4_bit_count_op((__m128i*) (first), (__m128i*) (last), (__m128i*) (mask), sse2_xor)</td>
290
 
        </tr>
291
 
      </table>
292
 
</div>
293
 
<div class="memdoc">
294
 
 
295
 
<p>Definition at line <a class="el" href="a00099_source.html#l00204">204</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
296
 
 
297
 
<p>Referenced by <a class="el" href="a00094_source.html#l03436">bm::bit_block_xor_count()</a>.</p>
298
 
 
299
 
</div>
300
 
</div>
301
 
<a class="anchor" id="a72b713f259e0542169a1228bebadcede"></a><!-- doxytag: member="bmsse4.h::VECT_COPY_BLOCK" ref="a72b713f259e0542169a1228bebadcede" args="(dst, src, src_end)" -->
302
 
<div class="memitem">
303
 
<div class="memproto">
304
 
      <table class="memname">
305
 
        <tr>
306
 
          <td class="memname">#define VECT_COPY_BLOCK</td>
307
 
          <td>(</td>
308
 
          <td class="paramtype">dst, </td>
309
 
        </tr>
310
 
        <tr>
311
 
          <td class="paramkey"></td>
312
 
          <td></td>
313
 
          <td class="paramtype">src, </td>
314
 
        </tr>
315
 
        <tr>
316
 
          <td class="paramkey"></td>
317
 
          <td></td>
318
 
          <td class="paramtype">src_end&nbsp;</td>
319
 
          <td class="paramname"></td>
320
 
          <td>&nbsp;)&nbsp;</td>
321
 
          <td>&nbsp;&nbsp;&nbsp;sse2_copy_block((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td>
322
 
        </tr>
323
 
      </table>
324
 
</div>
325
 
<div class="memdoc">
326
 
 
327
 
<p>Definition at line <a class="el" href="a00099_source.html#l00225">225</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
328
 
 
329
 
<p>Referenced by <a class="el" href="a00094_source.html#l03301">bm::bit_block_copy()</a>.</p>
330
 
 
331
 
</div>
332
 
</div>
333
 
<a class="anchor" id="aa31c7d6d7d4cd67e1cc86c08221446ce"></a><!-- doxytag: member="bmsse4.h::VECT_INVERT_ARR" ref="aa31c7d6d7d4cd67e1cc86c08221446ce" args="(first, last)" -->
334
 
<div class="memitem">
335
 
<div class="memproto">
336
 
      <table class="memname">
337
 
        <tr>
338
 
          <td class="memname">#define VECT_INVERT_ARR</td>
339
 
          <td>(</td>
340
 
          <td class="paramtype">first, </td>
341
 
        </tr>
342
 
        <tr>
343
 
          <td class="paramkey"></td>
344
 
          <td></td>
345
 
          <td class="paramtype">last&nbsp;</td>
346
 
          <td class="paramname"></td>
347
 
          <td>&nbsp;)&nbsp;</td>
348
 
          <td>&nbsp;&nbsp;&nbsp;sse2_invert_arr(first, last);</td>
349
 
        </tr>
350
 
      </table>
351
 
</div>
352
 
<div class="memdoc">
353
 
 
354
 
<p>Definition at line <a class="el" href="a00099_source.html#l00210">210</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
355
 
 
356
 
<p>Referenced by <a class="el" href="a00094_source.html#l03039">bm::bit_invert()</a>.</p>
357
 
 
358
 
</div>
359
 
</div>
360
 
<a class="anchor" id="ae3cdeec275429ea0d60668da63e96df8"></a><!-- doxytag: member="bmsse4.h::VECT_OR_ARR" ref="ae3cdeec275429ea0d60668da63e96df8" args="(dst, src, src_end)" -->
361
 
<div class="memitem">
362
 
<div class="memproto">
363
 
      <table class="memname">
364
 
        <tr>
365
 
          <td class="memname">#define VECT_OR_ARR</td>
366
 
          <td>(</td>
367
 
          <td class="paramtype">dst, </td>
368
 
        </tr>
369
 
        <tr>
370
 
          <td class="paramkey"></td>
371
 
          <td></td>
372
 
          <td class="paramtype">src, </td>
373
 
        </tr>
374
 
        <tr>
375
 
          <td class="paramkey"></td>
376
 
          <td></td>
377
 
          <td class="paramtype">src_end&nbsp;</td>
378
 
          <td class="paramname"></td>
379
 
          <td>&nbsp;)&nbsp;</td>
380
 
          <td>&nbsp;&nbsp;&nbsp;sse2_or_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td>
381
 
        </tr>
382
 
      </table>
383
 
</div>
384
 
<div class="memdoc">
385
 
 
386
 
<p>Definition at line <a class="el" href="a00099_source.html#l00216">216</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
387
 
 
388
 
<p>Referenced by <a class="el" href="a00094_source.html#l03935">bm::bit_block_or()</a>.</p>
389
 
 
390
 
</div>
391
 
</div>
392
 
<a class="anchor" id="acefd3b9d39a2e2fb0c9d2aa5c3812e0b"></a><!-- doxytag: member="bmsse4.h::VECT_SET_BLOCK" ref="acefd3b9d39a2e2fb0c9d2aa5c3812e0b" args="(dst, dst_end, value)" -->
393
 
<div class="memitem">
394
 
<div class="memproto">
395
 
      <table class="memname">
396
 
        <tr>
397
 
          <td class="memname">#define VECT_SET_BLOCK</td>
398
 
          <td>(</td>
399
 
          <td class="paramtype">dst, </td>
400
 
        </tr>
401
 
        <tr>
402
 
          <td class="paramkey"></td>
403
 
          <td></td>
404
 
          <td class="paramtype">dst_end, </td>
405
 
        </tr>
406
 
        <tr>
407
 
          <td class="paramkey"></td>
408
 
          <td></td>
409
 
          <td class="paramtype">value&nbsp;</td>
410
 
          <td class="paramname"></td>
411
 
          <td>&nbsp;)&nbsp;</td>
412
 
          <td>&nbsp;&nbsp;&nbsp;sse2_set_block((__m128i*) dst, (__m128i*) (dst_end), (value))</td>
413
 
        </tr>
414
 
      </table>
415
 
</div>
416
 
<div class="memdoc">
417
 
 
418
 
<p>Definition at line <a class="el" href="a00099_source.html#l00228">228</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
419
 
 
420
 
</div>
421
 
</div>
422
 
<a class="anchor" id="af079345cbcb256bb6216c0446fd775f2"></a><!-- doxytag: member="bmsse4.h::VECT_SUB_ARR" ref="af079345cbcb256bb6216c0446fd775f2" args="(dst, src, src_end)" -->
423
 
<div class="memitem">
424
 
<div class="memproto">
425
 
      <table class="memname">
426
 
        <tr>
427
 
          <td class="memname">#define VECT_SUB_ARR</td>
428
 
          <td>(</td>
429
 
          <td class="paramtype">dst, </td>
430
 
        </tr>
431
 
        <tr>
432
 
          <td class="paramkey"></td>
433
 
          <td></td>
434
 
          <td class="paramtype">src, </td>
435
 
        </tr>
436
 
        <tr>
437
 
          <td class="paramkey"></td>
438
 
          <td></td>
439
 
          <td class="paramtype">src_end&nbsp;</td>
440
 
          <td class="paramname"></td>
441
 
          <td>&nbsp;)&nbsp;</td>
442
 
          <td>&nbsp;&nbsp;&nbsp;sse2_sub_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td>
443
 
        </tr>
444
 
      </table>
445
 
</div>
446
 
<div class="memdoc">
447
 
 
448
 
<p>Definition at line <a class="el" href="a00099_source.html#l00219">219</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
449
 
 
450
 
<p>Referenced by <a class="el" href="a00094_source.html#l04031">bm::bit_block_sub()</a>.</p>
451
 
 
452
 
</div>
453
 
</div>
454
 
<a class="anchor" id="a1f520ac49859f992de5c00f43b851179"></a><!-- doxytag: member="bmsse4.h::VECT_XOR_ARR" ref="a1f520ac49859f992de5c00f43b851179" args="(dst, src, src_end)" -->
455
 
<div class="memitem">
456
 
<div class="memproto">
457
 
      <table class="memname">
458
 
        <tr>
459
 
          <td class="memname">#define VECT_XOR_ARR</td>
460
 
          <td>(</td>
461
 
          <td class="paramtype">dst, </td>
462
 
        </tr>
463
 
        <tr>
464
 
          <td class="paramkey"></td>
465
 
          <td></td>
466
 
          <td class="paramtype">src, </td>
467
 
        </tr>
468
 
        <tr>
469
 
          <td class="paramkey"></td>
470
 
          <td></td>
471
 
          <td class="paramtype">src_end&nbsp;</td>
472
 
          <td class="paramname"></td>
473
 
          <td>&nbsp;)&nbsp;</td>
474
 
          <td>&nbsp;&nbsp;&nbsp;sse2_xor_arr((__m128i*) dst, (__m128i*) (src), (__m128i*) (src_end))</td>
475
 
        </tr>
476
 
      </table>
477
 
</div>
478
 
<div class="memdoc">
479
 
 
480
 
<p>Definition at line <a class="el" href="a00099_source.html#l00222">222</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
481
 
 
482
 
<p>Referenced by <a class="el" href="a00094_source.html#l04127">bm::bit_block_xor()</a>.</p>
483
 
 
484
 
</div>
485
 
</div>
486
 
<a class="anchor" id="a9b8caa31ab90cbfbc99b5728352e5456"></a><!-- doxytag: member="bmsse4.h::VECT_XOR_ARR_2_MASK" ref="a9b8caa31ab90cbfbc99b5728352e5456" args="(dst, src, src_end, mask)" -->
487
 
<div class="memitem">
488
 
<div class="memproto">
489
 
      <table class="memname">
490
 
        <tr>
491
 
          <td class="memname">#define VECT_XOR_ARR_2_MASK</td>
492
 
          <td>(</td>
493
 
          <td class="paramtype">dst, </td>
494
 
        </tr>
495
 
        <tr>
496
 
          <td class="paramkey"></td>
497
 
          <td></td>
498
 
          <td class="paramtype">src, </td>
499
 
        </tr>
500
 
        <tr>
501
 
          <td class="paramkey"></td>
502
 
          <td></td>
503
 
          <td class="paramtype">src_end, </td>
504
 
        </tr>
505
 
        <tr>
506
 
          <td class="paramkey"></td>
507
 
          <td></td>
508
 
          <td class="paramtype">mask&nbsp;</td>
509
 
          <td class="paramname"></td>
510
 
          <td>&nbsp;)&nbsp;</td>
511
 
          <td>&nbsp;&nbsp;&nbsp;sse2_xor_arr_2_mask((__m128i*)(dst), (__m128i*)(src), (__m128i*)(src_end), mask)</td>
512
 
        </tr>
513
 
      </table>
514
 
</div>
515
 
<div class="memdoc">
516
 
 
517
 
<p>Definition at line <a class="el" href="a00099_source.html#l00189">189</a> of file <a class="el" href="a00099_source.html">bmsse4.h</a>.</p>
518
 
 
519
 
</div>
520
 
</div>
521
 
</div>
522
 
<hr size="1"/><address style="text-align: right;"><small>Generated on Tue Mar 23 20:48:01 2010 for BitMagic by&nbsp;
 
69
</div>
 
70
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Apr 25 09:37:33 2010 for BitMagic by&nbsp;
523
71
<a href="http://www.doxygen.org/index.html">
524
72
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
525
73
</body>