]> git.ipfire.org Git - thirdparty/vectorscan.git/log
thirdparty/vectorscan.git
7 years agodoc: make Wikipedia hyperlinks anonymous
Justin Viiret [Tue, 7 Nov 2017 03:43:58 +0000 (14:43 +1100)] 
doc: make Wikipedia hyperlinks anonymous

7 years agodoc: make doxygen filter out HS_CDECL
Justin Viiret [Tue, 7 Nov 2017 02:47:21 +0000 (13:47 +1100)] 
doc: make doxygen filter out HS_CDECL

7 years agodoc: use doxygen @p to refer to parameters
Justin Viiret [Tue, 7 Nov 2017 02:33:01 +0000 (13:33 +1100)] 
doc: use doxygen @p to refer to parameters

7 years agodoc: clarify description of streaming API
Justin Viiret [Tue, 7 Nov 2017 01:43:26 +0000 (12:43 +1100)] 
doc: clarify description of streaming API

7 years agodoc: document that hs_close_stream frees memory
Justin Viiret [Tue, 7 Nov 2017 00:48:46 +0000 (11:48 +1100)] 
doc: document that hs_close_stream frees memory

Add explicit documentation that hs_close_stream() will free the stream
state after returning any matches.

7 years agoHamming: GraphTruth and corpus gen support
Matthew Barr [Tue, 7 Nov 2017 02:39:00 +0000 (13:39 +1100)] 
Hamming: GraphTruth and corpus gen support

7 years agoAdd support for Hamming distance approx matching
Matthew Barr [Tue, 10 Oct 2017 04:26:35 +0000 (15:26 +1100)] 
Add support for Hamming distance approx matching

7 years agoicc: disable warning about constant expression
Matthew Barr [Thu, 28 Sep 2017 04:50:14 +0000 (14:50 +1000)] 
icc: disable warning about constant expression

7 years agohsbench: sqlite output support
Matthew Barr [Wed, 27 Sep 2017 05:52:41 +0000 (15:52 +1000)] 
hsbench: sqlite output support

7 years agosqlite: disable -Werror so warnings don't kill the build
Matthew Barr [Tue, 26 Sep 2017 06:13:16 +0000 (16:13 +1000)] 
sqlite: disable -Werror so warnings don't kill the build

7 years agoMerge branch master into develop
Xiang Wang [Fri, 19 Jan 2018 10:57:38 +0000 (05:57 -0500)] 
Merge branch master into develop

7 years agoMigrated from github.com/01org to github.com/intel
Matthew Barr [Wed, 25 Oct 2017 22:40:40 +0000 (09:40 +1100)] 
Migrated from github.com/01org to github.com/intel

7 years agocmake: add a dummy c++ file to force linkage
Matthew Barr [Wed, 27 Sep 2017 01:21:01 +0000 (11:21 +1000)] 
cmake: add a dummy c++ file to force linkage

The hs dylib when built with Xcode wasn't being linked to C++ runtime
libs. Fixes #69

7 years agoMerge branch develop into master v4.6.0
Matthew Barr [Fri, 22 Sep 2017 05:20:28 +0000 (15:20 +1000)] 
Merge branch develop into master

7 years agoBump version number for release
Matthew Barr [Wed, 20 Sep 2017 04:57:46 +0000 (14:57 +1000)] 
Bump version number for release

7 years agochangelog: updates for 4.6.0 release
Matthew Barr [Wed, 20 Sep 2017 04:57:36 +0000 (14:57 +1000)] 
changelog: updates for 4.6.0 release

7 years agoDe-const the empty maps.
Matthew Barr [Fri, 22 Sep 2017 04:23:05 +0000 (14:23 +1000)] 
De-const the empty maps.

Clang 3.8 complains about attempting to default init const objects
without a user-provided constructor.

7 years agoCheck for unused typedef warning and disable
Matthew Barr [Mon, 18 Sep 2017 05:07:53 +0000 (15:07 +1000)] 
Check for unused typedef warning and disable

This affects older versions of Boost (1.58), and we were only disabling the
warning for g++.

Fixes #62.

7 years agofind_better_daddy: position change
Hong, Yang A [Mon, 28 Aug 2017 19:42:46 +0000 (03:42 +0800)] 
find_better_daddy: position change

7 years agoDon't let haigs into Tamarama
Matthew Barr [Wed, 23 Aug 2017 01:54:31 +0000 (11:54 +1000)] 
Don't let haigs into Tamarama

7 years agorose_build_add_mask: improve findMaskLiteral perf
Justin Viiret [Tue, 15 Aug 2017 03:57:43 +0000 (13:57 +1000)] 
rose_build_add_mask: improve findMaskLiteral perf

7 years agoHandle any exceptions while constructing compiler elements
Matthew Barr [Mon, 21 Aug 2017 05:23:21 +0000 (15:23 +1000)] 
Handle any exceptions while constructing compiler elements

Specifically, NG has a Rose which has a LeftEng which has a depth, which can
throw an error on construction. If we put these in the try-catch we don't
have to worry so much in future.

7 years agoteddy: alignment decl should match defn
Matthew Barr [Mon, 21 Aug 2017 05:12:36 +0000 (15:12 +1000)] 
teddy: alignment decl should match defn

Spotted by coverity. #174512

7 years agohwlm_build: default for HWLMProto::make_small
Justin Viiret [Mon, 21 Aug 2017 05:26:59 +0000 (15:26 +1000)] 
hwlm_build: default for HWLMProto::make_small

Silences Coverity warning.

7 years agorose_build_matchers: init LitFragment fields
Justin Viiret [Mon, 21 Aug 2017 05:25:04 +0000 (15:25 +1000)] 
rose_build_matchers: init LitFragment fields

Silences Coverity warning about squash, delay_squash.

7 years agodedupeLeftfixesVariableLag: refactor, more blockmode deduping
Alex Coyte [Mon, 14 Aug 2017 06:27:48 +0000 (16:27 +1000)] 
dedupeLeftfixesVariableLag: refactor, more blockmode deduping

7 years agomaintain castle report information
Alex Coyte [Wed, 16 Aug 2017 06:36:12 +0000 (16:36 +1000)] 
maintain castle report information

7 years agong_squash: switch to using unordered_map
Justin Viiret [Mon, 14 Aug 2017 02:55:28 +0000 (12:55 +1000)] 
ng_squash: switch to using unordered_map

Also some cleaning up, small performance improvements.

7 years agotidy mergeCastleSuffixes
Alex Coyte [Mon, 14 Aug 2017 00:02:47 +0000 (10:02 +1000)] 
tidy mergeCastleSuffixes

7 years agorefactor mergeCastleLeftfixes
Alex Coyte [Fri, 11 Aug 2017 04:59:07 +0000 (14:59 +1000)] 
refactor mergeCastleLeftfixes

7 years agoreimplement hasSameEngineType()
Alex Coyte [Wed, 16 Aug 2017 04:37:05 +0000 (14:37 +1000)] 
reimplement hasSameEngineType()

7 years agopartitioned_set: use lower_bound(), not scan
Justin Viiret [Wed, 16 Aug 2017 00:24:15 +0000 (10:24 +1000)] 
partitioned_set: use lower_bound(), not scan

7 years agomsvc: disable more warnings
Matthew Barr [Wed, 16 Aug 2017 05:02:26 +0000 (15:02 +1000)] 
msvc: disable more warnings

7 years agoUse an unsigned byte, not char
Matthew Barr [Wed, 16 Aug 2017 05:01:42 +0000 (15:01 +1000)] 
Use an unsigned byte, not char

7 years agoue2_literal: define npos in ue2string.cpp
Justin Viiret [Wed, 16 Aug 2017 03:13:06 +0000 (13:13 +1000)] 
ue2_literal: define npos in ue2string.cpp

7 years agofdr_compile: simplify lambda use
Justin Viiret [Wed, 16 Aug 2017 03:05:24 +0000 (13:05 +1000)] 
fdr_compile: simplify lambda use

This was failing to compile on MSVC.

7 years agomcclellancompile: simplify calc_min_dist_from_bob
Justin Viiret [Fri, 11 Aug 2017 06:08:05 +0000 (16:08 +1000)] 
mcclellancompile: simplify calc_min_dist_from_bob

7 years agomcclellancompile: don't copy dstate unnecessarily
Justin Viiret [Fri, 11 Aug 2017 05:37:55 +0000 (15:37 +1000)] 
mcclellancompile: don't copy dstate unnecessarily

7 years agoaccel_dfa_build_strat: make extend() faster
Justin Viiret [Fri, 11 Aug 2017 03:29:07 +0000 (13:29 +1000)] 
accel_dfa_build_strat: make extend() faster

7 years agounit: add PrintTo for ue2_literal
Justin Viiret [Fri, 11 Aug 2017 00:35:19 +0000 (10:35 +1000)] 
unit: add PrintTo for ue2_literal

7 years agohash: use std::hash for string hashing
Justin Viiret [Thu, 10 Aug 2017 06:58:48 +0000 (16:58 +1000)] 
hash: use std::hash for string hashing

7 years agoue2_literal: better hash function
Justin Viiret [Thu, 10 Aug 2017 05:12:28 +0000 (15:12 +1000)] 
ue2_literal: better hash function

7 years agoue2_literal: make nocase member a dynamic_bitset
Justin Viiret [Thu, 10 Aug 2017 05:02:57 +0000 (15:02 +1000)] 
ue2_literal: make nocase member a dynamic_bitset

We were previously using vector<bool>, but dynamic_bitset provides a
faster any() impl

7 years agofdr_compile: don't do string copies in isSuffix
Justin Viiret [Thu, 10 Aug 2017 03:19:26 +0000 (13:19 +1000)] 
fdr_compile: don't do string copies in isSuffix

7 years agogatherReports: fewer map lookups
Justin Viiret [Thu, 10 Aug 2017 01:48:50 +0000 (11:48 +1000)] 
gatherReports: fewer map lookups

7 years agoaccel_dfa_build_strat: use flat_set
Justin Viiret [Thu, 10 Aug 2017 01:29:19 +0000 (11:29 +1000)] 
accel_dfa_build_strat: use flat_set

7 years agosmallwrite_build: make failure_map unordered
Justin Viiret [Thu, 10 Aug 2017 01:06:13 +0000 (11:06 +1000)] 
smallwrite_build: make failure_map unordered

7 years agordfa: make getImplAlphaSize() inline
Justin Viiret [Thu, 10 Aug 2017 00:53:39 +0000 (10:53 +1000)] 
rdfa: make getImplAlphaSize() inline

7 years agocastlecompile: remove unused container
Justin Viiret [Tue, 8 Aug 2017 01:19:08 +0000 (11:19 +1000)] 
castlecompile: remove unused container

7 years agoUpdate PCRE version to 8.41
Matthew Barr [Mon, 14 Aug 2017 00:53:50 +0000 (10:53 +1000)] 
Update PCRE version to 8.41

7 years agomove mergeDupeLeaves() and uncalcLeaves() to rose_build_role_aliasing
Alex Coyte [Thu, 10 Aug 2017 05:42:26 +0000 (15:42 +1000)] 
move mergeDupeLeaves() and uncalcLeaves() to rose_build_role_aliasing

Unlike the rest of rose_build_mergem, these functions relate to merging
roles/vertices rather than merging engines.

7 years agorose merges: why not dedupe transient engines?
Alex Coyte [Wed, 9 Aug 2017 03:31:45 +0000 (13:31 +1000)] 
rose merges: why not dedupe transient engines?

We avoid merging different transient engines as it may force us to run heavier
engines and no stream state is consumed either way. However, there should be
no harm in just removing duplicate instances of a transient engine.

7 years agoremove !LBR constraints from merge passes
Alex Coyte [Thu, 10 Aug 2017 03:43:20 +0000 (13:43 +1000)] 
remove !LBR constraints from merge passes

we have either converted candidates to castles already or we have converted them
back in the hope of merging them with other holders

7 years agocmake: set isystem flag for older cmake
Matthew Barr [Thu, 10 Aug 2017 05:45:42 +0000 (15:45 +1000)] 
cmake: set isystem flag for older cmake

7 years agoicc: disable more warnings
Matthew Barr [Wed, 2 Aug 2017 01:38:14 +0000 (11:38 +1000)] 
icc: disable more warnings

7 years agocmake: use abi-version on older gcc
Matthew Barr [Thu, 10 Aug 2017 01:33:15 +0000 (11:33 +1000)] 
cmake: use abi-version on older gcc

7 years agorework mergeLeftfixesVariableLag()
Alex Coyte [Thu, 10 Aug 2017 03:28:00 +0000 (13:28 +1000)] 
rework mergeLeftfixesVariableLag()

7 years agofdr_compile: faster scoring code
Justin Viiret [Wed, 9 Aug 2017 04:04:28 +0000 (14:04 +1000)] 
fdr_compile: faster scoring code

7 years agoinsertion_ordered_{map,set}: add new containers
Justin Viiret [Fri, 4 Aug 2017 03:23:07 +0000 (13:23 +1000)] 
insertion_ordered_{map,set}: add new containers

These are associative map/set structures that are iterable in insertion
order.

7 years agoviolet: don't bother swapping holders if unable to trim graph
Alex Coyte [Tue, 8 Aug 2017 01:24:52 +0000 (11:24 +1000)] 
violet: don't bother swapping holders if unable to trim graph

7 years agoviolet: maintain a reference to all the known implementable graphs
Alex Coyte [Tue, 8 Aug 2017 00:13:46 +0000 (10:13 +1000)] 
violet: maintain a reference to all the known implementable graphs

7 years agoviolet: do not remove more states from holders if dfa has been built
Alex Coyte [Mon, 7 Aug 2017 06:41:13 +0000 (16:41 +1000)] 
violet: do not remove more states from holders if dfa has been built

7 years agoUE-3147: ensure the same squash behavior for literals shared between different litera...
Wang, Xiang W [Mon, 7 Aug 2017 14:02:53 +0000 (10:02 -0400)] 
UE-3147: ensure the same squash behavior for literals shared between different literal matchers

7 years agogroupByFragment: make fewer string copies
Justin Viiret [Fri, 4 Aug 2017 00:06:20 +0000 (10:06 +1000)] 
groupByFragment: make fewer string copies

7 years agorose_build_exclusive: clean up use of vertex indices
Justin Viiret [Thu, 3 Aug 2017 05:52:25 +0000 (15:52 +1000)] 
rose_build_exclusive: clean up use of vertex indices

7 years agolimex_compile: reduce state id lookups
Justin Viiret [Fri, 14 Jul 2017 03:01:00 +0000 (13:01 +1000)] 
limex_compile: reduce state id lookups

7 years agolimex_compile: turn tugs into a bitset
Justin Viiret [Fri, 14 Jul 2017 02:54:03 +0000 (12:54 +1000)] 
limex_compile: turn tugs into a bitset

7 years agorose_build_lookaround: use vector in trimLiterals
Justin Viiret [Thu, 3 Aug 2017 01:33:42 +0000 (11:33 +1000)] 
rose_build_lookaround: use vector in trimLiterals

7 years agorose: more hash member funcs for rose types
Justin Viiret [Mon, 31 Jul 2017 06:22:08 +0000 (16:22 +1000)] 
rose: more hash member funcs for rose types

7 years agorose: return a vector from findEdgesByLiteral
Justin Viiret [Mon, 31 Jul 2017 06:02:55 +0000 (16:02 +1000)] 
rose: return a vector from findEdgesByLiteral

7 years agorose_build_long_lit: refactor to do less dupe work
Justin Viiret [Mon, 29 May 2017 04:59:31 +0000 (14:59 +1000)] 
rose_build_long_lit: refactor to do less dupe work

Also some performance improvements.

7 years agodynamic compression: add HS_CDECL to implementation
Alex Coyte [Mon, 7 Aug 2017 03:50:21 +0000 (13:50 +1000)] 
dynamic compression: add HS_CDECL to implementation

7 years agoProvide RoseResources to roseQuality.
Alex Coyte [Mon, 31 Jul 2017 00:38:30 +0000 (10:38 +1000)] 
Provide RoseResources to roseQuality.

RoseResources is an alternative to manually digging through the bytecode.

7 years agomangle fdr conf parts of scratch as well
Alex Coyte [Fri, 28 Jul 2017 04:56:54 +0000 (14:56 +1000)] 
mangle fdr conf parts of scratch as well

7 years agoroseQuality() no longer needs to be part of rose's API.
Alex Coyte [Fri, 28 Jul 2017 04:51:58 +0000 (14:51 +1000)] 
roseQuality() no longer needs to be part of rose's API.

7 years agomore comments on hwlm/fdr's start parameter
Alex Coyte [Fri, 28 Jul 2017 04:32:55 +0000 (14:32 +1000)] 
more comments on hwlm/fdr's start parameter

7 years agoRemove out of date debug output
Matthew Barr [Sun, 6 Aug 2017 23:45:28 +0000 (09:45 +1000)] 
Remove out of date debug output

7 years agoadd dynamic stream compression to fat runtime
Alex Coyte [Sun, 6 Aug 2017 23:19:23 +0000 (09:19 +1000)] 
add dynamic stream compression to fat runtime

7 years agoRemove unwanted move constructor
Matthew Barr [Fri, 16 Jun 2017 06:06:52 +0000 (16:06 +1000)] 
Remove unwanted move constructor

7 years agoclean up loops and add AVX-512
Matthew Barr [Thu, 22 Jun 2017 00:28:44 +0000 (10:28 +1000)] 
clean up loops and add AVX-512

7 years agoOpen input path once using file descriptor
Matthew Barr [Mon, 19 Jun 2017 06:27:17 +0000 (16:27 +1000)] 
Open input path once using file descriptor

7 years agoCatch by reference not value
Matthew Barr [Mon, 19 Jun 2017 02:53:34 +0000 (12:53 +1000)] 
Catch by reference not value

7 years agouse string equality operator
Matthew Barr [Fri, 16 Jun 2017 05:56:48 +0000 (15:56 +1000)] 
use string equality operator

7 years agorestore formatting flags after use
Matthew Barr [Mon, 19 Jun 2017 05:52:08 +0000 (15:52 +1000)] 
restore formatting flags after use

7 years agohsbench: use a memstream instead of a temp file
Matthew Barr [Mon, 19 Jun 2017 05:00:51 +0000 (15:00 +1000)] 
hsbench: use a memstream instead of a temp file

7 years agoadd dynamic compression to the public api
Alex Coyte [Fri, 4 Aug 2017 01:40:28 +0000 (11:40 +1000)] 
add dynamic compression to the public api

7 years agoCMake: put the stream compress files in the correct part
Alex Coyte [Fri, 4 Aug 2017 01:08:30 +0000 (11:08 +1000)] 
CMake: put the stream compress files in the correct part

7 years agodev reference documentation for stream compression
Alex Coyte [Tue, 2 May 2017 03:16:41 +0000 (13:16 +1000)] 
dev reference documentation for stream compression

7 years agomultibit compression support
Hong, Yang A [Mon, 8 May 2017 19:56:28 +0000 (15:56 -0400)] 
multibit compression support

7 years agohsbench: add stream compress functionality
Alex Coyte [Mon, 6 Mar 2017 00:58:53 +0000 (11:58 +1100)] 
hsbench: add stream compress functionality

7 years agosupport dynamic stream compression
Alex Coyte [Tue, 14 Feb 2017 03:18:13 +0000 (14:18 +1100)] 
support dynamic stream compression

7 years agomake ComponentRepeat::vacuous_everywhere() more accurate
Alex Coyte [Wed, 2 Aug 2017 03:36:24 +0000 (13:36 +1000)] 
make ComponentRepeat::vacuous_everywhere() more accurate

7 years agomergeCastle: merge common repeats from the castles
Alex Coyte [Wed, 2 Aug 2017 03:07:24 +0000 (13:07 +1000)] 
mergeCastle: merge common repeats from the castles

7 years agomergeLeftfixesVariableLag: update comments, debugging support
Alex Coyte [Wed, 2 Aug 2017 02:54:02 +0000 (12:54 +1000)] 
mergeLeftfixesVariableLag: update comments, debugging support

7 years agoCompile dump of teddy's nibble masks and reinforcement table in fdr_dump.cpp
Chang, Harry [Thu, 27 Jul 2017 09:21:05 +0000 (17:21 +0800)] 
Compile dump of teddy's nibble masks and reinforcement table in fdr_dump.cpp

7 years agosmall_vector: require boost >= 1.61
Justin Viiret [Mon, 31 Jul 2017 02:26:45 +0000 (12:26 +1000)] 
small_vector: require boost >= 1.61

We use the small_vector constructors introduced in Boost 1.61 (trac bug
11866, github commit b436c91). If the Boost version is too old, we fall
back to using std::vector.

7 years agocmake: another convenience lib for compile side
Matthew Barr [Tue, 13 Jun 2017 04:26:24 +0000 (14:26 +1000)] 
cmake: another convenience lib for compile side

7 years agoDo equivalency removal before violet's implementablity check.
Alex Coyte [Tue, 18 Jul 2017 02:49:32 +0000 (12:49 +1000)] 
Do equivalency removal before violet's implementablity check.

This is helpful as removing/restoring literals may introduce redundancy in the
graphs. Also improve the implementation by caching known good holders.

7 years agoEnsure max width of repeat before transforming graph.
Alex Coyte [Wed, 19 Jul 2017 00:02:55 +0000 (10:02 +1000)] 
Ensure max width of repeat before transforming graph.

7 years agoRefactored building reinforcement table at compile time and updated comments.
Chang, Harry [Mon, 24 Jul 2017 09:37:42 +0000 (17:37 +0800)] 
Refactored building reinforcement table at compile time and updated comments.