Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
901 commits
Select commit Hold shift + click to select a range
a6a35e0
minor change for more certain success in netbsd
Mar 6, 2024
4739c76
formatting in readme
Mar 6, 2024
f7a4d41
more readme format tinkering
Mar 6, 2024
afcbd28
lets not disable warnings
Mar 6, 2024
523db60
maybe netbsd is more pedantic about this?
Mar 6, 2024
bd7423f
Add CMake options for more build granularity
Mar 6, 2024
d9a75dc
documentation: Add cmake option to build man pages
jlintonarm Feb 15, 2024
2d23d24
documentation: Update project name and copyright
jlintonarm Feb 15, 2024
943f198
documentation: Replace project name with Vectorscan and general updates
jlintonarm Feb 15, 2024
0c57b6c
pkgconfig: Correct library description
jlintonarm Feb 20, 2024
6bbd482
hsbench: Update test program output
jlintonarm Feb 20, 2024
f9e254a
Enable sheng32/64 for SVE
ypicchi-arm Feb 15, 2024
9db7b52
Merge pull request #233 from bradlarsen/develop
markos Mar 12, 2024
6b45984
Merge pull request #231 from jlinton/develop-add-man-pages
markos Mar 12, 2024
d6d7a96
incremental improvement in cleanliness
Mar 12, 2024
226645e
another small cleanup in readme
Mar 12, 2024
0045a2b
moved HAVE_BUILTIN_POPCOUNT def to cmake
Mar 12, 2024
d0498f9
typo fix
Mar 12, 2024
b006d7f
shortened freebsd text
Mar 12, 2024
1ea5376
whitespace editing in readme
Mar 13, 2024
c9b3a86
Merge pull request #234 from ypicchi-arm/feature/add-wider-sheng-impl…
markos Mar 14, 2024
f5412b3
Revert "RFC Enable sheng32/64 for SVE"
markos Mar 19, 2024
d7fb5f4
Merge pull request #235 from VectorCamp/revert-234-feature/add-wider-…
markos Mar 19, 2024
17c78ff
more verbose instructions for preparing BSD systems.
Mar 27, 2024
dc371fb
also added note for CC/CXX vars in fbsd/ppc which are different.
Mar 27, 2024
e239f48
more system prep info for bsd
Mar 27, 2024
e2ce866
some more bsd detail
Mar 27, 2024
42653b8
also sqlite info for bsd
Mar 27, 2024
e20ba37
slightly clearer comments in netbsd section
Mar 27, 2024
50a62a1
changed color output to csv output
gtsoul-tech Apr 1, 2024
b5a2915
removed color output code
gtsoul-tech Apr 2, 2024
62a275e
change first column name csv
gtsoul-tech Apr 2, 2024
3670e52
output tabulated and csv
gtsoul-tech Apr 2, 2024
c2700ca
Merge pull request #237 from gtsoul-tech/feature/microbenchmarkingCSV
markos Apr 2, 2024
773d57d
added copyright info for modified src files
Apr 11, 2024
372053b
adding libpcap to the bsd packages to install for building/running
Apr 11, 2024
d0b3991
added ccache for freebsd install recommendations
Apr 11, 2024
0376319
tiny edit to readme
Apr 15, 2024
b0916df
one more place to fix where clang in bsd is more picky than gcc in linux
Apr 15, 2024
2e86b85
first try at getting cmake to leave custom shared lib paths with the …
Apr 15, 2024
d96206a
united the static fat runtime dispatcher with the BSD support.
Apr 15, 2024
b312438
probably fixed the bit about not finding the right libs in some bsd i…
Apr 15, 2024
12e95b2
bit hacky but it works for setting rpath in freebsd
Apr 16, 2024
00b1a50
made the rpath finding a bit more flexible than just hardcoded gcc12 …
Apr 16, 2024
8172204
cmake adds newlines to variables set from command output, trashing the
Apr 16, 2024
b6b0ab1
added a fixme for the clunky rpath setting logic
Apr 16, 2024
6e306a5
removing the dispatcher.c changes from this branch/PR
Apr 16, 2024
3c04ec2
Merge pull request #232 from isildur-g/develop
markos Apr 17, 2024
3b37add
the rpath hack is only needed on arm
Apr 17, 2024
f2db0cd
gcc-14 compilation fix Closes:#245
gtsoul-tech Apr 17, 2024
51ac3a2
clang-format revert
gtsoul-tech Apr 17, 2024
1e614dc
enable the rpath hack on all gcc13, and on arm/gcc12
Apr 17, 2024
cdc0d47
Update SIMDe
markos Apr 17, 2024
6546dd8
Merge pull request #247 from gtsoul-tech/bugfix/#245
markos Apr 17, 2024
50fdcaf
readme edit
Apr 17, 2024
6a75745
Merge pull request #248 from VectorCamp/feature/update-simde
markos Apr 18, 2024
acbef47
tiny change to readme
Apr 18, 2024
cfa8397
static dispatch for fat runtimes. eliminates the need for ifunc.
Apr 19, 2024
9c52d3d
Merge pull request #246 from isildur-g/bugfix-242
markos Apr 19, 2024
c7439a6
removed LD_LIBRARY_PATH comment from readme
Apr 22, 2024
7590fdc
Merge branch 'develop' into static-fat-dispatch
isildur-g Apr 23, 2024
53015b2
Merge pull request #250 from isildur-g/static-fat-dispatch
markos Apr 23, 2024
c4bffd7
accessMoved cppcheck error
gtsoul-tech Apr 23, 2024
06fc353
unsignedLessThanZero cppcheck
gtsoul-tech Apr 23, 2024
182f7dd
useInitializationList
gtsoul-tech Apr 23, 2024
9d5753b
comparisonOfBoolWithBoolError
gtsoul-tech Apr 23, 2024
9316d65
redundantContinue
gtsoul-tech Apr 23, 2024
73e00e2
funcArgOrderDifferent
gtsoul-tech Apr 23, 2024
8d3a5d7
legacyUninitvar
gtsoul-tech Apr 23, 2024
52b0076
accessMoved
gtsoul-tech Apr 23, 2024
01dee39
ddressing some cppcheck warnings. yes this will be cleaned up in a
Apr 23, 2024
8dabc86
removed commented lines.
Apr 23, 2024
91d9631
fixed some const issues
Apr 23, 2024
d7006a7
removed another commented line
Apr 23, 2024
0894234
Merge pull request #254 from gtsoul-tech/bug/cppcheckErrors
markos Apr 24, 2024
9b9df1b
invalidPrintfArgType_sint
gtsoul-tech Apr 24, 2024
e6c8843
uninitvar
gtsoul-tech Apr 24, 2024
adda613
shiftTooManyBitsSigned
gtsoul-tech Apr 24, 2024
db07cdd
Merge pull request #255 from isildur-g/wip-isildur-g
markos Apr 24, 2024
fd3e251
redundantInitialization
gtsoul-tech Apr 24, 2024
72371a0
derefInvalidIteratorRedundantCheck
gtsoul-tech Apr 24, 2024
5dab841
badBitmaskCheck
gtsoul-tech Apr 24, 2024
11e4968
cppcheck invalidPrintfArgType_uint warnings
Apr 24, 2024
2e68780
Merge branch 'develop' into wip-isildur-g-cppcheck56
isildur-g Apr 24, 2024
e291d49
fixed merge mixup
Apr 24, 2024
7fd45f8
next batch for cppeheck, addressing syntaxError and
Apr 24, 2024
71fcade
Merge pull request #256 from gtsoul-tech/bug/cppcheckErrors
markos Apr 25, 2024
131672d
Merge pull request #257 from isildur-g/wip-isildur-g-cppcheck56
markos Apr 25, 2024
49fd4f0
Enable sheng32 and sheng64 on Arm
ypicchi-arm Apr 4, 2024
62e3450
missingOverride
gtsoul-tech Apr 29, 2024
f463357
ome of the consts couldnt be propagated and had to be reverted
Apr 29, 2024
987cd17
variableScope
gtsoul-tech Apr 29, 2024
ec8cda3
variableScopeFix
gtsoul-tech Apr 29, 2024
2a476df
fixed const adjustments.
Apr 29, 2024
bb64644
new variableScope
gtsoul-tech Apr 29, 2024
aa1955a
Merge pull request #258 from isildur-g/wip-isildur-g-cppcheck1220
markos Apr 29, 2024
2921e50
Merge pull request #259 from gtsoul-tech/bug/cppcheckErrors
markos Apr 30, 2024
b5bf3d8
unreadVariable
gtsoul-tech Apr 30, 2024
f2d8d63
Add sheng tests
ypicchi-arm Apr 4, 2024
d6e185c
Merge pull request #261 from gtsoul-tech/bug/cppCheck-41
markos Apr 30, 2024
27bb2b9
Merge pull request #239 from ypicchi-arm/feature/add-sheng-unit-tests
markos Apr 30, 2024
9902ca0
addressing 47 [constParameterReference],48 [constVariableReference],58
May 1, 2024
727cff3
Merge branch 'develop' into wip-isildur-g-cppcheck-47-48-58
isildur-g May 1, 2024
d3dd448
the merge got screwed up, this should fix it
May 1, 2024
ea42011
knownConditionTrueFalse
gtsoul-tech May 1, 2024
389b55c
refactor bool to void setDistinctTops setDistinctRoseTops
gtsoul-tech May 1, 2024
9fdbdac
Merge pull request #262 from isildur-g/wip-isildur-g-cppcheck-47-48-58
markos May 1, 2024
a634d57
knownConditionTrueFalse fixes previously fp
gtsoul-tech May 2, 2024
5ad1f21
constVariablePointer
gtsoul-tech May 2, 2024
692a63c
Merge pull request #263 from gtsoul-tech/bug/cppcheck-61
markos May 2, 2024
c7f7d17
addressing cppcheck shadowFunction warnings
May 2, 2024
13e5183
Merge branch 'develop' into wip-isildur-g-cppcheck66
isildur-g May 2, 2024
bb056ab
just a dummy commit to test something
May 5, 2024
82cf367
maybe fix broken merge
May 5, 2024
7dd2135
Merge pull request #264 from gtsoul-tech/bugFix/cppcheck-constVariabl…
markos May 8, 2024
c38bb8b
one more fixed that had been missed.
May 8, 2024
8499055
test comment
May 8, 2024
cc63087
Merge branch 'develop' into wip-isildur-g-cppcheck66
isildur-g May 9, 2024
4ff92f8
remove test comment
May 9, 2024
94b17ec
noExplicitConstructor
gtsoul-tech May 10, 2024
bdffbde
noExplicitConstructor 1 more
gtsoul-tech May 10, 2024
c70c09c
supervector
gtsoul-tech May 10, 2024
753c7de
Merge branch 'develop' into test-noExplicitConstructor
gtsoul-tech May 10, 2024
cd1e13d
Merge pull request #265 from isildur-g/wip-isildur-g-cppcheck66
markos May 10, 2024
0f61853
Fix false positive uselessAssignmentArg cppcheck warning
markos May 11, 2024
a2e66e3
replace memcpy with std::copy
markos May 11, 2024
e6595c7
Fix false positive constStatement warnings
markos May 11, 2024
9ee4c07
Fix false positive duplicateAssignExpression warnings
markos May 11, 2024
5f2f343
Fix false positive redundantAssignment warnings
markos May 11, 2024
05d86f0
Fix false positive /identicalConditionAfterEarlyExit warnings
markos May 11, 2024
c54acf0
Fix false positive truncLongCastAssignment warnings
markos May 12, 2024
a1fbe84
Fix marked as false positive knownConditionTrueFalse cppcheck warnings
markos May 12, 2024
879cc0a
nodes is never empty at this stage, emplace_back() is called just pre…
markos May 12, 2024
5affdf3
Merge branch 'develop' into bugFix/cppcheckError-noexplicitConstructor
gtsoul-tech May 13, 2024
2fa7ead
fix
gtsoul-tech May 13, 2024
6989314
revert supervector
gtsoul-tech May 13, 2024
86645e9
Merge pull request #273 from VectorCamp/bugfix/cppcheck-knownConditio…
markos May 13, 2024
cbd831e
Merge pull request #272 from VectorCamp/bugfix/cppcheck-truncLongCast…
markos May 13, 2024
77cdcec
Merge pull request #271 from VectorCamp/bugfix/cppcheck-identicalCond…
markos May 13, 2024
98bd92d
Merge pull request #270 from VectorCamp/bugfix/cppcheck-redundantAssi…
markos May 13, 2024
017acc4
Merge pull request #269 from VectorCamp/bugfix/cppcheck-duplicateAssi…
markos May 13, 2024
3a2ec52
Merge pull request #268 from VectorCamp/bugfix/cppcheck-constStatement
markos May 13, 2024
d2d8a0b
Merge pull request #267 from VectorCamp/bugfix/cppcheck-rose_build_sc…
markos May 13, 2024
6830ce2
fix conversions
gtsoul-tech May 13, 2024
0b8e863
more fixes
gtsoul-tech May 13, 2024
fc27286
fixes left_id and suffix_id
gtsoul-tech May 13, 2024
9798b57
most ptr.get() conversion
gtsoul-tech May 13, 2024
96aca18
Merge pull request #274 from gtsoul-tech/bugFix/cppcheckError-noexpli…
markos May 13, 2024
ee8bc59
x86 explicit constructor supervector
gtsoul-tech May 14, 2024
3d60d4f
arm supervector explicit constructor
gtsoul-tech May 14, 2024
9070447
ppc64el supervector explicit constructor
gtsoul-tech May 14, 2024
0258606
explicit constructor Supervector
gtsoul-tech May 14, 2024
3aa9c18
forgot some conversions SuperVector<32>
gtsoul-tech May 14, 2024
f8c576d
supervector conversion
gtsoul-tech May 14, 2024
4cefba5
phase 1 of addressing cppcheck useStlAlgorithm warnings,
May 14, 2024
bf794fa
Merge pull request #276 from gtsoul-tech/bugFix/cppcheck-noExplicitCo…
markos May 14, 2024
a255600
Merge pull request #277 from isildur-g/wip-cppcheck271
markos May 15, 2024
22166ed
Fix remaining marked as done const* cppcheck warnings
markos May 15, 2024
9577fdc
False positives duplicateExpression
markos May 15, 2024
2dc4da7
False positive knownConditionTrueFalse
markos May 15, 2024
1d4a2b2
Fix variableScope
markos May 15, 2024
4a56b9c
Fix unknownMacro
markos May 15, 2024
0cf72ef
Fix missingOverride
markos May 15, 2024
6d6d4e1
Fix unreadVariable warning
markos May 15, 2024
8260d7c
another duplicateExpression false positive
markos May 15, 2024
59a0985
remove unused variables
markos May 15, 2024
6970f8f
Merge pull request #278 from VectorCamp/bugfix/cppcheck-remaining-con…
markos May 15, 2024
db92a42
Merge pull request #279 from VectorCamp/bugfix/cppcheck-unreadVariabl…
markos May 15, 2024
d653822
the segfault we ran into, included_frag_id should be
May 16, 2024
b03699f
Merge branch 'develop' into bugfix-rose-segfault
isildur-g May 16, 2024
e819cb1
Fix C-style casts
markos May 15, 2024
8339534
Fix wrong cast in aligned_free()
markos May 16, 2024
f9df732
Merge pull request #280 from isildur-g/bugfix-rose-segfault
markos May 16, 2024
1290733
Fix C style casts in mcsheng_compile.cpp
markos May 16, 2024
59b4e08
add alternative macro without C casts to avoid Cppcheck warnings
markos May 16, 2024
da4f563
first batch of cppcheck disables and a few more stl-ifications,
May 16, 2024
4abe31c
Merge pull request #281 from VectorCamp/bugfix/cppcheck-cstyleCasts-p…
markos May 16, 2024
c482c05
next batch
May 16, 2024
f2cecfd
next batch
May 17, 2024
c038f77
last batch
May 17, 2024
22c3e3d
Merge branch 'develop' into wip-cppcheck271-part2
isildur-g May 17, 2024
3b01eff
clean up comments
May 17, 2024
2fa06dd
cStyleCasts
gtsoul-tech May 17, 2024
e261f28
cStyleCasts
gtsoul-tech May 17, 2024
84dd8de
stl'ed one more instance
May 17, 2024
97a8519
stl'ed another one
May 17, 2024
fa35853
stl'ed another.
May 17, 2024
cffe509
Merge pull request #284 from gtsoul-tech/bigFix/cppcheck-cStylecasts-…
markos May 18, 2024
a8373df
Merge pull request #285 from gtsoul-tech/bugFix/cppcheck-cStylecasts-…
markos May 18, 2024
80812ee
Fix wrong casts in pcapscan.cc
markos May 18, 2024
14deb31
Fix wrong comparison
markos May 18, 2024
06339e6
Fix casts
markos May 18, 2024
28adc07
Fix more C-style casts
markos May 18, 2024
92d5db5
remove unneeded suppression
markos May 18, 2024
40da067
Add more C style casts fixes and suppressions
markos May 18, 2024
dc18a14
Fix typo
markos May 18, 2024
e111684
fix cStyleCasts
gtsoul-tech May 20, 2024
cd39f71
Merge pull request #286 from VectorCamp/bugfix/cppcheck-fix-wrong-casts
markos May 20, 2024
7a5f271
undo that one, it breaks
May 20, 2024
dfa72ff
cstylecasts suppress,fixes
gtsoul-tech May 20, 2024
82067fd
revert a change to assert , the original logic might have been
May 20, 2024
2ec64b6
Merge pull request #283 from isildur-g/wip-cppcheck271-part2
markos May 21, 2024
fd46b72
Merge pull request #287 from gtsoul-tech/bugFix/cppcheck-cStylecasts-…
markos May 21, 2024
b312112
Merge pull request #288 from isildur-g/bugfix-assert
markos May 21, 2024
94eff4a
cstylecasts and suppressions
gtsoul-tech May 22, 2024
af39f77
cstylecast parser
gtsoul-tech May 22, 2024
938c026
Speed up truffle with 256b TBL instructions
ypicchi-arm Apr 23, 2024
0e271cc
Speed up truffle with 256b TBL instructions (#290)
markos May 23, 2024
16467fa
revert uniform cstyle suppress
gtsoul-tech May 24, 2024
cebc654
Part 5 of C-style cast cppcheck (#289)
markos May 24, 2024
c837925
Fix/Suppress remaining Cppcheck warnings (#291)
markos May 27, 2024
aa6acae
optin.performance.Padding
gtsoul-tech May 27, 2024
d23e4a1
cplusplus.Move
gtsoul-tech May 28, 2024
faa9e75
uninitialized.UndefReturn
gtsoul-tech May 29, 2024
de1697b
deadcode.DeadStores
gtsoul-tech May 30, 2024
9c0beb5
deadcode.DeadStores
gtsoul-tech May 30, 2024
c5c4c5d
clang-analyzer-cplusplus.NewDelete
gtsoul-tech May 30, 2024
85ffb2b
Fix Clang Tidy warning optin.performance.Padding (#293)
markos May 30, 2024
e36203c
remove comment
gtsoul-tech May 31, 2024
00a5ff1
clang-analyzer-core.uninitialized.UndefReturn
gtsoul-tech May 31, 2024
9987ecd
clang-analyzer-cplusplus.Move
gtsoul-tech May 31, 2024
4113a1f
Fix Clang Tidy warnings (#295)
markos May 31, 2024
8fc1a7e
Bug fix/clang tidy warnings part2 (#296)
gtsoul-tech Jun 4, 2024
834a329
Clang-tidy config (#297)
gtsoul-tech Jun 7, 2024
a68845c
Bug fix/clang tidy warnings part3 (#298)
gtsoul-tech Jun 10, 2024
0e0c9f8
Script for the clang-tidy CI (#299)
gtsoul-tech Jun 11, 2024
0f4369b
Bug fix/clang-tidy-performance (#300)
gtsoul-tech Jun 20, 2024
aa832db
Teddy macros unrolling - initial PR to test in CI (#294)
isildur-g Jun 26, 2024
cc11a3d
build/run on machines that only have SSE2 with SIMDE (#303)
isildur-g Jul 10, 2024
dd43c86
maybe fix the hsbench issue (check_ssse3 again) in sse2/simde env (#306)
isildur-g Jul 12, 2024
1dc0600
Rebar based Unit tests (#305)
gtsoul-tech Jul 24, 2024
6c8e33e
Bug fix/rebar tests (#307)
gtsoul-tech Jul 29, 2024
aa4bc24
Fix noodle SVE2 off by one bug (#309)
ypicchi-arm Aug 5, 2024
e4c49f2
Make vectorscan accept \0 starting pattern (#312)
ypicchi-arm Aug 22, 2024
de15179
hs_valid_platform: Fix check for SSE4.2 (#310)
mtremer Aug 22, 2024
5145b6d
Fix noodle sve2 off by one (#313)
ypicchi-arm Aug 29, 2024
9a3268b
Cppcheck errors fixed and suppressed (#319)
gtsoul-tech Nov 12, 2024
4f09e78
Fix regression error #317 and add unit test (#318)
gtsoul-tech Nov 13, 2024
4951b61
Fix typo in build instructions (#315)
HelixHexagon May 14, 2025
55a05e4
Fix 5.4.11's config step regression (#327)
ypicchi-arm May 14, 2025
5e62255
Clang 17+ is more restrictive on rebind<T> on MacOS/Boost, remove war…
markos May 16, 2025
7e0503c
partial_load_u64 will fail if buf == NULL/c_len == 0 (#331)
markos May 16, 2025
d90ab3a
Fixed out of bounds read in AVX512VBMI version of fdr_exec_fat_teddy …
dowgird May 18, 2025
689556d
Various cppcheck fixes (#337)
markos May 30, 2025
f7d5546
Bugfix/fix avx512vbmi regressions (#335)
markos May 30, 2025
c057c7f
Fix/fbsd gcc13 error (#338)
ValadisLiakopoulos May 31, 2025
9e9a10a
Fix double shufti's vector end false positive (#325)
ypicchi-arm Jun 11, 2025
5515fbb
cmake - guard against failed GNUCC_ARCH extraction (#339)
ibrkas01arm Jul 21, 2025
22b76d1
Feature/prepare 5.4.12 (#340)
markos Jul 22, 2025
763441b
CMakeLists: fix for powerpc
barracuda156 Sep 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#unit/gtest/gtest-all.cc,build/src/parser/Parser.cpp,build/src/parser/control_verbs.cpp
#Dont change first comment ignores specific files from clang-tidy


Checks: 'clang-analyzer-*,-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,performance-*,-performance-unnecessary-value-param,-performance-avoid-endl'
WarningsAsErrors: ''
HeaderFilterRegex: '.*'
SystemHeaders: false
FormatStyle: none
InheritParentConfig: true
User: user
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "simde"]
path = simde
url = https://github.com/simd-everywhere/simde.git
99 changes: 99 additions & 0 deletions CHANGELOG-vectorscan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Vectorscan Change Log

This is a list of notable changes to Vectorscan, in reverse chronological order. For Hyperscan Changelog, check CHANGELOG.md

## [5.4.12] 2025-07-21

Multiple changes since last release, this will be the last 100% ABI and API compatible with Hyperscan release.
Next versions will include major refactors and API extensions, it will be mostly backwards compatible however.
Without particular order, platform support is now:

* Linux (x86, Arm, Power)
* FreeBSD 14 (x86, Arm, Power)
* MacOS 14+ (x86, Arm)

In total more than 200 configurations in the CI are tested for every PR.

Other features:
- Fat Runtime supported for Arm as well (ASIMD/SVE/SVE2).
- Initial implementations for Arm SVE/SVE2 algorithms added, thanks to Yoan Picchi from Arm.
- SIMDe support added, used as an alternative backend for existing platforms, but mostly interesting for allowing Vectorscan to build in new platforms without a supported SIMD engine.
- Various speedups and optimizations.
- Cppcheck and clang-tidy fixes throughout the code, both have been added to CI for multiple configurations, but only cppcheck triggers a build failure for now.

Various bugfixes, most important listed:
- Speed up truffle with 256b TBL instructions (#290)
- Fix Clang Tidy warnings (#295)
- Clang 17+ is more restrictive on rebind<T> on MacOS/Boost, remove warning (#332)
- partial_load_u64 will fail if buf == NULL/c_len == 0 (#331)
- Bugfix/fix avx512vbmi regressions (#335)
- fix missing hs_version.h header (closes #198)
- hs_valid_platform: Fix check for SSE4.2 (#310)
- Fixed out of bounds read in AVX512VBMI version of fdr_exec_fat_teddy … (#333)
- Fix noodle SVE2 off by one bug (#313)
- Make vectorscan accept \0 starting pattern (#312)
- Fix 5.4.11's config step regression (#327)
- Fix double shufti's vector end false positive (#325)

## [5.4.11] 2023-11-19

- Refactor CMake build system to be much more modular.
- version in hs.h fell out of sync again #175
- Fix compile failures with recent compilers, namely clang-15 and gcc-13
- Fix clang 15,16 compilation errors on all platforms, refactor CMake build system #181
- Fix signed/unsigned char issue on Arm with Ragel generated code.
- Correct set_source_files_properties usage #189
- Fix build failure on Ubuntu 20.04
- Support building on Ubuntu 20.04 #180
- Require pkg-config during Cmake
- make pkgconfig a requirement #188
- Fix segfault on Fat runtimes with SVE2 code
- Move VERM16 enums to the end of the list #191
- Update README.md, add CHANGELOG-vectorscan.md and Contributors-vectorscan.md files

## [5.4.10] 2023-09-23
- Fix compilation with libcxx 16 by @rschu1ze in #144
- Fix use-of-uninitialized-value due to getData128() by @azat in #148
- Use std::vector instead of boost::container::small_vector under MSan by @azat in #149
- Feature/enable fat runtime arm by @markos in #165
- adding ifndef around HS_PUBLIC_API definition so that vectorscan can be statically linked into another shared library without exporting symbols by @jeffplaisance in #164
- Feature/backport hyperscan 2023 q3 by @markos in #169
- Prepare for 5.4.10 by @markos in #167

## [5.4.9] 2023-03-23
- Major change: Enable SVE & SVE2 builds and make it a supported architecture! (thanks to @abondarev84)
- Fix various clang-related bugs
- Fix Aarch64 bug in Parser.rl because of char signedness. Make unsigned char the default in the Parser for all architectures.
- Fix Power bug, multiple tests were failing.
- C++20 related change, use prefixed assume_aligned to avoid conflict with C++20 std::assume_aligned.

## [5.4.8] 2022-09-13
- CMake: Use non-deprecated method for finding python by @jth in #108
- Optimize vectorscan for aarch64 by using shrn instruction by @danlark1 in #113
- Fixed the PCRE download location by @pareenaverma in #116
- Bugfix/hyperscan backport 202208 by @markos in #118
- VSX optimizations by @markos in #119
- when compiling with mingw64, use __mingw_aligned_malloc() and __mingw_aligned_free() by @liquidaty in #121
- [NEON] simplify/optimize shift/align primitives by @markos in #123
- Merge develop to master by @markos in #124

## [5.4.7] 2022-05-05
- Fix word boundary assertions under C++20 by @BigRedEye in #90
- Fix all ASAN issues in vectorscan by @danlark1 in #93
- change FAT_RUNTIME to a normal option so it can be set to off by @a16bitsysop in #94
- Optimized and correct version of movemask128 for ARM by @danlark1 in #102

## [5.4.6] 2022-01-21
- Major refactoring of many engines to use internal SuperVector C++ templates library. Code size reduced to 1/3rd with no loss of performance in most cases.
- Microbenchmarking tool added for performance finetuning
- Arm Advanced SIMD/NEON fully ported. Initial work on SVE2 for a couple of engines.
- Power9 VSX ppc64le fully ported. Initial port needs some optimization.
- Clang compiler support added.
- Apple M1 support added.
- CI added, the following configurations are tested on every PR:
gcc-debug, gcc-release, clang-debug, clang-release:
Linux Intel: SSE4.2, AVX2, AVX512, FAT
Linux Arm
Linux Power9
clang-debug, clang-release:
MacOS Apple M1
49 changes: 49 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,55 @@

This is a list of notable changes to Hyperscan, in reverse chronological order.

## [5.4.2] 2023-04-19
- Roll back bugfix for github issue #350: Besides using scratch for
corresponding database, Hyperscan also allows user to use larger scratch
allocated for another database. Users can leverage this property to achieve
safe scratch usage in multi-database scenarios. Behaviors beyond these are
discouraged and results are undefined.
- Fix hsdump issue due to invalid nfa type.

## [5.4.1] 2023-02-20
- The Intel Hyperscan team is pleased to provide a bug fix release to our open source library.
Intel also maintains an upgraded version available through your Intel sales representative.
- Bugfix for issue #184: fix random char value of UTF-8.
- Bugfix for issue #291: bypass logical combination flag in hs_expression_info().
- Bugfix for issue #292: fix build error due to libc symbol parsing.
- Bugfix for issue #302/304: add empty string check for pure literal API.
- Bugfix for issue #303: fix unknown instruction error in pure literal API.
- Bugfix for issue #303: avoid memory leak in stream close stage.
- Bugfix for issue #305: fix assertion failure in DFA construction.
- Bugfix for issue #317: fix aligned allocator segment faults.
- Bugfix for issue #350: add quick validity check for scratch.
- Bugfix for issue #359: fix glibc-2.34 stack size issue.
- Bugfix for issue #360: fix SKIP flag issue in chimera.
- Bugfix for issue #362: fix one cotec check corner issue in UTF-8 validation.
- Fix other compile issues.

## [5.4.0] 2020-12-31
- Improvement on literal matcher "Fat Teddy" performance, including
support for Intel(R) AVX-512 Vector Byte Manipulation Instructions (Intel(R)
AVX-512 VBMI).
- Introduce a new 32-state shuffle-based DFA engine ("Sheng32"). This improves
scanning performance by leveraging AVX-512 VBMI.
- Introduce a new 64-state shuffle-based DFA engine ("Sheng64"). This improves
scanning performance by leveraging AVX-512 VBMI.
- Introduce a new shuffle-based hybrid DFA engine ("McSheng64"). This improves
scanning performance by leveraging AVX-512 VBMI.
- Improvement on exceptional state handling performance for LimEx NFA, including
support for AVX-512 VBMI.
- Improvement on lookaround performance with new models, including support for
AVX-512.
- Improvement on DFA state space efficiency.
- Optimization on decision of NFA/DFA generation.
- hsbench: add CSV dump support for hsbench.
- Bugfix for cmake error on Icelake under release mode.
- Bugfix in find_vertices_in_cycles() to avoid self-loop checking in SCC.
- Bugfix for issue #270: fix return value handling in chimera.
- Bugfix for issue #284: use correct free function in logical combination.
- Add BUILD_EXAMPLES cmake option to enable example code compilation. (#260)
- Some typo fixing. (#242, #259)

## [5.3.0] 2020-05-15
- Improvement on literal matcher "Teddy" performance, including support for
Intel(R) AVX-512 Vector Byte Manipulation Instructions (Intel(R) AVX-512
Expand Down
Loading