2150 Commits

Author SHA1 Message Date
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
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
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