Boris Nagaev
6d87533ef0
fix add_to_engine_blob for iterator=pointer
2016-07-06 19:46:41 +03:00
Boris Nagaev
ba45bd34d6
fix iter_wrapper for iterator=pointer
2016-07-06 19:46:25 +03: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
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
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
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
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
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
Justin Viiret
061068a260
nfa_kind: documentation
2016-05-18 16:22:01 +10:00
Justin Viiret
ee7f31ac39
mpv: native report remapping
2016-05-18 16:22:01 +10:00
Justin Viiret
c101beb541
castle, lbr: native report remap
2016-05-18 16:21:36 +10:00
Justin Viiret
ec985a62f8
castle: add nfa kind to CastleProto
2016-05-18 16:21:03 +10:00
Justin Viiret
1f41a921f2
mcclellan, gough: native report remapping
2016-05-18 16:20:45 +10:00
Justin Viiret
611579511c
rose: remap reports to program offsets
2016-05-18 16:20:42 +10:00
Justin Viiret
f40aa6bd40
report_manager: store report -> program mapping
2016-05-18 16:20:38 +10:00
Justin Viiret
fd7f30a5b5
Merge functions no longer need transfer function
2016-04-20 13:34:57 +10:00
Justin Viiret
319d47ae4f
Remove OutfixInfo::chained (which meant "is MPV")
2016-04-20 13:34:57 +10:00
Justin Viiret
16985ab6e5
Use a visitor for outfix engine construction
2016-04-20 13:34:57 +10:00
Justin Viiret
32c866a8f9
OutfixInfo: use boost::variant for engines
2016-04-20 13:34:57 +10:00
Justin Viiret
fa27025bcb
Wrap MPV puffettes in a struct
2016-04-20 13:34:57 +10:00