1290 Commits

Author SHA1 Message Date
Justin Viiret
3f36665e39 unit: add PrintTo for ue2_literal 2017-09-18 13:26:18 +10:00
Justin Viiret
fe31b387e8 hash: use std::hash for string hashing 2017-09-18 13:26:18 +10:00
Justin Viiret
25170b32eb ue2_literal: better hash function 2017-09-18 13:26:18 +10:00
Justin Viiret
1aad3b0ed1 ue2_literal: make nocase member a dynamic_bitset
We were previously using vector<bool>, but dynamic_bitset provides a
faster any() impl
2017-09-18 13:26:18 +10:00
Justin Viiret
36136f1003 fdr_compile: don't do string copies in isSuffix 2017-09-18 13:26:05 +10:00
Justin Viiret
d5b3f2b508 gatherReports: fewer map lookups 2017-09-18 13:26:05 +10:00
Justin Viiret
ba6f638c40 accel_dfa_build_strat: use flat_set 2017-09-18 13:26:05 +10:00
Justin Viiret
d25740b615 smallwrite_build: make failure_map unordered 2017-09-18 13:25:52 +10:00
Justin Viiret
14333f5b0b rdfa: make getImplAlphaSize() inline 2017-09-18 13:25:52 +10:00
Justin Viiret
84030aa0fc castlecompile: remove unused container 2017-09-18 13:25:52 +10:00
Matthew Barr
7192d47517 Update PCRE version to 8.41 2017-09-18 13:25:32 +10:00
Alex Coyte
47e64646b4 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.
2017-09-18 13:22:56 +10:00
Alex Coyte
a97cdba8cc 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.
2017-09-18 13:22:56 +10:00
Alex Coyte
2a492273b5 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
2017-09-18 13:22:56 +10:00
Matthew Barr
b259283d6b cmake: set isystem flag for older cmake 2017-08-21 11:27:20 +10:00
Matthew Barr
96f57a9c2e icc: disable more warnings 2017-08-21 11:27:03 +10:00
Matthew Barr
d9030805de cmake: use abi-version on older gcc 2017-08-21 11:25:21 +10:00
Alex Coyte
4e9b0ad3fd rework mergeLeftfixesVariableLag() 2017-08-21 11:25:21 +10:00
Justin Viiret
164e5a929f fdr_compile: faster scoring code 2017-08-21 11:25:21 +10:00
Justin Viiret
3ff70d5568 insertion_ordered_{map,set}: add new containers
These are associative map/set structures that are iterable in insertion
order.
2017-08-21 11:25:21 +10:00
Alex Coyte
72973ccb47 violet: don't bother swapping holders if unable to trim graph 2017-08-21 11:25:21 +10:00
Alex Coyte
34ed4a6991 violet: maintain a reference to all the known implementable graphs 2017-08-21 11:25:12 +10:00
Alex Coyte
c693c44646 violet: do not remove more states from holders if dfa has been built 2017-08-21 11:25:12 +10:00
Wang, Xiang W
a645201675 UE-3147: ensure the same squash behavior for literals shared between different literal matchers 2017-08-21 11:25:03 +10:00
Justin Viiret
ba1df6412b groupByFragment: make fewer string copies 2017-08-21 11:24:52 +10:00
Justin Viiret
8eb55d4242 rose_build_exclusive: clean up use of vertex indices 2017-08-21 11:24:52 +10:00
Justin Viiret
d55e8fdf94 limex_compile: reduce state id lookups 2017-08-21 11:24:52 +10:00
Justin Viiret
58004f15f0 limex_compile: turn tugs into a bitset 2017-08-21 11:24:52 +10:00
Justin Viiret
1f2eb5a093 rose_build_lookaround: use vector in trimLiterals 2017-08-21 11:24:52 +10:00
Justin Viiret
4889a492e4 rose: more hash member funcs for rose types 2017-08-21 11:24:52 +10:00
Justin Viiret
09938d532f rose: return a vector from findEdgesByLiteral 2017-08-21 11:24:52 +10:00
Justin Viiret
927501175c rose_build_long_lit: refactor to do less dupe work
Also some performance improvements.
2017-08-21 11:24:52 +10:00
Alex Coyte
15784954e8 dynamic compression: add HS_CDECL to implementation 2017-08-21 11:24:52 +10:00
Alex Coyte
37033ef9bb Provide RoseResources to roseQuality.
RoseResources is an alternative to manually digging through the bytecode.
2017-08-21 11:24:52 +10:00
Alex Coyte
778addadc5 mangle fdr conf parts of scratch as well 2017-08-21 11:23:54 +10:00
Alex Coyte
ffc2d578b1 roseQuality() no longer needs to be part of rose's API. 2017-08-21 11:23:41 +10:00
Alex Coyte
41783fe912 more comments on hwlm/fdr's start parameter 2017-08-21 11:23:41 +10:00
Matthew Barr
56ec2dfc4a Remove out of date debug output 2017-08-21 11:23:41 +10:00
Alex Coyte
a847b4307a add dynamic stream compression to fat runtime 2017-08-21 11:23:41 +10:00
Matthew Barr
d33dcc0534 Remove unwanted move constructor 2017-08-21 11:20:22 +10:00
Matthew Barr
b8753e3daf clean up loops and add AVX-512 2017-08-21 11:20:22 +10:00
Matthew Barr
9d5a00bde1 Open input path once using file descriptor 2017-08-21 11:20:22 +10:00
Matthew Barr
7bcb58dea0 Catch by reference not value 2017-08-21 11:20:20 +10:00
Matthew Barr
30f93634b8 use string equality operator 2017-08-21 11:19:20 +10:00
Matthew Barr
c7f3150141 restore formatting flags after use 2017-08-21 11:19:20 +10:00
Matthew Barr
3d58ce83bd hsbench: use a memstream instead of a temp file 2017-08-21 11:19:20 +10:00
Alex Coyte
d878e8cdf3 add dynamic compression to the public api 2017-08-21 11:19:20 +10:00
Alex Coyte
e099d85524 CMake: put the stream compress files in the correct part 2017-08-21 11:19:11 +10:00
Alex Coyte
7b17f0eed7 dev reference documentation for stream compression 2017-08-21 11:19:11 +10:00
Hong, Yang A
205a5bc98f multibit compression support 2017-08-21 11:19:11 +10:00