289 Commits

Author SHA1 Message Date
Justin Viiret
d7466ff840 docs: more detail on option setting 2016-06-01 10:57:10 +10:00
Justin Viiret
428bb9a110 doc: correct syntax for "extended" option setting
Extended syntax (ignore whitespace) is controlled with (?x) and (?-x).
2016-06-01 10:57:10 +10:00
Justin Viiret
614ca0accf rose: always push CHECK_BOUNDS onto end of program 2016-06-01 10:56:57 +10:00
Justin Viiret
9826522e34 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.
2016-06-01 10:56:52 +10:00
Matthew Barr
89bc2b4b39 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.
2016-05-24 11:26:38 +10:00
Matthew Barr
ca2343f98e We need an immediate so use intrinsic directly 2016-05-24 11:26:33 +10:00
Matthew Barr
d36cc9ea4c debug printf: Windows path separator 2016-05-24 11:26:31 +10:00
Matthew Barr
1d6462532a vbs: the static array has C linkage 2016-05-24 11:26:27 +10:00
Matthew Barr
3527a9cb5c masked move: C linkage 2016-05-24 11:26:24 +10:00
Matthew Barr
b5be8ef6aa Win32 ctz and clz 2016-05-24 11:26:20 +10:00
Matthew Barr
5234639736 popcount: use intrinsics and restructure defines 2016-05-24 11:26:16 +10:00
Justin Viiret
142e74e8e6 fdr: teddy.h does not need to include hwlm.h 2016-05-24 11:26:13 +10:00
Justin Viiret
2c762909fe fdr: remove dead function decls from teddy.h 2016-05-24 11:26:10 +10:00
Matthew Barr
e52783017e pkgconfig: Add Libs.private for static linking 2016-05-24 11:26:06 +10:00
Matthew Barr
74d5d0e819 cmake: fix optimise define 2016-05-24 11:26:03 +10:00
Boris Nagaev
ba77229c02 install .dll to bin/, not to lib/ 2016-05-22 15:56:49 +03:00
Matthew Barr
0e8867b393 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.
2016-05-18 16:28:44 +10:00
Justin Viiret
95f35aad0e fdr: ensure 16 bytes of pre-history in block mode 2016-05-18 16:28:27 +10:00
Justin Viiret
97eaea043e ucp_table: clean up make_caseless 2016-05-18 16:28:22 +10:00
Justin Viiret
f48b8c937b ucp_table: don't always deref rv of lower_bound
Fixes a warning from asan.
2016-05-18 16:28:17 +10:00
Mohammad Abdul Awal
ed772380c0 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.
2016-05-18 16:28:11 +10:00
Justin Viiret
6899cab370 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.
2016-05-18 16:28:08 +10:00
Justin Viiret
73610c0b64 scratch: don't leave in use after hs_clone_scratch
Also updated unit tests to always check hs_alloc_scratch()'s return
value.
2016-05-18 16:28:03 +10:00
Justin Viiret
6c1143a264 ue2string: fix broken function type in upperString
Silences warning from ubsan.
2016-05-18 16:28:00 +10:00
Justin Viiret
f532b89776 unit: clean up getValidFdrEngines() 2016-05-18 16:27:57 +10:00
Justin Viiret
38797abb06 unit: fix bug in teddy model unit tests 2016-05-18 16:27:54 +10:00
Anatoly Burakov
01169e69d2 Fix for multiaccel matcher unit test
Test was failing on 32-bit OS with AVX2
2016-05-18 16:27:51 +10:00
Justin Viiret
8f46b7cf2e doc: add description of serialization, runtime lib 2016-05-18 16:27:48 +10:00
Justin Viiret
3426bf57ec doc: clean up discussion of scratch space 2016-05-18 16:27:45 +10:00
Justin Viiret
b2ea641715 doc: update copyright dates 2016-05-18 16:27:42 +10:00
Justin Viiret
a7d02a996e fdr_streaming_runtime: include <string.h>
Required for use of memcpy().
2016-05-18 16:27:33 +10:00
Justin Viiret
c12b953131 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.
2016-05-18 16:27:29 +10:00
Alex Coyte
11896dcf42 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
2016-05-18 16:26:22 +10:00
Justin Viiret
1a373d0619 fdr: confVal load can be unaligned 2016-05-18 16:25:35 +10:00
Alex Coyte
f0825b4d3f remove unused parts of fdr_loadval 2016-05-18 16:25:31 +10:00
Mohammad Abdul Awal
598f0565cf fdr: Remove python codegen, add safezones 2016-05-18 16:22:52 +10:00
Alex Coyte
e86688e313 add m128 byte shift functions
variable_byte_shift_m128 taken from pug-interpreter branch
2016-05-18 16:22:44 +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
Alex Coyte
9fa11b48b0 mcclellan compile: more efficient discovery of accel 2016-05-18 16:22:35 +10:00
Justin Viiret
d7774f3d69 noodle_build: update interface to use hwlmLiteral 2016-05-18 16:22:32 +10:00
Justin Viiret
31b1114f76 cmpForward: assume (and assert) p2 is upper-case 2016-05-18 16:22:28 +10:00
Justin Viiret
8eec61445f unit: fix up noodle unit tests 2016-05-18 16:22:25 +10:00
Justin Viiret
07bb14a84a hwlm_literal: coerce nocase lits to upper-case 2016-05-18 16:22:22 +10:00
Justin Viiret
da89f5ef6b ue2string: bring caseless cmp inline 2016-05-18 16:22:18 +10:00
Matthew Barr
54c0fb7e0e noodle: remove redundant bitmask 2016-05-18 16:22:15 +10:00
Matthew Barr
fe8ffc5544 noodle: use SSE palignr 2016-05-18 16:22:12 +10:00
Justin Viiret
75195f5f2e ng_mcclellan: move logic into base class
Move all of the Automaton logic into Automaton_Base, which is templated
on its StateSet/StateMap types.
2016-05-18 16:22:09 +10:00
Justin Viiret
ea7197571a ng_haig: move logic into base class
Move all of the Automaton logic into Automaton_Base, which is templated
on its StateSet/StateMap types.
2016-05-18 16:22:06 +10:00
Justin Viiret
9e0ec02ac9 rose: assert that program offset is sane 2016-05-18 16:22:01 +10:00