freebsd-skq/tests/sys/kern
Conrad Meyer 6be2ff7d3e calculate_crc32c: Add SSE4.2 implementation on x86
Derived from an implementation by Mark Adler.

The fast loop performs three simultaneous CRCs over subsets of the data
before composing them.  This takes advantage of certain properties of
the CRC32 implementation in Intel hardware.  (The CRC instruction takes 1
cycle but has 2-3 cycles of latency.)

The CRC32 instruction does not manipulate FPU state.

i386 does not have the crc32q instruction, so avoid it there.  Otherwise
the implementation is identical to amd64.

Add basic userland tests to verify correctness on a variety of inputs.

PR:		216467
Reported by:	Ben RUBSON <ben.rubson at gmail.com>
Reviewed by:	kib@, markj@ (earlier version)
Sponsored by:	Dell EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D9342
2017-01-31 03:26:32 +00:00
..
acct Fix typo in r312216 2017-01-15 10:29:53 +00:00
execve Follow up to r312118 2017-01-14 05:24:35 +00:00
pipe Use type-independent formats for printing nlink_t and ino_t. 2017-01-06 16:59:33 +00:00
coredump_phnum_helper.c Add test case for >65535 segment coredumps 2016-11-01 19:18:16 +00:00
coredump_phnum_test.sh coredump_phnum_test: Make expected pheader count more flexible 2016-12-04 03:50:57 +00:00
kern_copyin.c Fix comment. We have different VM layout on MIPS, so test is skipped. 2016-10-18 10:20:58 +00:00
kern_descrip_test.c kern_descrip_test: Fix trivial buffer overrun with readlink(2) 2016-05-12 03:44:29 +00:00
libkern_crc32.c calculate_crc32c: Add SSE4.2 implementation on x86 2017-01-31 03:26:32 +00:00
Makefile calculate_crc32c: Add SSE4.2 implementation on x86 2017-01-31 03:26:32 +00:00
Makefile.depend DIRDEPS_BUILD: Connect MK_TESTS. 2016-03-09 22:46:01 +00:00
Makefile.inc Add include Makefiles for tests/sys/{fs,kern,kqueue,mac}/... 2017-01-14 20:21:21 +00:00
ptrace_test.c Add PTRACE_VFORK to trace vfork events. 2016-07-18 14:53:55 +00:00
reaper.c reaper: Make REAPER_KILL_SUBTREE actually work. 2016-12-14 22:49:20 +00:00
unix_passfd_test.c Rename recvfd and sendfd variables in recvfd/sendfd functions to avoid 2015-12-30 18:13:43 +00:00
unix_seqpacket_test.c - Remove unused but set ssize in shutdown_send_sigpipe 2015-12-28 02:34:59 +00:00
waitpid_nohang.c wait: Do not copyout uninitialized status/rusage/wrusage. 2016-09-09 21:58:48 +00:00