Commit Graph

1036 Commits

Author SHA1 Message Date
Yann Collet
f41dc60ff1 updated comments on _withSecret() variants
re-inforce the need for a high entropy source for `secret`.
2020-06-24 17:03:00 -07:00
Yann Collet
abf93128fc
Merge pull request #405 from erijo/dispatch-defines
Dispatch defines
2020-06-23 09:29:45 -07:00
Yann Collet
2b8da903c9
Merge pull request #404 from erijo/ndebug
Fix redefinition warning when NDEBUG is defined during build
2020-06-23 09:22:35 -07:00
Erik Johansson
3ad5c01625 Make xxh_x86dispatch build without XXH_DISPATCH_AVX2 defined 2020-06-23 11:38:09 +02:00
Erik Johansson
2b5c61dabf Fix build when XXH_DISPATCH_AVX512 isn't defined
This makes it possible to disable AVX512 by removing the define.
2020-06-23 11:16:53 +02:00
Erik Johansson
516867a44d Fix redefinition warning when NDEBUG is defined during build 2020-06-23 10:49:27 +02:00
Yann Collet
8256aef21b
Merge pull request #399 from Cyan4973/direct_kSecret
fixed performance issue reported in #398
2020-06-22 09:57:28 -07:00
Yann Collet
3bdc590879
Merge pull request #396 from Cyan4973/bsdStyle
introduced --tag for BSD-style output
2020-06-22 09:46:32 -07:00
Yann Collet
fc46fa46c0
Merge pull request #397 from Cyan4973/libdispatch
allow optional compilation of libxxhash with DISPATCH=1
2020-06-20 08:31:27 -07:00
Yann Collet
49a4dd0c43 benchhash : removed fractional part 2020-06-20 07:52:56 -07:00
Yann Collet
ec2d1a7ec0 removed fractional part of bench measurement
to simplify importation
2020-06-20 00:08:42 -07:00
Yann Collet
71566dfcee fixed performance issue reported in #398
also : fixed XXH128_withSecret(),
which was messed up with default `kSecret`.
This error remained unnoticed because their was no test for this variant.
Added a test in `xxhsum` checking results of `XXH128_withSecret()`
2020-06-19 15:59:23 -07:00
Yann Collet
744f7b01a4 DISPATCH=1 for make install 2020-06-19 13:18:39 -07:00
Yann Collet
9836059130 blindfix for windows compilation
`const`ify parameters
2020-06-18 17:17:09 -07:00
Yann Collet
5f44a42668 allow optional compilation of libxxhash with DISPATCH=1
embedding the `*_dispatch()` symbols into the library.
2020-06-18 16:33:29 -07:00
Yann Collet
00833b2631 fixed incorrect assert 2020-06-18 16:13:13 -07:00
Yann Collet
a7a617584c introduced --tag for BSD-style output
hidden option for the time being (undocumented)
as it's only an output format,
there is no ability to `-c` check it yet.

The effort was however useful in refactoring `xxhsum` code base.

One advantage of the `--tag` BSD format is
that it's a lot safer to introduce additional formats.
For example, little and big-endian variants can co-exist safely,
since endianess is clearly expressed as part of the algorithm name.
It would also make it possible to introduce XXH3 (later),
even though it's 64-bit, which would be confusing with XXH64.

Also :
added ability to select algorithm by specifying bit width.
Hence :
H0 == H32 ==> XXH32
H1 == H64 ==> XXH64
H2 == H128==> XXH128
2020-06-18 16:00:10 -07:00
Yann Collet
1320ac8a4e minor refactor : simplify hash printing function
using function pointer.
2020-06-18 14:24:27 -07:00
Yann Collet
2e88626a2c minor refactor
check scenario with input size == exact nb of blocks
though not a multiple of 256 (streaming internal buffer size)
2020-06-18 12:39:53 -07:00
Yann Collet
dcb83c8cc3
Merge pull request #394 from WayneD/dev
Some Makefile improvements
2020-06-17 10:55:26 -07:00
Wayne Davison
059164ed44 One more use of $(UNAME). 2020-06-17 10:08:36 -07:00
Wayne Davison
4e07b33c48 One more tweak reverted. 2020-06-17 10:01:41 -07:00
Wayne Davison
bf73e464a7
Merge branch 'dev' into dev 2020-06-17 09:59:26 -07:00
Yann Collet
7259193bde
Merge pull request #392 from Cyan4973/sfvCompat
compatibility with turbosfv
2020-06-17 08:58:04 -07:00
Yann Collet
a93ed1691e
Merge pull request #393 from Cyan4973/cygwin
added make install target for cygwin
2020-06-17 08:57:54 -07:00
Wayne Davison
7dd0334054 Some Makefile improvements
- Fix identification of Cygwin/MSYS/MINGW "OS" that have $(OS) of
  Windows% but shouldn't obey the Windows rules.
- Add Cygwin to the list of validated installs. I ran install as:
  `PREFIX=/usr make install`
- The uninstall target now removes the xxh3.h file.
2020-06-16 23:48:02 -07:00
Yann Collet
7716de4154 updated welcome string in dispatch mode
will now display "autoVec"
instead of baseline vector instruction set
2020-06-15 17:09:39 -07:00
Yann Collet
fa216f04a2 added make install for cygwin
fix #356
2020-06-15 16:45:15 -07:00
Yann Collet
bd6fc63283 added test 2020-06-15 10:39:24 -07:00
Yann Collet
fc52938c5f compatibility with turbosfv
as requested in
https://github.com/Cyan4973/xxHash/issues/382#issuecomment-641978062
2020-06-15 10:16:39 -07:00
Yann Collet
4cdfe2f442
Merge pull request #390 from Cyan4973/newBench
Updated benchmark module
2020-06-15 10:06:54 -07:00
Yann Collet
6090b0d18b fixed XXH128_stream performance with DISPATCH=1 2020-06-12 19:05:21 -07:00
Yann Collet
c1d70f5dd6 fixed XXH3_stream performance with DISPATCH 2020-06-12 18:59:12 -07:00
Yann Collet
dd79edee44 added XXH3_stream and XXH128_stream targets 2020-06-12 18:35:20 -07:00
Yann Collet
de0fe16fc7 disable staticAnalyze
it makes no sense for this test to fail now
on a completely unrelated part of the code base.
2020-06-12 18:11:01 -07:00
Yann Collet
e6683d935f fixed a completely unrelated malloc potential error 2020-06-12 16:19:51 -07:00
Yann Collet
c5867346ee bench: can select multiple variants
using comma separated IDs
2020-06-12 15:07:20 -07:00
Yann Collet
57377539bf can select multiple variants to benchmark
For example, `xxhsum -b1 -b2` will benchmark XXH32 in both aligned and unaligned mode.

Also : modified default list,
now only test main variants (XXH32, XXH64, XXH3 and XXH128).

Also : -bi0 makes it possible to generate a very quick (though inaccurate) evaluation.
2020-06-12 14:52:46 -07:00
Yann Collet
167e0c87b5 -bi0 makes a quick evaluation
modified make check to take advantage of -bi0 (faster test)
2020-06-12 12:25:15 -07:00
Yann Collet
f05d7987b6 print benchID 2020-06-12 11:39:51 -07:00
Yann Collet
c5f497e3c3 updated CHANGELOG
in preparation of v0.7.4
2020-06-12 09:49:57 -07:00
Yann Collet
37d484267a name instruction set in travisCI tests 2020-06-11 21:29:15 -07:00
Yann Collet
afed27cc26
Merge pull request #387 from Cyan4973/x86dispatch_table
Intel vector instruction dispatcher
2020-06-11 20:34:31 -07:00
Yann Collet
972ae45bf5 Merge branch 'dev' into x86dispatch_table 2020-06-11 17:52:14 -07:00
Yann Collet
27e33ac174
Merge pull request #386 from Cyan4973/kdf
Key Derivation function
2020-06-11 17:50:51 -07:00
Yann Collet
8dff3b89ee moved XXH3_generateSecret() into experimental section
so that its outcome remain non-binding
even after XXH3 / XXH128 get stabilized.
2020-06-11 17:22:58 -07:00
Yann Collet
8debcdc6f1 added documentation about DISPATCH environment variable 2020-06-11 00:26:38 -07:00
Yann Collet
f99ef4fd62 added environment variable DISPATCH 2020-06-11 00:13:06 -07:00
Yann Collet
125710950d fix avx512 dispatch 2020-06-11 00:01:39 -07:00
Yann Collet
0e67407e71 adding test for make dispatch 2020-06-10 19:10:43 -07:00