diff options
author | Keith Bostic <keith@wiredtiger.com> | 2014-11-13 10:39:44 -0500 |
---|---|---|
committer | Keith Bostic <keith@wiredtiger.com> | 2014-11-13 10:39:44 -0500 |
commit | 9849d92e649c991b7f29e2bc94db33c273356a6d (patch) | |
tree | b0804fe7f707b7117a73a0d2d031b9d54347bd65 /src/support/cksum.c | |
parent | 51520ae2c7d93a854597e5dc254e3b65aad58304 (diff) | |
download | mongo-9849d92e649c991b7f29e2bc94db33c273356a6d.tar.gz |
The Intel link no longer works, update with the name of the paper.
Diffstat (limited to 'src/support/cksum.c')
-rw-r--r-- | src/support/cksum.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/src/support/cksum.c b/src/support/cksum.c index 1eaa345d1fe..fc4725bcfbc 100644 --- a/src/support/cksum.c +++ b/src/support/cksum.c @@ -24,6 +24,18 @@ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. */ +/* + * Slicing-by-8 algorithm by Michael E. Kounavis and Frank L. Berry, described + * in "Novel Table Lookup-Based Algorithms for High-Performance CRC Generation", + * IEEE Transactions on Computers, Volume 57 Issue 11, November 2008. + * + * See also Peter Kanowski's posting: + * http://www.strchr.com/crc32_popcnt + * + * The big endian version calculates the same result at each step, except the + * value of the crc is byte reversed from what it would be at that step for + * little endian. + */ #include "wt_internal.h" @@ -1093,17 +1105,6 @@ static const uint32_t g_crc_slicing[8][256] = { /* * __wt_cksum_sw -- * Return a checksum for a chunk of memory, computed in software. - * - * Slicing-by-8 algorithm by Michael E. Kounavis and Frank L. Berry from - * Intel Corp.: - * http://www.intel.com/technology/comms/perfnet/download/CRC_generators.pdf - * - * Based on Peter Kanowski's posting: - * http://www.strchr.com/crc32_popcnt - * - * The big endian version calculates the same result at each step, except the - * value of the crc is byte reversed from what it would be at that step for - * little endian. */ static uint32_t __wt_cksum_sw(const void *chunk, size_t len) |