Justin Viiret
68ae4cc7c8
ng_violet: det. vertex ordering in splitRoseEdge
2016-08-10 15:06:43 +10:00
Justin Viiret
63528f1cd2
ng_violet: iterate in edge order
2016-08-10 15:06:43 +10:00
Justin Viiret
55c2d20e2c
rose: use dumpString for debug output
2016-08-10 15:06:22 +10:00
Justin Viiret
04634f2e87
flood_compile: escape chars in debugging
2016-08-10 15:06:05 +10:00
Justin Viiret
de543bec24
ng_violet: use dumpString for debug output
2016-08-10 15:06:05 +10:00
Justin Viiret
1ff17a2ea3
rose: clear reports in removeFalsePaths
2016-08-10 15:06:01 +10:00
Justin Viiret
7f49958824
rose: only write out report programs if in use
...
These programs are only used by output-exposed engines.
2016-08-10 15:05:53 +10:00
Justin Viiret
4ce268af47
ng: ensure that only match states have reports
...
Ensure (and assert) that vertices without an edge to {accept, acceptEod}
do not have reports set.
2016-08-10 15:05:23 +10:00
Justin Viiret
3d9a60d023
teddy: apply poison mask after prep_conf_ work
...
This simplifies the code, and removes all the all-ones p_mask uses,
which we were otherwise trusting the optimizer to remove.
2016-08-10 15:05:23 +10:00
Alex Coyte
d574557200
take mask overhang into account for hwlm accel, float min dist
2016-08-10 15:05:19 +10:00
Alex Coyte
34289eb3b4
violet: 32bit fix
2016-08-10 15:01:28 +10:00
Alex Coyte
5c5ec905cc
violet: initial implementation
2016-08-10 15:01:08 +10:00
Alex Coyte
b13a90e5d2
compiledump: allow disabling of early graphs for large compiles
2016-08-10 15:00:44 +10:00
Justin Viiret
9eb349a343
rose: expose smwr builder, tidy up engine build
2016-08-10 14:59:10 +10:00
Justin Viiret
a427a2843b
rose_build_anchored: clean up remapping
...
Note that there are no EOD reports in the anchored matcher raw_dfas.
2016-08-10 14:59:10 +10:00
Justin Viiret
210246af01
rose_build_anchored: remove unused forward decls
2016-08-10 14:59:10 +10:00
Justin Viiret
8754cbbd24
rose: use program offset, not final_id, in atable
...
This removes the need to look up the program offset in a table when
handling an anchored literal match.
2016-08-10 14:59:10 +10:00
Justin Viiret
4dbbc4eaa5
rose: add RECORD_ANCHORED instruction to program
...
Moves recordAnchoredLiteralMatch from an unconditional call in the
anchored callback to being driven by a program instruction.
2016-08-10 14:59:10 +10:00
Alex Coyte
981b59fd05
minor eager prefixes improvements
...
- count eager prefixes as always run engine when comparing with smwr
- only check if a prefix is vacuous after adding back literal fragments
2016-08-10 14:59:10 +10:00
Xiang Wang
e95a251935
UE-2991: avoid copying one unnecessary subqueue item
2016-08-10 14:59:06 +10:00
Justin Viiret
aed2e721f4
rose: tidy up CHECK_{BYTE,MASK} dump code
2016-08-10 14:57:48 +10:00
Xu, Chi
4d7469392d
rose: add CHECK_BYTE/CHECK_MASK instructions
...
These instructions are specialisations of the "lookaround" code for
performance.
2016-08-10 14:57:48 +10:00
Justin Viiret
1bab10698f
rose_build_convert: improve history selection
...
Fixes assertion failures introduced by last commit.
2016-08-10 14:57:42 +10:00
Justin Viiret
3e96cd48ef
rose: sanity check CHECK_BOUNDS instruction
2016-08-10 14:57:36 +10:00
Justin Viiret
8d31607556
rose: only use anch history when there are bounds
2016-08-10 14:57:36 +10:00
Alex Coyte
f55e968692
tamarama dump: use correct base offset
2016-08-10 14:57:20 +10:00
Justin Viiret
6ec93a54c4
rose: only dump small-block table in block mode
2016-08-10 14:57:20 +10:00
Justin Viiret
39c6a0c7bf
rose: check literal bounds when building SB table
...
Literals that cannot lead to a report in the first ROSE_SMALL_BLOCK_LEN
bytes may be dropped from the small block table.
2016-08-10 14:56:12 +10:00
Justin Viiret
9346a9090e
fdr: remove groups from struct FDR_Runtime_Args
2016-08-10 14:55:52 +10:00
Justin Viiret
42f23c2c91
teddy: no need to write control out at the end
2016-08-10 14:55:51 +10:00
Justin Viiret
b6a77b7329
teddy: remove extra control ptr
2016-08-10 14:55:51 +10:00
Justin Viiret
85f049edb2
fdr: remove extra control ptr
2016-08-10 14:55:51 +10:00
Justin Viiret
49bb3b5c82
simd_utils: setbit/clearbit by loading 1-bit mask
2016-08-10 14:52:56 +10:00
Justin Viiret
790683b641
rose: don't always dedupe small-block lit variants
2016-08-10 14:52:56 +10:00
Alex Coyte
c58424cab3
reduce character classes for hwlm accel
2016-08-10 14:52:56 +10:00
Alex Coyte
69933edf68
truffle hwlm accel
2016-08-10 14:52:56 +10:00
Alex Coyte
691b08d170
use NGHolder::foo in favour of NFAGraph::foo
2016-08-10 14:52:56 +10:00
Alex Coyte
2471b770a8
we no longer store the history len
2016-08-10 14:52:56 +10:00
Alex Coyte
3a1429a621
group_weak_end is no longer used
2016-08-10 14:52:56 +10:00
Matthew Barr
22b451b59b
Ensure that m256 is 32-aligned on non-avx2 builds
2016-08-10 14:52:56 +10:00
Justin Viiret
d497a1259a
rose: use normal callback for pure-literal cases
2016-08-10 14:52:56 +10:00
Justin Viiret
8435f918d1
limex: use cyclics mask for repeat compress
2016-08-10 14:52:56 +10:00
Justin Viiret
ae5e347778
limex: only compress active repeats
2016-08-10 14:52:56 +10:00
Justin Viiret
aa54352a3a
limex: switch off stale repeats during compress
2016-08-10 14:52:56 +10:00
Justin Viiret
19e79be87d
limex: compress repeats before state
2016-08-10 14:52:56 +10:00
Justin Viiret
7cc5346c11
assign groups: turn pair<pair> into a tuple
2016-08-10 14:49:24 +10:00
Justin Viiret
bfaa0acaea
rose: preserve lit properties when building masks
...
This fixes a bug with commit 6a6b0e5, which did not preserve the
requires_explode and requires_benefits properties when a new literal was
generated to add an HWLM and/cmp mask.
Also extends the requires_explode handling to allow masked literals.
2016-08-10 14:48:29 +10:00
Boris Nagaev
66c2a53d33
hs_serialized_database_info: check whole input
...
Most lines of hs_serialized_database_info are not needed,
as the information is provided by db_decode_header.
Moreover, db_decode_header changes its first argument,
so it points to end of header after db_decode_header.
2016-08-10 13:27:44 +10:00
Justin Viiret
e9cfbae68f
workaround for freebsd/clang/libc++ build issues
...
Rather than relying on set's constructor from {}, explicitly construct
the set.
2016-07-08 11:07:51 +10:00
Matthew Barr
e3d416a6ea
Apply some consistency to the names we give shifts
2016-07-08 11:07:50 +10:00