150 Commits

Author SHA1 Message Date
g. economou
aa832db892
Teddy macros unrolling - initial PR to test in CI (#294)
Major refactoring of teddy and teddy_avx2, unrolling macros to C++ templated functions

---------

Co-authored-by: G.E <gregory.economou@vectorcamp.gr>
2024-06-26 22:35:33 +03:00
gtsoul-tech
0f4369bf22
Bug fix/clang-tidy-performance (#300)
Various clang-tidy-performance fixes:
* noexcept
* performance-noexcept-swap
* performance
* performance-move-const-arg
* performance-unnecessary-value-param
* performance-inefficient-vector-operation
* performance-no-int-to-ptr
* add performance
* performance-inefficient-string-concatenation
* clang-analyzer-deadcode.DeadStores
* performance-inefficient-vector-operation
* clang-analyzer-core.NullDereference
* clang-analyzer-core.UndefinedBinaryOperatorResult
* clang-analyzer-core.CallAndMessage

---------

Co-authored-by: gtsoul-tech <gtsoulkanakis@gmail.com>
2024-06-20 14:57:19 +03:00
gtsoul-tech
a68845c82b
Bug fix/clang tidy warnings part3 (#298)
* clang-analyzer-deadcode.DeadStores

* clang-analyzer-optin.performance.Padding

---------

Co-authored-by: gtsoul-tech <gtsoulkanakis@gmail.com>
2024-06-10 10:08:54 +03:00
Konstantinos Margaritis
c837925087
Fix/Suppress remaining Cppcheck warnings (#291)
Fix/suppress the following cppcheck warnings:

* arithOperationsOnVoidPointer
* uninitMember
* const*
* shadowVariable
* assignmentIntegerToAddress
* containerOutOfBounds
* pointer-related warnings in Ragel source
* missingOverride
* memleak
* knownConditionTrueFalse
* noExplicitConstructor
* invalidPrintfArgType_sint
* useStlAlgorithm
* cstyleCast
* clarifyCondition
* VSX-related cstyleCast
* unsignedLessThanZero 

Furthermore, we added a suppression list to be used, which also includes the following:
* missingIncludeSystem
* missingInclude
* unmatchedSuppression
2024-05-27 12:23:02 +03:00
Konstantinos Margaritis
fd46b72a18
Merge pull request #287 from gtsoul-tech/bugFix/cppcheck-cStylecasts-Part4
Part 4 of C-style cast cppcheck
2024-05-21 15:59:51 +03:00
gtsoul-tech
dfa72ffd50 cstylecasts suppress,fixes 2024-05-20 17:09:30 +03:00
G.E
7a5f271abe undo that one, it breaks 2024-05-20 16:35:58 +03:00
gtsoul-tech
e111684bc2 fix cStyleCasts 2024-05-20 14:54:35 +03:00
G.E
fa358535be stl'ed another. 2024-05-18 00:02:43 +03:00
g. economou
22c3e3da6e
Merge branch 'develop' into wip-cppcheck271-part2 2024-05-17 11:08:09 +03:00
G.E
da4f563a24 first batch of cppcheck disables and a few more stl-ifications,
involving use of accumulate() .
2024-05-16 23:01:17 +03:00
Konstantinos Margaritis
e819cb1100 Fix C-style casts 2024-05-16 12:03:42 +03:00
Konstantinos Margaritis
db92a42681
Merge pull request #279 from VectorCamp/bugfix/cppcheck-unreadVariable-others
Fix marked as done cppcheck warnings unreadVariable & others
2024-05-15 23:18:02 +03:00
Konstantinos Margaritis
6d6d4e1013 Fix unreadVariable warning 2024-05-15 17:05:50 +03:00
Konstantinos Margaritis
22166ed948 Fix remaining marked as done const* cppcheck warnings 2024-05-15 10:52:31 +03:00
Konstantinos Margaritis
e6595c72aa Fix false positive constStatement warnings 2024-05-11 23:11:29 +03:00
g. economou
727cff3621
Merge branch 'develop' into wip-isildur-g-cppcheck-47-48-58 2024-05-01 10:59:59 +03:00
G.E
9902ca0e34 addressing 47 [constParameterReference],48 [constVariableReference],58
[constVariable]
2024-05-01 10:54:15 +03:00
Konstantinos Margaritis
aa1955a368
Merge pull request #258 from isildur-g/wip-isildur-g-cppcheck1220
Wip cppcheck1220
2024-04-29 21:58:13 +03:00
G.E
7fd45f864c next batch for cppeheck, addressing syntaxError and
constParameterPointer
2024-04-24 17:32:09 +03:00
gtsoul-tech
5dab841cea badBitmaskCheck 2024-04-24 15:50:55 +03:00
Konstantinos Margaritis
0d2f9ccbaa Fix 'unqualified call to std::move' errors in clang 15+ 2023-10-03 20:24:39 +03:00
Konstantinos Margaritis
842e680650 clang 14 makes some test failed because val is uninitialized 2023-03-22 21:39:03 +02:00
Vectorcamp
2231f7c024 compile fixes for vsc port 2021-10-14 13:53:55 +03:00
Konstantinos Margaritis
e35b88f2c8 use STL make_unique, remove wrapper header, breaks C++17 compilation 2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
556206f138 replace push_back by emplace_back where possible 2021-10-12 11:51:33 +03:00
Konstantinos Margaritis
d3ff893871 prefetch works best when addresses are 64-byte aligned 2021-10-12 11:50:32 +03:00
Konstantinos Margaritis
521f233cfd Revert "replace long macro and switch statement with function pointer array and branchless execution"
This reverts commit cc9dfed2494d709aac79051c29adb0a563903ba9.
2021-10-12 11:50:32 +03:00
Konstantinos Margaritis
92916e311f replace long macro and switch statement with function pointer array and branchless execution 2021-10-12 11:50:32 +03:00
Konstantinos Margaritis
27bd09454f use correct function names for AVX512, fix build failure 2021-02-15 13:54:19 +02:00
Chang, Harry
56cb107005 AVX512VBMI Fat Teddy. 2021-01-25 14:13:13 +02:00
Konstantinos Margaritis
87413fbff0 optimize get_conf_stride_1() 2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
4686ac47b6 replace andn() by explicit bitops and group loads/stores, gives ~1% gain 2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
b62247a36e borrow cache prefetching tricks from the Marvell port, seem to improve performance by 5-28% 2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
39945b7775 clear zones array 2020-12-03 19:30:50 +02:00
Konstantinos Margaritis
17ab42d891 small optimization that was for some reason failing in ARM, should be faster anyway 2020-11-24 17:59:42 +02:00
Konstantinos Margaritis
5333467249 fix names, use own intrinsic instead of explicit _mm* ones 2020-09-23 11:51:21 +03:00
Konstantinos Margaritis
9f3ad89ed6 move andn helper function to bitutils.h 2020-09-22 12:17:27 +03:00
Chang, Harry
e665e959a0 Revert to AVX2 Fat Teddy instead of AVX512 reinforced Fat Teddy. 2020-05-25 13:47:53 +00:00
Chang, Harry
43204dda48 AVX512VBMI Teddy. 2020-05-25 13:47:53 +00:00
Hong, Yang A
23e5f06594 add new Literal API for pure literal expressions:
Design compile time api hs_compile_lit() and hs_compile_lit_multi()
to handle pure literal pattern sets. Corresponding option --literal-on
is added for hyperscan testing suites. Extended parameters and part of
flags are not supported for this api.
2019-08-13 14:51:38 +08:00
Mostafa Nazari
92edc37c1f BUGFIX: fix Numerical result out of range error
Fix Error errno=34,  fix Numerical result out of range error
issue: https://github.com/intel/hyperscan/issues/155
2019-08-13 14:49:24 +08:00
Hong, Yang A
f68723a606 literal matching: separate path for pure literal patterns 2019-01-21 09:59:22 +08:00
Matthew Barr
5fc2c803a2 teddy: alignment decl should match defn
Spotted by coverity. #174512
2017-09-18 13:29:34 +10:00
Justin Viiret
85c8822dd1 fdr_compile: simplify lambda use
This was failing to compile on MSVC.
2017-09-18 13:29:33 +10:00
Justin Viiret
36136f1003 fdr_compile: don't do string copies in isSuffix 2017-09-18 13:26:05 +10:00
Justin Viiret
164e5a929f fdr_compile: faster scoring code 2017-08-21 11:25:21 +10:00
Alex Coyte
41783fe912 more comments on hwlm/fdr's start parameter 2017-08-21 11:23:41 +10:00
Chang, Harry
404f739811 Compile dump of teddy's nibble masks and reinforcement table in fdr_dump.cpp 2017-08-21 11:18:43 +10:00
Chang, Harry
72d21a9acf Refactored building reinforcement table at compile time and updated comments. 2017-08-21 11:14:59 +10:00