Justin Viiret
ac31841214
scratch: delete unused hs_scratch::qNfaState
2016-04-20 13:34:57 +10:00
Justin Viiret
84daf1fc1a
ng_limex_accel: delete unused DAccelScheme ctor
2016-04-20 13:34:57 +10:00
Justin Viiret
4541eaa92c
report: remove dead function isInternalSomReport
2016-04-20 13:34:57 +10:00
Justin Viiret
92976c640a
report: remove dead function satisfiesMinLength
2016-04-20 13:34:57 +10:00
Justin Viiret
1d85987d96
FINAL_REPORT: Add specialised instruction
...
Specialisation of the REPORT instruction that also terminates execution
of the program. Improves performance on programs that generate many
reports.
2016-04-20 13:34:57 +10:00
Justin Viiret
36150bbc19
Rose: replace internal_report with program
...
Replace the use of the internal_report structure (for reports from
engines, MPV etc) with the Rose program interpreter.
SOM processing was reworked to use a new som_operation structure that is
embedded in the appropriate instructions.
2016-04-20 13:34:57 +10:00
Matthew Barr
68851742cc
Help ICC perform a not m128
2016-04-20 13:34:57 +10:00
Justin Viiret
9721262149
shufti: small C++11 fix to silence clang warning
2016-04-20 13:34:56 +10:00
Alex Coyte
41751c4f3b
bitfield: unroll main operators
2016-04-20 13:34:56 +10:00
Alex Coyte
938ac9fd38
CharReach operators inline
2016-04-20 13:34:56 +10:00
Alex Coyte
ff721ed8e4
unify some accel code/structures between limex and mcclellan
2016-04-20 13:34:56 +10:00
Alex Coyte
850636dbd6
more efficent accel path discovery
2016-04-20 13:34:56 +10:00
Alex Coyte
ff82ea6d6e
smallwrite: don't recompile the dfa if prune fails
2016-04-20 13:34:56 +10:00
Alex Coyte
ed3ef5b997
raise the limit of strings in double shufti
2016-04-20 13:34:56 +10:00
Alex Coyte
c0a5b037a1
allow double shufti to share buckets
2016-04-20 13:34:56 +10:00
Alex Coyte
6c7ee12bb9
make dverm more precise
2016-04-20 13:34:56 +10:00
Alex Coyte
b4727cf1ea
masked version of dverm
2016-04-20 13:34:56 +10:00
Alex Coyte
89d7728f77
refactoring of double byte offset accel to use paths and add to mcclellan
2016-04-20 13:34:56 +10:00
Alex Coyte
6898dc9864
look for normal accel schemes using compressed alpha
2016-04-20 13:34:56 +10:00
Alex Coyte
f53c093baa
simple offset accel for mcclellan start state
2016-04-20 13:34:56 +10:00
Alex Coyte
d125601152
dump contents of double shufti masks
2016-04-20 13:34:56 +10:00
Alex Coyte
956b86e97a
move MultibyteAccelInfo to accelcompile.h
2016-04-20 13:34:56 +10:00
Justin Viiret
50885f210a
exhaust: Update interface
...
- Only use functions in exhaust.h for valid ekeys
- Use INVALID_EKEY everywhere (remove dupe END_EXHAUST sentinel)
2016-04-20 13:34:55 +10:00
Justin Viiret
d75cc809fe
Runtime: be more careful with status bits
2016-04-20 13:34:55 +10:00
Justin Viiret
f2c0a66b6f
Rose: use a multibit for the exhaustion vector
...
Previously, the exhaustion vector was a standard bitvector, which
required an expensive memset() call at init for databases with a large
number of exhaustion keys.
2016-04-20 13:34:55 +10:00
Justin Viiret
1fcd3cfb2c
mmbit_all: True if all keys are switched on
2016-04-20 13:34:55 +10:00
Justin Viiret
5354b7a5ca
mpv: fire only one report when simple-exhaustible
2016-04-20 13:34:55 +10:00
Justin Viiret
9852ac0091
mpv: use size_t for count, not u32
...
Small cleanup in processReportsForRange.
2016-04-20 13:34:55 +10:00
Matthew Barr
088347b437
Remove unused storeu macros
2016-04-20 13:34:55 +10:00
Matthew Barr
dd4c1eceb8
Remove unused loadu2x128
2016-04-20 13:34:55 +10:00
Justin Viiret
e034ccb9b4
mmbit_iterate_bounded: make block_width u64a
2016-04-20 13:34:55 +10:00
Justin Viiret
839c90594c
mcclellan: Remove the use of state numbering
...
McClellan and Haig only need to know which states are not participants
(i.e. unused start, startDs)
2016-04-20 13:34:55 +10:00
Justin Viiret
9ae908fd11
shufticompile: Remove unused mergeShuftiMask
2016-04-20 13:34:55 +10:00
Justin Viiret
2cd28a5fa4
scratch: Remove (now unused) tctxtToScratch
2016-04-20 13:34:54 +10:00
Justin Viiret
d0aa138ada
castle/repeat: fix a number of bugs
...
- Add fits_in_len_bytes assertions for packed stores.
Corrects the assertion formerly on line 888.
- In exclusive mode, don't overwrite packedCtrlSize with the max of the
group; each repeat should know how many bytes it is using, even if
they share the same stream state.
- Ensure that exclusive mode stream state is sized correctly.
2016-04-20 13:34:54 +10:00
Alex Coyte
4a482b07ea
UE-2919: add termination checks around handleReportInternally
2016-04-20 13:34:54 +10:00
Justin Viiret
9c9eb2ca9a
makeReport: remove unused param
2016-04-20 13:34:54 +10:00
Justin Viiret
ff7e101757
Rose: be more precise with CATCHUP instruction
...
- Fix bugs introduced by recent addition of the boundary program. It's
not safe to do catchup there.
- Only do catchup once per report set, when necessary.
2016-04-20 13:34:54 +10:00
Justin Viiret
e466e67b79
AlignedAllocator: simplify and fix for MSVC, C++11
...
- Simplify thanks to minimal allocator requirements in C++11.
- Add required copy constructor.
2016-04-20 13:34:54 +10:00
Justin Viiret
93a262e54c
Rose: use program for boundary reports
...
Use the program to handle report lists at boundaries, rather than the
previous list-of-reports approach.
2016-04-20 13:34:54 +10:00
Justin Viiret
24ccefa3d3
Rose: make all NFA callbacks take scratch as ctx
2016-04-20 13:34:54 +10:00
Justin Viiret
6af1ead0aa
Rose: make HWLM callbacks take scratch as ctx
2016-04-20 13:34:54 +10:00
Justin Viiret
f7a40b200d
Rose: remove dead function roseHandleMatch
2016-04-20 13:34:54 +10:00
Justin Viiret
b093616aff
Rose build: move HWLM build code to own file
...
To reduce the size of rose_build_bytecode.cpp a little, move the code
that deals with HWLM literal tables into its own new file.
2016-04-20 13:34:54 +10:00
Justin Viiret
12921b7c97
Add hs_expression_ext_info() API function
...
This is a variant of hs_expression_info() that can also accept extended
parameters.
2016-04-20 13:34:54 +10:00
Justin Viiret
67b9784dae
Rose: use program for all literal matches
...
Unifies all literal match paths so that the Rose program is used for all
of them. This removes the previous specialised "direct report" and
"multi direct report" paths. Some additional REPORT instruction work was
necessary for this.
Reworked literal construction path at compile time in prep for using
program offsets as literal IDs.
Completely removed the anchored log runtime, which is no longer worth
the extra complexity.
2016-04-20 13:34:54 +10:00
Mohammad Abdul Awal
b58d05dfec
Fixed some DEBUG_OUTPUT format string.
2016-04-20 13:34:53 +10:00
Justin Viiret
1bc12139a2
ComponentCondReference: mark ctors explicit
2016-04-20 13:34:53 +10:00
Justin Viiret
4e80d22d79
Use using directives to silence hiding warning
2016-04-20 13:34:53 +10:00
Justin Viiret
ec223e3622
Always init NFAContext::cached_br
...
Now that it's on stack, this should be initialised. Silences a warning
from valgrind.
2016-03-01 11:36:22 +11:00