G.E
7a5f271abe
undo that one, it breaks
2024-05-20 16:35:58 +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
0d2f9ccbaa
Fix 'unqualified call to std::move' errors in clang 15+
2023-10-03 20:24:39 +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
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
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
Justin Viiret
9cf66b6ac9
util: switch from Boost to std::unordered set/map
...
This commit replaces the ue2::unordered_{set,map} types with their STL
versions, with some new hashing utilities in util/hash.h. The new types
ue2_unordered_set<T> and ue2_unordered_map<Key, T> default to using the
ue2_hasher.
The header util/ue2_containers.h has been removed, and the flat_set/map
containers moved to util/flat_containers.h.
2017-08-21 11:14:55 +10:00
Wang, Xiang W
252eb820c4
ue-3145: make parents of included literals exclusive
2017-08-21 11:12:36 +10:00
Wang, Xiang W
86c5f7feb1
FDR: Squash buckets of included literals in FDR confirm
...
- Change the compile of literal matchers to two passes.
- Reverse the bucket assignment in FDR, bucket with longer literals has
smaller bucket id.
- Squash the buckets of included literals and jump to the the program of
included literals directly from parent literal program without going
through FDR confirm for included iterals.
2017-08-21 11:12:36 +10:00
Justin Viiret
e4788aae1a
fdr/teddy: store and dump number of strings
2017-08-21 11:10:11 +10:00
Justin Viiret
b126cbf556
fdr/teddy: simplify computing of confirm base
2017-08-21 10:39:00 +10:00
Justin Viiret
c878d5ec66
fdr: further tidy up layout
2017-08-21 10:39:00 +10:00
Justin Viiret
9bdd370163
fdr: align major structures to cachelines
2017-08-21 10:38:59 +10:00
Justin Viiret
63fe84c3f1
bytecode_ptr: add make_zeroed_bytecode_ptr
...
Rather than always zeroing memory.
2017-04-26 15:19:36 +10:00
Justin Viiret
3590f73151
fdr: use bytecode_ptr in fdr/teddy compilers
2017-04-26 15:19:36 +10:00
Justin Viiret
97516eccb6
fdr: use bytecode_ptr internally
2017-04-26 15:19:35 +10:00
Justin Viiret
1ef87c43ee
noncopyable: switch over from boost
2017-04-26 15:18:26 +10:00
Justin Viiret
1be1293491
fdr: add grey box control for flood detection
2017-04-26 14:59:22 +10:00
Matthew Barr
9363ae7486
Clear upper half of AVX register before libm call
...
Clearing the upper half of the AVX register is required before calling SSE
code to avoid AVX-to-SSE transition penalties.
2017-04-26 14:59:22 +10:00
Justin Viiret
05b5265aff
fdr: remove dead code to do with link structures
2017-04-26 14:43:43 +10:00
Wang, Xiang W
df7bc22ae0
fdr: remove confirm split and pull-back
2017-04-26 14:43:09 +10:00
Justin Viiret
12edb07f6e
fdr_compile: remove dead var
2017-04-26 14:41:29 +10:00
Justin Viiret
07a6b6510c
rose/hwlm: limit literals to eight bytes
...
Rework HWLM to work over literals of eight bytes ("medium length"),
doing confirm in the Rose interpreter.
2017-04-26 14:41:29 +10:00
Justin Viiret
22edaad1dd
fdr: compile algo/heuristics improvements
...
These changes fix a small bug in the algorithm used for bucket
assignment in FDR's compile process, and also tweak a few of the
heuristics governing it.
2017-04-26 14:41:29 +10:00
Justin Viiret
68bf473e2e
fdr: move long literal handling into Rose
...
Move the hash table used for long literal support in streaming mode from
FDR to Rose, and introduce new instructions CHECK_LONG_LIT and
CHECK_LONG_LIT_NOCASE for doing literal confirm for long literals.
This simplifies FDR confirm, and guarantees that HWLM matchers will only
be used for literals < 256 bytes long.
2016-10-28 14:52:26 +11:00
Justin Viiret
ad74f3b895
fdr: use braced init syntax for pairs
2016-07-08 10:49:59 +10:00
Justin Viiret
88e6485e75
fdr_compile: tidy up
2016-07-08 10:49:42 +10:00
Justin Viiret
57cd2331f5
fdr/teddy: switch over remaining smart ptrs
2016-07-08 10:49:35 +10:00
Justin Viiret
aebbd4f169
setupFullMultiConfs: return smart ptr
2016-07-08 10:49:31 +10:00
Justin Viiret
9953a026f8
setupFDRFloodControl: return smart ptr
2016-07-08 10:49:27 +10:00
Mohammad Abdul Awal
598f0565cf
fdr: Remove python codegen, add safezones
2016-05-18 16:22:52 +10:00
Justin Viiret
f7cdfc5e54
fdr: don't include fdr.h if not necessary
2016-05-18 16:22:41 +10:00
Justin Viiret
353f0b4da2
fdr: move fdrSize into namespace ue2 (build only)
2016-05-18 16:22:38 +10:00
Mohammad Abdul Awal
313822c157
FDR runtime simplification
...
Removed static specialisation of domains.
2015-11-20 14:44:43 +11:00
Justin Viiret
447753f148
FDR compiler: assert that all models are < 32 bits
2015-11-10 14:25:04 +11:00
Justin Viiret
a6383a54a4
assignStringsToBuckets: assert that there are lits
2015-11-10 14:25:04 +11:00
Matthew Barr
904e436f11
Initial commit of Hyperscan
2015-10-20 09:13:35 +11:00