]>
git.ipfire.org Git - thirdparty/vectorscan.git/log
Justin Viiret [Thu, 16 Jun 2016 06:08:48 +0000 (16:08 +1000)]
rose: pick up more prefix->lookaround conversions
Justin Viiret [Tue, 14 Jun 2016 05:22:07 +0000 (15:22 +1000)]
rose build: dedupe hasLastByteHistorySucc func
Justin Viiret [Wed, 15 Jun 2016 00:33:51 +0000 (10:33 +1000)]
eod: move stream eod code to stream.c
Justin Viiret [Tue, 14 Jun 2016 23:47:24 +0000 (09:47 +1000)]
eod: tidy up, rename to roseStreamEodExec
Justin Viiret [Tue, 14 Jun 2016 23:35:48 +0000 (09:35 +1000)]
block: unify roseBlockExec and roseBlockExec_i
Justin Viiret [Tue, 14 Jun 2016 07:13:35 +0000 (17:13 +1000)]
block: move matcher invocations into functions
Justin Viiret [Tue, 14 Jun 2016 06:58:13 +0000 (16:58 +1000)]
rose: inline block-mode eod check
Justin Viiret [Tue, 14 Jun 2016 04:25:52 +0000 (14:25 +1000)]
roseEnginesEod: trust the queue structure
Justin Viiret [Tue, 14 Jun 2016 04:22:42 +0000 (14:22 +1000)]
roseSuffixesEod: trust the queue structure
Justin Viiret [Tue, 14 Jun 2016 03:39:41 +0000 (13:39 +1000)]
eod: retire getELiteralMatcher
Justin Viiret [Tue, 14 Jun 2016 01:47:02 +0000 (11:47 +1000)]
rose_build_bytecode: clean up
Justin Viiret [Tue, 14 Jun 2016 00:56:30 +0000 (10:56 +1000)]
eod: tidy runtime
Justin Viiret [Tue, 14 Jun 2016 00:39:02 +0000 (10:39 +1000)]
move eod iter program into general eod program
Justin Viiret [Tue, 14 Jun 2016 00:01:28 +0000 (10:01 +1000)]
eod: move hwlm execution into MATCHER_EOD instr
Justin Viiret [Fri, 10 Jun 2016 06:10:03 +0000 (16:10 +1000)]
rose_build_bytecode: tidy up addPredBlocks
Justin Viiret [Fri, 10 Jun 2016 04:51:15 +0000 (14:51 +1000)]
eod: more suffix iteration into program
Justin Viiret [Fri, 10 Jun 2016 01:49:08 +0000 (11:49 +1000)]
eod: remove forced sparse iter optimization
Justin Viiret [Fri, 10 Jun 2016 01:39:22 +0000 (11:39 +1000)]
eod: don't force sparse iter for general prog
Justin Viiret [Fri, 10 Jun 2016 00:09:15 +0000 (10:09 +1000)]
eod: consolidate eod anchor programs
Justin Viiret [Thu, 9 Jun 2016 04:41:15 +0000 (14:41 +1000)]
eod: move engine checks into ENGINES_EOD instr
Justin Viiret [Thu, 9 Jun 2016 04:19:01 +0000 (14:19 +1000)]
eod: stop passing both scratch and state around
Matthew Barr [Wed, 8 Jun 2016 15:57:08 +0000 (01:57 +1000)]
Only omit frame pointers on 32bit release builds
Frame pointers are very useful for debugging and testing, and only
really make a difference to performance on IA32.
Justin Viiret [Wed, 1 Jun 2016 04:47:37 +0000 (14:47 +1000)]
fdr: remove unused typedef 'ConfirmIndex'
Justin Viiret [Thu, 28 Apr 2016 23:40:44 +0000 (09:40 +1000)]
fdr: use braced init syntax for pairs
Justin Viiret [Thu, 28 Apr 2016 06:34:48 +0000 (16:34 +1000)]
teddy compile: rename loop var for readability
Justin Viiret [Tue, 5 Apr 2016 06:34:06 +0000 (16:34 +1000)]
TeddySet: doesn't need a reference to lits
Justin Viiret [Fri, 1 Apr 2016 06:34:27 +0000 (17:34 +1100)]
fdr_confirm_compile: clean up debugging code
Justin Viiret [Tue, 1 Mar 2016 23:32:40 +0000 (10:32 +1100)]
teddy_compile: modernise
Justin Viiret [Tue, 1 Mar 2016 23:23:31 +0000 (10:23 +1100)]
fdr_compile: tidy up
Justin Viiret [Tue, 1 Mar 2016 23:15:48 +0000 (10:15 +1100)]
fdr_streaming_compile: modernise loops, etc
Justin Viiret [Tue, 1 Mar 2016 05:46:25 +0000 (16:46 +1100)]
fdr/teddy: switch over remaining smart ptrs
Justin Viiret [Tue, 1 Mar 2016 05:35:09 +0000 (16:35 +1100)]
setupFullMultiConfs: return smart ptr
Justin Viiret [Tue, 1 Mar 2016 05:29:50 +0000 (16:29 +1100)]
setupFDRFloodControl: return smart ptr
Justin Viiret [Tue, 1 Mar 2016 04:56:18 +0000 (15:56 +1100)]
fdr_confirm_compile: clean up for loops, iterators
Justin Viiret [Tue, 1 Mar 2016 04:47:41 +0000 (15:47 +1100)]
fdr_confirm_compile: typedef -> using
Justin Viiret [Tue, 1 Mar 2016 04:45:17 +0000 (15:45 +1100)]
fdr_confirm_compile: use smart ptrs
Justin Viiret [Tue, 1 Mar 2016 04:26:33 +0000 (15:26 +1100)]
fdr_compile_internal: remove unused decl
getFDRConfirm() is static.
Justin Viiret [Tue, 7 Jun 2016 02:00:30 +0000 (12:00 +1000)]
unit: make multiaccel tests deterministic
Use a PRNG, not rand().
Justin Viiret [Thu, 19 May 2016 07:22:37 +0000 (17:22 +1000)]
rose: eagerly report EOD literal matches
Where possible, eagerly report a match when a literal that matches at
EOD occurs, rather than setting a state bit and waiting for EOD
processing.
Justin Viiret [Thu, 2 Jun 2016 06:25:36 +0000 (16:25 +1000)]
ng_equivalence: reduce compile time on large cases
Alex Coyte [Fri, 3 Jun 2016 05:33:35 +0000 (15:33 +1000)]
use edge index to avoid assoc property maps
Justin Viiret [Tue, 3 May 2016 06:16:20 +0000 (16:16 +1000)]
rose: parameterise CHECK_LIT_EARLY
Justin Viiret [Thu, 2 Jun 2016 03:57:03 +0000 (13:57 +1000)]
rose: make assignGroupsToLiterals a free function
Justin Viiret [Thu, 2 Jun 2016 03:52:29 +0000 (13:52 +1000)]
rose: make assignGroupsToRoles a free function
Justin Viiret [Thu, 2 Jun 2016 03:24:47 +0000 (13:24 +1000)]
rose_build_groups: move findGroupSquashers
Justin Viiret [Thu, 2 Jun 2016 03:18:23 +0000 (13:18 +1000)]
rose_build_groups: move getGroups, getSuccGroups
Justin Viiret [Thu, 2 Jun 2016 03:13:48 +0000 (13:13 +1000)]
rose_build_groups: move assignGroupsToRoles
Justin Viiret [Thu, 2 Jun 2016 03:10:42 +0000 (13:10 +1000)]
rose_build_groups: move assignGroupsToLiterals
Justin Viiret [Tue, 31 May 2016 05:24:59 +0000 (15:24 +1000)]
rose: elide SET_GROUPS when possible
Justin Viiret [Fri, 27 May 2016 05:05:24 +0000 (15:05 +1000)]
rose: Do HWLM advisory masks as a complete pass
Justin Viiret [Fri, 27 May 2016 06:51:41 +0000 (16:51 +1000)]
rose: linear scan for lookaround during build
This allows us to reuse more lookaround entries in the bytecode.
Alex Coyte [Tue, 31 May 2016 04:46:09 +0000 (14:46 +1000)]
Provide access to scratch in queues
This largely reverts commit
f8ecf33236b0695d9539e8e34cf0bb0467614cdf .
Alex Coyte [Mon, 30 May 2016 04:00:31 +0000 (14:00 +1000)]
Prevent trying to build smallwrite engine for large cases
Alex Coyte [Fri, 6 May 2016 03:20:00 +0000 (13:20 +1000)]
use the correct way to refer to void *
Alex Coyte [Tue, 17 May 2016 05:05:42 +0000 (15:05 +1000)]
UE-2963: be more aggressive in using buildSufPQ_final()
Justin Viiret [Thu, 26 May 2016 04:21:40 +0000 (14:21 +1000)]
exhaust: move functions to report.h
Justin Viiret [Thu, 26 May 2016 00:11:19 +0000 (10:11 +1000)]
rose: dump leftfix/suffix queue indices
Boris Nagaev [Wed, 6 Jul 2016 16:46:41 +0000 (19:46 +0300)]
fix add_to_engine_blob for iterator=pointer
Boris Nagaev [Wed, 6 Jul 2016 16:46:25 +0000 (19:46 +0300)]
fix iter_wrapper for iterator=pointer
Matthew Barr [Wed, 1 Jun 2016 01:09:05 +0000 (11:09 +1000)]
Merge branch develop into master
Matthew Barr [Wed, 1 Jun 2016 00:50:55 +0000 (10:50 +1000)]
Bump version number for release
Justin Viiret [Wed, 4 May 2016 07:36:46 +0000 (17:36 +1000)]
changelog: updates for 4.2 release
Justin Viiret [Mon, 30 May 2016 04:51:04 +0000 (14:51 +1000)]
docs: more detail on option setting
Justin Viiret [Mon, 30 May 2016 04:30:43 +0000 (14:30 +1000)]
doc: correct syntax for "extended" option setting
Extended syntax (ignore whitespace) is controlled with (?x) and (?-x).
Justin Viiret [Fri, 27 May 2016 01:11:04 +0000 (11:11 +1000)]
rose: always push CHECK_BOUNDS onto end of program
Justin Viiret [Fri, 27 May 2016 00:40:06 +0000 (10:40 +1000)]
rose: fix CHECK_NOT_HANDLED placement bug
The CHECK_NOT_HANDLED instruction was being inserted into an already
partially-flattened program, which would result in jump offsets becoming
incorrect.
This change places it as part of the normal flow of program
construction, which avoids this issue.
Matthew Barr [Mon, 23 May 2016 04:57:48 +0000 (14:57 +1000)]
cmake: invoke the compiler to test arch features
We require SSSE3, and optionally support AVX2, and the best way of testing
the compiler and compile flags is to run the compiler.
Matthew Barr [Mon, 9 May 2016 00:47:15 +0000 (10:47 +1000)]
We need an immediate so use intrinsic directly
Matthew Barr [Mon, 9 May 2016 00:53:54 +0000 (10:53 +1000)]
debug printf: Windows path separator
Matthew Barr [Wed, 11 May 2016 22:39:12 +0000 (08:39 +1000)]
vbs: the static array has C linkage
Matthew Barr [Wed, 11 May 2016 22:51:02 +0000 (08:51 +1000)]
masked move: C linkage
Matthew Barr [Thu, 7 Apr 2016 03:17:55 +0000 (13:17 +1000)]
Win32 ctz and clz
Matthew Barr [Fri, 20 May 2016 05:30:29 +0000 (15:30 +1000)]
popcount: use intrinsics and restructure defines
Justin Viiret [Fri, 20 May 2016 05:14:20 +0000 (15:14 +1000)]
fdr: teddy.h does not need to include hwlm.h
Justin Viiret [Fri, 20 May 2016 05:11:07 +0000 (15:11 +1000)]
fdr: remove dead function decls from teddy.h
Matthew Barr [Wed, 27 Apr 2016 05:05:44 +0000 (15:05 +1000)]
pkgconfig: Add Libs.private for static linking
Matthew Barr [Wed, 18 May 2016 05:50:38 +0000 (15:50 +1000)]
cmake: fix optimise define
Boris Nagaev [Wed, 18 May 2016 05:59:57 +0000 (07:59 +0200)]
install .dll to bin/, not to lib/
Matthew Barr [Tue, 10 May 2016 03:14:25 +0000 (13:14 +1000)]
Combine struct elements to avoid inheritance
The multiple inheritance here was slightly overkill, and it also appears to
trigger a MSVC bug when writing through the pointer to member.
Justin Viiret [Mon, 9 May 2016 23:32:13 +0000 (09:32 +1000)]
fdr: ensure 16 bytes of pre-history in block mode
Justin Viiret [Mon, 9 May 2016 06:10:57 +0000 (16:10 +1000)]
ucp_table: clean up make_caseless
Justin Viiret [Mon, 9 May 2016 06:03:39 +0000 (16:03 +1000)]
ucp_table: don't always deref rv of lower_bound
Fixes a warning from asan.
Mohammad Abdul Awal [Thu, 31 Mar 2016 10:28:42 +0000 (11:28 +0100)]
teddy: remove python codegen, refactor code
Major cleanup of the Teddy runtime code. Removes python code generation,
splits AVX2 models into their own file, improves readability.
Justin Viiret [Mon, 9 May 2016 03:51:50 +0000 (13:51 +1000)]
unit-internal: fix FDR issues reported by ASan
FDR's streaming mode now assumes that it is safe to read 16 bytes before
the end of the history buffer, and this was not reflected in the unit
tests.
Justin Viiret [Sun, 8 May 2016 23:29:44 +0000 (09:29 +1000)]
scratch: don't leave in use after hs_clone_scratch
Also updated unit tests to always check hs_alloc_scratch()'s return
value.
Justin Viiret [Fri, 6 May 2016 04:20:38 +0000 (14:20 +1000)]
ue2string: fix broken function type in upperString
Silences warning from ubsan.
Justin Viiret [Fri, 6 May 2016 01:38:24 +0000 (11:38 +1000)]
unit: clean up getValidFdrEngines()
Justin Viiret [Fri, 6 May 2016 01:32:36 +0000 (11:32 +1000)]
unit: fix bug in teddy model unit tests
Anatoly Burakov [Tue, 19 Apr 2016 14:40:18 +0000 (15:40 +0100)]
Fix for multiaccel matcher unit test
Test was failing on 32-bit OS with AVX2
Justin Viiret [Tue, 3 May 2016 01:57:41 +0000 (11:57 +1000)]
doc: add description of serialization, runtime lib
Justin Viiret [Tue, 3 May 2016 01:12:36 +0000 (11:12 +1000)]
doc: clean up discussion of scratch space
Justin Viiret [Tue, 3 May 2016 03:18:19 +0000 (13:18 +1000)]
doc: update copyright dates
Justin Viiret [Wed, 4 May 2016 03:56:24 +0000 (13:56 +1000)]
fdr_streaming_runtime: include <string.h>
Required for use of memcpy().
Justin Viiret [Wed, 27 Apr 2016 23:34:37 +0000 (09:34 +1000)]
runtime: add error for "scratch in use"
This commit adds the HS_SCRATCH_IN_USE error, which is returned when
Hyperscan detects that a scratch region is already in use on entry to an
API function.
Alex Coyte [Mon, 2 May 2016 03:03:17 +0000 (13:03 +1000)]
restore ability to ignore common preds for merges
Check for common preds was broken during refactoring in
b9c5d65 :
Rework literal overlap checks for merging engines
Justin Viiret [Thu, 28 Apr 2016 23:16:39 +0000 (09:16 +1000)]
fdr: confVal load can be unaligned
Alex Coyte [Wed, 27 Apr 2016 05:17:05 +0000 (15:17 +1000)]
remove unused parts of fdr_loadval
Mohammad Abdul Awal [Thu, 24 Mar 2016 02:59:56 +0000 (13:59 +1100)]
fdr: Remove python codegen, add safezones
Alex Coyte [Mon, 18 Apr 2016 01:23:56 +0000 (11:23 +1000)]
add m128 byte shift functions
variable_byte_shift_m128 taken from pug-interpreter branch
Justin Viiret [Wed, 27 Apr 2016 06:37:25 +0000 (16:37 +1000)]
fdr: don't include fdr.h if not necessary