]>
git.ipfire.org Git - thirdparty/vectorscan.git/log
Justin Viiret [Tue, 30 May 2017 07:30:56 +0000 (17:30 +1000)]
ng_calc_components: skip if shell has 1 path only
Justin Viiret [Fri, 23 Jun 2017 03:01:47 +0000 (13:01 +1000)]
dfa: don't clear states, just mark dfa dead
The previous change caused some assertion issues.
Justin Viiret [Thu, 22 Jun 2017 06:51:35 +0000 (16:51 +1000)]
clear_deeper_reports: clear dfa if dead
If we remove all the reports from the DFA because they're too deep, then
clear the DFA without depending on Hopcroft minimisation.
Justin Viiret [Fri, 23 Jun 2017 01:30:24 +0000 (11:30 +1000)]
rose_build_matchers: fix fragment noruns calc
Justin Viiret [Thu, 22 Jun 2017 05:21:22 +0000 (15:21 +1000)]
teddy_compile: style fixes, whitespace
Justin Viiret [Tue, 11 Apr 2017 07:05:40 +0000 (17:05 +1000)]
teddy_compile: use faster small containers
Justin Viiret [Thu, 22 Jun 2017 00:37:31 +0000 (10:37 +1000)]
rose_build_matchers: be more careful w/ mixed-case
Overhaul the way fragment literals are added to HWLM and accel, fix
some bugs shaken out by stricter mask use.
Justin Viiret [Mon, 29 May 2017 02:45:37 +0000 (12:45 +1000)]
unit-hyperscan: pure-literal/smwr coverage
Justin Viiret [Tue, 20 Jun 2017 07:34:17 +0000 (17:34 +1000)]
lookarounds: don't reconfirm bytes in hwlm mask
Justin Viiret [Tue, 20 Jun 2017 07:11:18 +0000 (17:11 +1000)]
rose: always use mandatory masks for lit fragments
Justin Viiret [Wed, 31 May 2017 03:07:22 +0000 (13:07 +1000)]
dump: always allocate >=8 bytes for multibit
The multibit runtime assumes that it is always safe to read 8 bytes, so
we must over-allocate for smaller sizes. Caught by ASan.
Justin Viiret [Mon, 15 May 2017 00:02:13 +0000 (10:02 +1000)]
dfa: standardise 'using' instead of typedef
Justin Viiret [Sun, 14 May 2017 23:54:09 +0000 (09:54 +1000)]
ng_haig: make StateMap an unordered_map
Justin Viiret [Thu, 11 May 2017 07:07:26 +0000 (17:07 +1000)]
determinise: use queue, improve api
- Use a queue rather than always building the full vector of state
sets.
- Make more use of move, emplace, reserve.
- Write directly into dstates argument.
- Return bool rather than int.
Justin Viiret [Mon, 19 Jun 2017 05:47:36 +0000 (15:47 +1000)]
fdr_confirm_compile: literals are now < 8 bytes
Justin Viiret [Fri, 9 Jun 2017 06:29:56 +0000 (16:29 +1000)]
fdr_confirm_compile: wrap comment
Justin Viiret [Fri, 9 Jun 2017 06:28:32 +0000 (16:28 +1000)]
fdr/teddy: remove padding from structures
Justin Viiret [Wed, 24 May 2017 01:24:45 +0000 (11:24 +1000)]
teddy: clean up compile to match fdr style
Justin Viiret [Wed, 24 May 2017 01:22:36 +0000 (11:22 +1000)]
fdr_confirm: renumber FDR_LIT_FLAG_NOREPEAT
Justin Viiret [Wed, 24 May 2017 01:10:39 +0000 (11:10 +1000)]
fdr/teddy: simplify computing of confirm base
Justin Viiret [Wed, 24 May 2017 00:29:28 +0000 (10:29 +1000)]
fdr_confirm: clean up use of flags
Justin Viiret [Wed, 24 May 2017 00:13:06 +0000 (10:13 +1000)]
fdr: further tidy up layout
Justin Viiret [Tue, 23 May 2017 04:44:20 +0000 (14:44 +1000)]
fdr_confirm: start FDRConfirm structs at cacheline
Justin Viiret [Tue, 23 May 2017 04:40:04 +0000 (14:40 +1000)]
teddy: align major structures to cachelines
Justin Viiret [Tue, 23 May 2017 04:28:12 +0000 (14:28 +1000)]
fdr: align major structures to cachelines
Justin Viiret [Tue, 23 May 2017 03:39:24 +0000 (13:39 +1000)]
fdr_confirm: remove dead flags
- Caseless was unused
- NoFlags is a bit redundant
Justin Viiret [Mon, 22 May 2017 03:59:16 +0000 (13:59 +1000)]
fdr_confirm: remove complex confirm
Matthew Barr [Wed, 26 Jul 2017 06:11:00 +0000 (16:11 +1000)]
Merge branch develop into master
Matthew Barr [Wed, 26 Jul 2017 04:44:28 +0000 (14:44 +1000)]
Bump version number for release
Matthew Barr [Wed, 26 Jul 2017 04:27:07 +0000 (14:27 +1000)]
changelog: updates for 4.5.2 release
Matthew Barr [Wed, 26 Jul 2017 04:01:57 +0000 (14:01 +1000)]
build: use more portable flag for mktemp
Fixes github issue #60
Matthew Barr [Thu, 29 Jun 2017 01:05:21 +0000 (11:05 +1000)]
cpuid: exclude AVX512 flag when target not enabled
If we have a fat runtime build without AVX512 enabled, we should not
pick up the AVX512 flag from cpuid.
Alex Coyte [Tue, 20 Jun 2017 00:19:32 +0000 (10:19 +1000)]
character classes: handle \Q\E and utf8
Alex Coyte [Mon, 19 Jun 2017 01:03:05 +0000 (11:03 +1000)]
Treat characters between \Q \E as codepoints in UTF8 mode.
fixes github issue #57
Matthew Barr [Fri, 16 Jun 2017 00:10:14 +0000 (10:10 +1000)]
Merge branch develop into master
Matthew Barr [Thu, 15 Jun 2017 23:51:23 +0000 (09:51 +1000)]
Bump version number for release
Matthew Barr [Thu, 15 Jun 2017 23:27:03 +0000 (09:27 +1000)]
changelog: updates for 4.5.1 release
Justin Viiret [Wed, 14 Jun 2017 06:04:26 +0000 (16:04 +1000)]
fdr_confirm_compile: fix bug in table sizing
Matthew Barr [Wed, 14 Jun 2017 02:58:51 +0000 (12:58 +1000)]
hsbench: cpuset portability
Matthew Barr [Tue, 13 Jun 2017 23:04:43 +0000 (09:04 +1000)]
hsbench: make output more clear
Matthew Barr [Tue, 13 Jun 2017 23:04:21 +0000 (09:04 +1000)]
hsbench: fix flag handling
Matthew Barr [Tue, 13 Jun 2017 03:45:52 +0000 (13:45 +1000)]
cmake: remove duplicate else()
Justin Viiret [Tue, 13 Jun 2017 00:36:11 +0000 (10:36 +1000)]
flat_set/map: workaround for gcc-4.8 C++11 defect
The STL shipped with gcc-4.8 does not provide
vector::erase(const_iterator) for C++11, instead only taking a mutable
iterator. This causes problems with flat_set/map if we don't have
Boost small_vector available and we fall back to std::vector.
We work around this by providing a function to construct a mutable
iterator given a const_iterator for internal use.
Matthew Barr [Fri, 9 Jun 2017 00:17:04 +0000 (10:17 +1000)]
Merge branch develop into master
Matthew Barr [Thu, 8 Jun 2017 23:50:23 +0000 (09:50 +1000)]
Bump version number for release
Justin Viiret [Thu, 8 Jun 2017 23:47:03 +0000 (09:47 +1000)]
changelog: updates for 4.5 release
Justin Viiret [Mon, 29 May 2017 23:47:53 +0000 (09:47 +1000)]
changelog: quote function name
Justin Viiret [Thu, 8 Jun 2017 00:33:23 +0000 (10:33 +1000)]
ng_expr_info: more complete analysis passes
Justin Viiret [Mon, 5 Jun 2017 04:33:09 +0000 (14:33 +1000)]
hs_compile: add note to hs_expression_info() docs
Successful analysis of a pattern with hs_expression_info() does not
imply that the pattern will successfully compile with hs_compile(), etc.
It is merely a utility function for pattern analysis.
Addresses Github issue #54.
Justin Viiret [Mon, 5 Jun 2017 04:38:57 +0000 (14:38 +1000)]
hs_expression_info: check unsupported constructs
Matthew Barr [Wed, 7 Jun 2017 04:45:57 +0000 (14:45 +1000)]
Use env to get python bin, don't hard code path
Matthew Barr [Wed, 7 Jun 2017 04:10:19 +0000 (14:10 +1000)]
Docs: avx512 support
Matthew Barr [Fri, 10 Mar 2017 04:48:38 +0000 (15:48 +1100)]
msvc: use the vectorcall calling convention
This requires declaring external interfaces with the cdecl
calling convention.
Matthew Barr [Wed, 7 Jun 2017 01:16:30 +0000 (11:16 +1000)]
cmake: Improve the microarch checks
Matthew Barr [Wed, 23 Nov 2016 05:43:34 +0000 (16:43 +1100)]
cmake: scope fun
Justin Viiret [Wed, 17 May 2017 04:43:15 +0000 (14:43 +1000)]
accel: limit how far we will search in findBest
Matthew Barr [Wed, 17 May 2017 03:48:13 +0000 (13:48 +1000)]
Disable part of unit test on FreeBSD 10
Matthew Barr [Tue, 16 May 2017 01:05:53 +0000 (11:05 +1000)]
If we can shift by an immediate, do it. Otherwise, don't.
Matthew Barr [Tue, 16 May 2017 00:37:19 +0000 (10:37 +1000)]
Use our intrin header
Matthew Barr [Mon, 15 May 2017 22:52:11 +0000 (08:52 +1000)]
cmake: use the correct command
Matthew Barr [Fri, 12 May 2017 01:29:58 +0000 (11:29 +1000)]
test for pthread_setaffinity_np
Only enable setting threads per core when available
Justin Viiret [Mon, 15 May 2017 04:40:11 +0000 (14:40 +1000)]
rose_build_engine_blob: rose unused data() func
We should no longer be reading out of the engine blob.
Matthew Barr [Mon, 10 Apr 2017 03:25:07 +0000 (13:25 +1000)]
gcc7: comments for falling through a switch case
GCC 7 adds a warning -Wimplicit-fallthrough to catch when falling
through a switch statement without a break. Since we actually want that
behaviour sometimes, we can add a comment so the compiler knows we
intended the fallthrough.
Matthew Barr [Wed, 10 May 2017 04:24:43 +0000 (14:24 +1000)]
cmake: build shared libs with the PIC objs
Matthew Barr [Fri, 5 May 2017 00:43:37 +0000 (10:43 +1000)]
rename pshufb to pshufb_m128
Matthew Barr [Thu, 4 May 2017 23:59:29 +0000 (09:59 +1000)]
rename vpshufb to pshufb_m256
Matthew Barr [Tue, 27 Sep 2016 06:01:08 +0000 (16:01 +1000)]
avx512: shufti
Matthew Barr [Wed, 14 Sep 2016 06:09:47 +0000 (16:09 +1000)]
avx512: truffle
Matthew Barr [Mon, 8 Aug 2016 00:55:52 +0000 (10:55 +1000)]
avx512: noodle
Matthew Barr [Wed, 14 Dec 2016 00:47:28 +0000 (11:47 +1100)]
avx512 fat runtime support: experimental
Matthew Barr [Tue, 4 Oct 2016 00:18:10 +0000 (11:18 +1100)]
avx512: CPU detection and platform hints
Matthew Barr [Wed, 20 Jul 2016 01:31:34 +0000 (11:31 +1000)]
avx512: add basic functions to simd_utils
Extends the m512 type to use avx512 and also changes required
for limex.
Matthew Barr [Tue, 9 May 2017 01:20:47 +0000 (11:20 +1000)]
Allow the full cpuid flags for fat runtimes
Matthew Barr [Tue, 11 Apr 2017 04:27:59 +0000 (14:27 +1000)]
hsbench: output max throughput result
Matthew Barr [Tue, 28 Mar 2017 00:15:55 +0000 (11:15 +1100)]
debug: use before set
Matthew Barr [Tue, 27 Sep 2016 05:56:40 +0000 (15:56 +1000)]
Header guards
Matthew Barr [Thu, 30 Mar 2017 23:38:03 +0000 (10:38 +1100)]
De-multiaccel
Alex Coyte [Mon, 8 May 2017 00:51:19 +0000 (10:51 +1000)]
deterministic assembleProgramBlocks()
Matthew Barr [Thu, 4 May 2017 00:37:45 +0000 (10:37 +1000)]
hsbench: use boost:crc for db filename
Matthew Barr [Wed, 3 May 2017 04:47:01 +0000 (14:47 +1000)]
whitespace changes
Justin Viiret [Tue, 2 May 2017 01:54:22 +0000 (11:54 +1000)]
ng_equivalence: use flat_set for VertexInfoSet
Justin Viiret [Tue, 2 May 2017 00:20:59 +0000 (10:20 +1000)]
smallwrite: remove unnecessary assertion
The alpha remap array is always big enough to remap characters. Silences
Coverity issue CID 167663.
Alex Coyte [Mon, 1 May 2017 03:31:09 +0000 (13:31 +1000)]
smwr: more aggressive pruning of overlong paths in NFA
Alex Coyte [Mon, 1 May 2017 01:33:37 +0000 (11:33 +1000)]
determinisation: cleanups, remove shrinkStateSet
Justin Viiret [Mon, 1 May 2017 05:08:06 +0000 (15:08 +1000)]
ng_depth: modernize findLoopReachable
Justin Viiret [Mon, 1 May 2017 04:57:05 +0000 (14:57 +1000)]
ng_depth: rename calcDepth functions, return vec
Alex Coyte [Mon, 1 May 2017 06:09:10 +0000 (16:09 +1000)]
rose: rework storage of extra lookaround information
- remove explicit lookaround table from bytecode
- make the RoseInstr responsible for adding required info to blob
Justin Viiret [Mon, 1 May 2017 04:21:51 +0000 (14:21 +1000)]
verify_types: add type static assertions
Justin Viiret [Wed, 26 Apr 2017 07:22:22 +0000 (17:22 +1000)]
verify_types: throw on failure
In release builds, we would like a verify_u32 (etc) failure to be more
than just an assertion.
Alex Coyte [Thu, 27 Apr 2017 05:42:02 +0000 (15:42 +1000)]
pass roleStateIndices by reference
Alex Coyte [Thu, 27 Apr 2017 03:58:55 +0000 (13:58 +1000)]
Strengthen assert to indicate that q->end is less than q->cur
Coverity CID-167665
Justin Viiret [Wed, 26 Apr 2017 05:12:27 +0000 (15:12 +1000)]
rose: replace RoseLiteralMap use of bimap
This apoproach is simpler and more efficient for cases with large
numbers of literals.
Justin Viiret [Sun, 23 Apr 2017 23:27:16 +0000 (09:27 +1000)]
rose: remove hasLiteral()
Justin Viiret [Sun, 23 Apr 2017 23:26:35 +0000 (09:26 +1000)]
ue2_literal: add hash_value()
Alex Coyte [Wed, 26 Apr 2017 03:45:31 +0000 (13:45 +1000)]
rose: shift program construction functions to rose_build_program
Justin Viiret [Wed, 26 Apr 2017 01:21:19 +0000 (11:21 +1000)]
rose_build: move dedupe analysis into own file
Justin Viiret [Mon, 24 Apr 2017 04:58:20 +0000 (14:58 +1000)]
report_manager: more use of unordered_map
Justin Viiret [Mon, 24 Apr 2017 04:40:47 +0000 (14:40 +1000)]
report_manager: use unordered externalIdMap
Alex Coyte [Wed, 26 Apr 2017 00:38:55 +0000 (10:38 +1000)]
split out instruction details to own files
Alex Coyte [Tue, 25 Apr 2017 23:31:04 +0000 (09:31 +1000)]
rose_program: merge RECORD_ANCHORED instruction into ANCHORED_DELAY