Commit Graph

1909 Commits

Author SHA1 Message Date
Yann Collet
b1f76e5990 more clearly identify error when there is no input 2025-01-22 09:49:08 -08:00
Yann Collet
f5a0b6fa8f Merge pull request #1004 from Cyan4973/usan_fix
attempt to silence a recent ubsan warning with code reorganization
2025-01-22 09:34:22 -08:00
Yann Collet
71e797bd8c add XXH_NOESCAPE 2025-01-21 20:55:25 -08:00
Yann Collet
c3e587a1ca attempt to silence a recent ubsan warning with code reorganization
apparently, UBSAN uses the prototype of the inner inlined function
instead of the outer shell of the function.
Let's see if one indirection level is enough to fix this.
2025-01-21 17:28:25 -08:00
Yann Collet
1bf7bc4af2 Merge pull request #993 from walterdejong/xxhsum-help
Xxhsum improved help
2025-01-21 11:51:35 -08:00
Yann Collet
d5422ce901 Merge pull request #997 from Cyan4973/nostreamtest
fix nostreamtest
2025-01-21 11:51:18 -08:00
Yann Collet
51fa4ef151 Merge pull request #996 from 24bit-xjkp/dev
feat(xxhash3): Support LASX instruction set and refactor LSX implement
2025-01-17 09:57:12 -08:00
Yann Collet
26f622122f fix nostreamtest 2025-01-13 16:50:45 -08:00
24bit-xjkp
7d6bd4ea09 feat(xsum): Display which mode is complied in the welcome message for LoongArch
1. Display the mode which is used as below:
"loongarch64 + lasx" -> LoongArch64 platform with LoongArch Advanced SIMD Extension
"loongarch64 + lsx"  -> LoongArch64 platform with LoongArch SIMD Extension
"loongarch64"        -> LoongArch64 platform, use scalar implement
2. Align the define in xxhash.h
2025-01-13 11:30:39 +08:00
24bit-xjkp
63e083c539 feat(xxhash3): Support LASX instruction set and refactor LSX implement
1. Use __lsx_vmul_d dircetly instead of using 2 32-bit multiply to emulate a 64-bit multiply.
2. Add LASX support.
2025-01-12 19:33:18 +08:00
Yann Collet
36cd8bfe01 Merge pull request #994 from sunpoet/dev
Update MANDIR for FreeBSD
2025-01-05 06:58:04 -08:00
Po-Chuan Hsieh
867e8752f3 Update MANDIR for FreeBSD
FreeBSD uses share/man/ rather than man/ now.

Reference:	https://cgit.freebsd.org/ports/tree/devel/xxhash/Makefile#n17
2025-01-04 19:35:30 +08:00
Walter de Jong
f90089f90b Revert "help is basically lying about omitting filename"
This reverts commit 1c54e8abc3.
2025-01-02 10:15:56 +01:00
Walter de Jong
1c54e8abc3 help is basically lying about omitting filename 2025-01-02 09:09:38 +01:00
Walter de Jong
6d39e97f25 cleanup newline 2025-01-02 08:56:04 +01:00
Walter de Jong
5920111153 consistency typo 2025-01-02 08:55:26 +01:00
Walter de Jong
540433885f align help message 2025-01-02 08:54:53 +01:00
Walter de Jong
7d49d13b41 help message shows option --files-from 2025-01-02 08:51:38 +01:00
Yann Collet
1ac318b264 Merge pull request #990 from Cyan4973/xxh3_finalize
Extract finalization from XXH3 hashLong
2024-12-27 17:58:57 -08:00
easyaspi314
a8d6ff0e13 Extract finalization from XXH3 hashLong 2024-12-27 17:37:17 -08:00
Yann Collet
abae92fe33 Merge pull request #989 from Cyan4973/xxh_leg_refactor
Modernize XXH32/XXH64
2024-12-27 17:36:42 -08:00
Yann Collet
4dd799c922 fix static analyzer warnings
they are suspicious that some tests on unsigned values might wrap around.
They should not, but let's write these branches differently to also cover these cases.
2024-12-27 17:15:50 -08:00
easyaspi314
bca2d275b2 Modernize XXH32/XXH64
- Fix the state structs to use unsigned char, update names
 - Extract the algorithm steps into inline subroutines
 - Fix a theoretical integer overflow bug
 - Reroll XXH64 on 32-bit (it is going to run like crap anyway)
2024-12-27 16:28:26 -08:00
Yann Collet
86f6400a2a updated CHANGELOG for v0.8.3 2024-12-27 02:11:10 -08:00
Yann Collet
2d70d4c00c Merge pull request #988 from Cyan4973/cmake310
update cmake minimum version to 3.10
2024-12-26 22:58:43 -08:00
Yann Collet
43d8f7987d update cmake minimum version test on github actions to 3.10 2024-12-26 22:38:18 -08:00
Yann Collet
81a5efc7e5 update cmake minimum version to 3.10 2024-12-26 22:27:10 -08:00
Yann Collet
67bba310c7 Merge pull request #987 from Cyan4973/libxxh_dispatch
LIBXXH_DISPATCH: control runtime vector dispatch in `libxxhash`
2024-12-26 20:06:57 -08:00
Yann Collet
9ff12f6797 control runtime dispatch in the library via separate variable LIBXXH_DISPATCH
disabled by default (in contrast with `DISPATCH`, which is enabled by default, for `xxhsum`).
2024-12-26 18:51:36 -08:00
Yann Collet
8aa8944b27 Merge pull request #983 from Cyan4973/mingw64_og
Added -Og test to mingw on Github Actions
2024-12-26 17:58:46 -08:00
Yann Collet
574aabad87 document XXH_NO_INLINE_HINTS as being useful for -Og
some compiler versions may require it.
2024-12-26 17:06:27 -08:00
Yann Collet
5dd119795e fix -Og test, by adding -DXXH_NO_INLINE_HINTS 2024-12-26 17:01:02 -08:00
Yann Collet
71891a0bda Added -Og test to mingw GA test 2024-12-26 16:53:08 -08:00
Yann Collet
cf9e2dc589 Merge pull request #986 from Cyan4973/autovec_x86
enable by default runtime detection of vector extension on x86/64 target
2024-12-26 16:47:48 -08:00
Yann Collet
5c6dd83b42 removed the XXH_X86DISPATCH_ALLOW_AVX build variable
if the program is compiled with, for example, -mavx2,
then the resulting binary will simply require this instruction set to run.
2024-12-26 16:24:09 -08:00
Yann Collet
5a8de81527 make XXH_VECTOR values more accessible
via #include "xxhash.h"
to fix double-include issues in xsum_arch.c
2024-12-26 16:10:04 -08:00
Yann Collet
cfd77237e6 updated doc 2024-12-26 16:02:40 -08:00
Yann Collet
877d9e5092 enable runtime detection of vector extension on x86/64 target 2024-12-26 15:25:51 -08:00
Yann Collet
6fe4f191b6 Merge pull request #985 from Cyan4973/autovec_rtdiag
xxhsum with auto-dispatch displays the locally detected vector extension
2024-12-26 11:36:23 -08:00
Yann Collet
4b9ca605cf fix mingw32 test
the file statement just changed
2024-12-26 03:36:50 -08:00
Yann Collet
f9ea49e107 ensure that the file test in mingw ci test displays its outcome 2024-12-26 03:25:13 -08:00
Yann Collet
6bdecb5f88 fix newline minor warning 2024-12-26 02:29:15 -08:00
Yann Collet
dbcc17f87e fix cmake recipe 2024-12-26 02:26:02 -08:00
Yann Collet
ad392603bc fixed empty translation unit 2024-12-26 02:21:46 -08:00
Yann Collet
6c666adcdc xxhsum with auto-dispatch displays the locally detected vector extension
using command -V
ex: compiled as 64-bit x86 autoVec (AVX2 detected) little endian with GCC 13.3.0
2024-12-26 01:55:05 -08:00
Yann Collet
2bf8313b93 Merge pull request #903 from Cyan4973/notFullyInlined
Ensure XXH_INLINE_ALL fully inlines all XXH32_ and XXH64_ symbols
2024-12-05 08:22:07 -08:00
Yann Collet
c5a6a14676 only enforce inlining of XXH64_finalize() when XXH_INLINE_ALL is enabled 2024-12-05 00:44:07 -05:00
Yann Collet
e876423360 fixed XXH64_finalize() not being inlined
even though `XXH_INLINE_ALL` is set
on `gcc-11`.
2024-12-04 11:13:54 -05:00
Yann Collet
61509f29b4 added a test that can catch if any XXH64_ symbol is not inlined
even though XXH_INLINE_ALL is set
2024-12-04 11:13:54 -05:00
Yann Collet
52a6f91461 Merge pull request #978 from Cyan4973/filelist
added --filelist command
2024-12-04 07:33:44 -08:00