* vectorize initCustomSecret method
* revert Makefile
* pass compiling
* revert Makefile
* fix unused function warning
* do not use brace initialization for sse types
* workaround for msvc 32bit mode before vs 2013U2
* workaround before MSVC 2015
* use portable way for sse2
* Revert "use portable way for sse2"
This reverts commit 34eee07a7071ab963bd5a48e3960f40b28e209c2.
* use _mm_load_si128 for MSVC x86
* try to minimize align of custom secret
* for avx2 and sse2, optmize the prolog of XXH3_hashLong_xb_withSeed
Co-authored-by: James Z.M. Gao <gaozhiming@360.cn>
* Remove --quiet and "Loading ..." from manpage
* Remove "Loading ..." from markdown manpage
* Removing "Loading..." from code
* Update tests for "Loading..."
* Remove the remaining "Loading..." from source
Forgot about this one
* Test error message on non-existing file
* Fix a typo in a test (xxhsum vs ./xxhsum)
* Fix a typo for real. noneexistent -> nonexistent
Tested.
- Every symbol, typedef, and macro is prefixed with XXH or xxh.
- For compatibility with legacy code that messes with the internals,
XXH_OLD_NAMES can be defined to wrap the old names in macros. This
also brings back U32 and friends.
Use `__wgetmainargs()` instead of `GetCommandLineW()` and
`CommandLineToArgvW()`. While it is an internal API, aside from
declaring the function, it actually simplifies things a lot, as we can
setup a `wmain()` equivalent in a few lines.
It also avoids linking to `Shell32.dll`, which is a lot of bloat for a
simple command line utility.
Most importantly, this supports wildcards on `cmd.exe`, fixing #341.
Also improved comments and did minor cleanup.
Prevents SLP vectorization on Clang ARMv7 resulting in scalarized
multiplies.
Also should be more friendly for sizeopt. Loop should be unrolled
anyways, or the overhead of 128-bit multiplies on 32-bit outweigh
the branch a la XXH64_finalize. Needs to be benchmarked on x86.
Don't use `-mavx2 -maes` in collisions
It prevents `make test` from passing on non-x86 targets
TODO: proper Windows library flags: bfd accepts Linux flags, but
ld.lld errors on `-Wl,-soname`
Uses a table and a loop to reduce copy/paste and allow easy testing of
other hash functions. Create a wrapper and insert it into
g_hashesToBench, and it will automatically be added to the benchmark.
The hash display line has been made longer to actually fit xxHash's
names instead of clipping them. It is also configurable.
Reordered the hashLong wrappers so they aren't split by the seed init
code
Renamed XXH3_hashLong_internal to XXH3_hashLong_64b_internal to match
128-bit variant