]> git.ipfire.org Git - thirdparty/vectorscan.git/log
thirdparty/vectorscan.git
8 years agorose_in_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:17:04 +0000 (13:17 +1000)] 
rose_in_dump: use StdioFile

8 years agong_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:15:07 +0000 (13:15 +1000)] 
ng_dump: use StdioFile

8 years agotamarama_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:11:54 +0000 (13:11 +1000)] 
tamarama_dump: use StdioFile

8 years agoshengdump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:10:40 +0000 (13:10 +1000)] 
shengdump: use StdioFile

8 years agompv_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:09:16 +0000 (13:09 +1000)] 
mpv_dump: use StdioFile

8 years agomcsheng_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:07:39 +0000 (13:07 +1000)] 
mcsheng_dump: use StdioFile

8 years agomcclellandump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 03:06:26 +0000 (13:06 +1000)] 
mcclellandump: use StdioFile

8 years agolimex_dump: use StdioFile, tidy
Justin Viiret [Thu, 29 Jun 2017 03:03:52 +0000 (13:03 +1000)] 
limex_dump: use StdioFile, tidy

8 years agolbr_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 02:56:55 +0000 (12:56 +1000)] 
lbr_dump: use StdioFile

8 years agogoughdump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 02:54:26 +0000 (12:54 +1000)] 
goughdump: use StdioFile

8 years agogoughcompile_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 02:52:14 +0000 (12:52 +1000)] 
goughcompile_dump: use StdioFile

8 years agocastle_dump: use StdioFile
Justin Viiret [Thu, 29 Jun 2017 02:46:56 +0000 (12:46 +1000)] 
castle_dump: use StdioFile

8 years agonoodle: behave like our other literal matchers
Matthew Barr [Tue, 30 May 2017 05:54:51 +0000 (15:54 +1000)] 
noodle: behave like our other literal matchers

Noodle now supports supplementary masks.

8 years agoMove hwlm literal len define
Matthew Barr [Mon, 26 Jun 2017 00:15:49 +0000 (10:15 +1000)] 
Move hwlm literal len define

8 years agonoodle: we don't need memcpy
Matthew Barr [Tue, 30 May 2017 06:26:13 +0000 (16:26 +1000)] 
noodle: we don't need memcpy

8 years agonoodle: Use a sane temp buf for streaming
Matthew Barr [Tue, 30 May 2017 06:12:41 +0000 (16:12 +1000)] 
noodle: Use a sane temp buf for streaming

8 years agohwlm_dump: take base filename, like NFA dump API
Justin Viiret [Mon, 26 Jun 2017 04:39:46 +0000 (14:39 +1000)] 
hwlm_dump: take base filename, like NFA dump API

8 years agofdr/teddy: dump confirm lit load
Justin Viiret [Mon, 26 Jun 2017 01:15:29 +0000 (11:15 +1000)] 
fdr/teddy: dump confirm lit load

8 years agodump_util: richer StdioFile type
Justin Viiret [Mon, 26 Jun 2017 04:25:44 +0000 (14:25 +1000)] 
dump_util: richer StdioFile type

8 years agodump: move openStdioFile() to util/dump_util.h
Justin Viiret [Mon, 26 Jun 2017 00:48:25 +0000 (10:48 +1000)] 
dump: move openStdioFile() to util/dump_util.h

8 years agorose: dump lit tables in their own files
Justin Viiret [Mon, 26 Jun 2017 00:05:03 +0000 (10:05 +1000)] 
rose: dump lit tables in their own files

8 years agofdr/teddy: store and dump number of strings
Justin Viiret [Fri, 23 Jun 2017 06:32:10 +0000 (16:32 +1000)] 
fdr/teddy: store and dump number of strings

8 years agofdr_dump: dump FDRConfirm structures for fdr
Justin Viiret [Thu, 15 Jun 2017 03:28:54 +0000 (13:28 +1000)] 
fdr_dump: dump FDRConfirm structures for fdr

8 years agoReinforced Teddy with 1-byte approach, based on "shift-or" and AVX2.
Chang, Harry [Sun, 22 Jan 2017 20:23:25 +0000 (12:23 -0800)] 
Reinforced Teddy with 1-byte approach, based on "shift-or" and AVX2.

8 years agong_misc_opt: improve performance in large cases
Justin Viiret [Wed, 31 May 2017 06:11:52 +0000 (16:11 +1000)] 
ng_misc_opt: improve performance in large cases

8 years agong_misc_opt: remove dead code
Justin Viiret [Wed, 31 May 2017 06:07:26 +0000 (16:07 +1000)] 
ng_misc_opt: remove dead code

8 years agong_cyclic_redundancy: persist colour map
Justin Viiret [Thu, 1 Jun 2017 04:40:04 +0000 (14:40 +1000)] 
ng_cyclic_redundancy: persist colour map

8 years agong_small_literal_set: pre-check for narrow reach
Justin Viiret [Tue, 20 Jun 2017 03:49:46 +0000 (13:49 +1000)] 
ng_small_literal_set: pre-check for narrow reach

8 years agong_mcclellan: use flat_set in triggerAllowed()
Justin Viiret [Mon, 5 Jun 2017 06:53:55 +0000 (16:53 +1000)] 
ng_mcclellan: use flat_set in triggerAllowed()

8 years agong_literal_analysis: reserve space for fwd_edges
Justin Viiret [Fri, 2 Jun 2017 01:26:59 +0000 (11:26 +1000)] 
ng_literal_analysis: reserve space for fwd_edges

8 years agong_literal_decorated: remove unused header
Justin Viiret [Mon, 5 Jun 2017 05:39:08 +0000 (15:39 +1000)] 
ng_literal_decorated: remove unused header

8 years agong_literal_decorated: pre-check for narrow reach
Justin Viiret [Wed, 31 May 2017 00:27:24 +0000 (10:27 +1000)] 
ng_literal_decorated: pre-check for narrow reach

8 years agong_violet: skip analysis on graphs with wide reach
Justin Viiret [Tue, 30 May 2017 07:09:03 +0000 (17:09 +1000)] 
ng_violet: skip analysis on graphs with wide reach

8 years agong_calc_components: check tail shell too
Justin Viiret [Wed, 7 Jun 2017 04:15:10 +0000 (14:15 +1000)] 
ng_calc_components: check tail shell too

8 years agong_calc_components: skip if shell has 1 path only
Justin Viiret [Tue, 30 May 2017 07:30:56 +0000 (17:30 +1000)] 
ng_calc_components: skip if shell has 1 path only

8 years agodfa: don't clear states, just mark dfa dead
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.

8 years agoclear_deeper_reports: clear dfa if dead
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.

8 years agorose_build_matchers: fix fragment noruns calc
Justin Viiret [Fri, 23 Jun 2017 01:30:24 +0000 (11:30 +1000)] 
rose_build_matchers: fix fragment noruns calc

8 years agoteddy_compile: style fixes, whitespace
Justin Viiret [Thu, 22 Jun 2017 05:21:22 +0000 (15:21 +1000)] 
teddy_compile: style fixes, whitespace

8 years agoteddy_compile: use faster small containers
Justin Viiret [Tue, 11 Apr 2017 07:05:40 +0000 (17:05 +1000)] 
teddy_compile: use faster small containers

8 years agorose_build_matchers: be more careful w/ mixed-case
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.

8 years agounit-hyperscan: pure-literal/smwr coverage
Justin Viiret [Mon, 29 May 2017 02:45:37 +0000 (12:45 +1000)] 
unit-hyperscan: pure-literal/smwr coverage

8 years agolookarounds: don't reconfirm bytes in hwlm mask
Justin Viiret [Tue, 20 Jun 2017 07:34:17 +0000 (17:34 +1000)] 
lookarounds: don't reconfirm bytes in hwlm mask

8 years agorose: always use mandatory masks for lit fragments
Justin Viiret [Tue, 20 Jun 2017 07:11:18 +0000 (17:11 +1000)] 
rose: always use mandatory masks for lit fragments

8 years agodump: always allocate >=8 bytes for multibit
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.

8 years agodfa: standardise 'using' instead of typedef
Justin Viiret [Mon, 15 May 2017 00:02:13 +0000 (10:02 +1000)] 
dfa: standardise 'using' instead of typedef

8 years agong_haig: make StateMap an unordered_map
Justin Viiret [Sun, 14 May 2017 23:54:09 +0000 (09:54 +1000)] 
ng_haig: make StateMap an unordered_map

8 years agodeterminise: use queue, improve api
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.

8 years agofdr_confirm_compile: literals are now < 8 bytes
Justin Viiret [Mon, 19 Jun 2017 05:47:36 +0000 (15:47 +1000)] 
fdr_confirm_compile: literals are now < 8 bytes

8 years agofdr_confirm_compile: wrap comment
Justin Viiret [Fri, 9 Jun 2017 06:29:56 +0000 (16:29 +1000)] 
fdr_confirm_compile: wrap comment

8 years agofdr/teddy: remove padding from structures
Justin Viiret [Fri, 9 Jun 2017 06:28:32 +0000 (16:28 +1000)] 
fdr/teddy: remove padding from structures

8 years agoteddy: clean up compile to match fdr style
Justin Viiret [Wed, 24 May 2017 01:24:45 +0000 (11:24 +1000)] 
teddy: clean up compile to match fdr style

8 years agofdr_confirm: renumber FDR_LIT_FLAG_NOREPEAT
Justin Viiret [Wed, 24 May 2017 01:22:36 +0000 (11:22 +1000)] 
fdr_confirm: renumber FDR_LIT_FLAG_NOREPEAT

8 years agofdr/teddy: simplify computing of confirm base
Justin Viiret [Wed, 24 May 2017 01:10:39 +0000 (11:10 +1000)] 
fdr/teddy: simplify computing of confirm base

8 years agofdr_confirm: clean up use of flags
Justin Viiret [Wed, 24 May 2017 00:29:28 +0000 (10:29 +1000)] 
fdr_confirm: clean up use of flags

8 years agofdr: further tidy up layout
Justin Viiret [Wed, 24 May 2017 00:13:06 +0000 (10:13 +1000)] 
fdr: further tidy up layout

8 years agofdr_confirm: start FDRConfirm structs at cacheline
Justin Viiret [Tue, 23 May 2017 04:44:20 +0000 (14:44 +1000)] 
fdr_confirm: start FDRConfirm structs at cacheline

8 years agoteddy: align major structures to cachelines
Justin Viiret [Tue, 23 May 2017 04:40:04 +0000 (14:40 +1000)] 
teddy: align major structures to cachelines

8 years agofdr: align major structures to cachelines
Justin Viiret [Tue, 23 May 2017 04:28:12 +0000 (14:28 +1000)] 
fdr: align major structures to cachelines

8 years agofdr_confirm: remove dead flags
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

8 years agofdr_confirm: remove complex confirm
Justin Viiret [Mon, 22 May 2017 03:59:16 +0000 (13:59 +1000)] 
fdr_confirm: remove complex confirm

8 years agoMerge branch develop into master v4.5.2
Matthew Barr [Wed, 26 Jul 2017 06:11:00 +0000 (16:11 +1000)] 
Merge branch develop into master

8 years agoBump version number for release
Matthew Barr [Wed, 26 Jul 2017 04:44:28 +0000 (14:44 +1000)] 
Bump version number for release

8 years agochangelog: updates for 4.5.2 release
Matthew Barr [Wed, 26 Jul 2017 04:27:07 +0000 (14:27 +1000)] 
changelog: updates for 4.5.2 release

8 years agobuild: use more portable flag for mktemp
Matthew Barr [Wed, 26 Jul 2017 04:01:57 +0000 (14:01 +1000)] 
build: use more portable flag for mktemp

Fixes github issue #60

8 years agocpuid: exclude AVX512 flag when target not enabled
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.

8 years agocharacter classes: handle \Q\E and utf8
Alex Coyte [Tue, 20 Jun 2017 00:19:32 +0000 (10:19 +1000)] 
character classes: handle \Q\E and utf8

8 years agoTreat characters between \Q \E as codepoints in UTF8 mode.
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

8 years agoMerge branch develop into master v4.5.1
Matthew Barr [Fri, 16 Jun 2017 00:10:14 +0000 (10:10 +1000)] 
Merge branch develop into master

8 years agoBump version number for release
Matthew Barr [Thu, 15 Jun 2017 23:51:23 +0000 (09:51 +1000)] 
Bump version number for release

8 years agochangelog: updates for 4.5.1 release
Matthew Barr [Thu, 15 Jun 2017 23:27:03 +0000 (09:27 +1000)] 
changelog: updates for 4.5.1 release

8 years agofdr_confirm_compile: fix bug in table sizing
Justin Viiret [Wed, 14 Jun 2017 06:04:26 +0000 (16:04 +1000)] 
fdr_confirm_compile: fix bug in table sizing

8 years agohsbench: cpuset portability
Matthew Barr [Wed, 14 Jun 2017 02:58:51 +0000 (12:58 +1000)] 
hsbench: cpuset portability

8 years agohsbench: make output more clear
Matthew Barr [Tue, 13 Jun 2017 23:04:43 +0000 (09:04 +1000)] 
hsbench: make output more clear

8 years agohsbench: fix flag handling
Matthew Barr [Tue, 13 Jun 2017 23:04:21 +0000 (09:04 +1000)] 
hsbench: fix flag handling

8 years agocmake: remove duplicate else()
Matthew Barr [Tue, 13 Jun 2017 03:45:52 +0000 (13:45 +1000)] 
cmake: remove duplicate else()

8 years agoflat_set/map: workaround for gcc-4.8 C++11 defect
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.

8 years agoMerge branch develop into master v4.5.0
Matthew Barr [Fri, 9 Jun 2017 00:17:04 +0000 (10:17 +1000)] 
Merge branch develop into master

8 years agoBump version number for release
Matthew Barr [Thu, 8 Jun 2017 23:50:23 +0000 (09:50 +1000)] 
Bump version number for release

8 years agochangelog: updates for 4.5 release
Justin Viiret [Thu, 8 Jun 2017 23:47:03 +0000 (09:47 +1000)] 
changelog: updates for 4.5 release

8 years agochangelog: quote function name
Justin Viiret [Mon, 29 May 2017 23:47:53 +0000 (09:47 +1000)] 
changelog: quote function name

8 years agong_expr_info: more complete analysis passes
Justin Viiret [Thu, 8 Jun 2017 00:33:23 +0000 (10:33 +1000)] 
ng_expr_info: more complete analysis passes

8 years agohs_compile: add note to hs_expression_info() docs
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.

8 years agohs_expression_info: check unsupported constructs
Justin Viiret [Mon, 5 Jun 2017 04:38:57 +0000 (14:38 +1000)] 
hs_expression_info: check unsupported constructs

8 years agoUse env to get python bin, don't hard code path
Matthew Barr [Wed, 7 Jun 2017 04:45:57 +0000 (14:45 +1000)] 
Use env to get python bin, don't hard code path

8 years agoDocs: avx512 support
Matthew Barr [Wed, 7 Jun 2017 04:10:19 +0000 (14:10 +1000)] 
Docs: avx512 support

8 years agomsvc: use the vectorcall calling convention
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.

8 years agocmake: Improve the microarch checks
Matthew Barr [Wed, 7 Jun 2017 01:16:30 +0000 (11:16 +1000)] 
cmake: Improve the microarch checks

8 years agocmake: scope fun
Matthew Barr [Wed, 23 Nov 2016 05:43:34 +0000 (16:43 +1100)] 
cmake: scope fun

9 years agoaccel: limit how far we will search in findBest
Justin Viiret [Wed, 17 May 2017 04:43:15 +0000 (14:43 +1000)] 
accel: limit how far we will search in findBest

9 years agoDisable part of unit test on FreeBSD 10
Matthew Barr [Wed, 17 May 2017 03:48:13 +0000 (13:48 +1000)] 
Disable part of unit test on FreeBSD 10

9 years agoIf we can shift by an immediate, do it. Otherwise, don't.
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.

9 years agoUse our intrin header
Matthew Barr [Tue, 16 May 2017 00:37:19 +0000 (10:37 +1000)] 
Use our intrin header

9 years agocmake: use the correct command
Matthew Barr [Mon, 15 May 2017 22:52:11 +0000 (08:52 +1000)] 
cmake: use the correct command

9 years agotest for pthread_setaffinity_np
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

9 years agorose_build_engine_blob: rose unused data() func
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.

9 years agogcc7: comments for falling through a switch case
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.

9 years agocmake: build shared libs with the PIC objs
Matthew Barr [Wed, 10 May 2017 04:24:43 +0000 (14:24 +1000)] 
cmake: build shared libs with the PIC objs

9 years agorename pshufb to pshufb_m128
Matthew Barr [Fri, 5 May 2017 00:43:37 +0000 (10:43 +1000)] 
rename pshufb to pshufb_m128

9 years agorename vpshufb to pshufb_m256
Matthew Barr [Thu, 4 May 2017 23:59:29 +0000 (09:59 +1000)] 
rename vpshufb to pshufb_m256