mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-11-19 02:30:35 +03:00
Account for multi-dfa case with ANCHORED_DELAY
Specifically, we must set build_context::floatingMinLiteralMatchOffset to 1 when thew anchored table contains multiple DFAs, as they can produce unordered matches. This check was already been done, but too late to affect the generation of ANCHORED_DELAY instructions.
This commit is contained in:
committed by
Matthew Barr
parent
d7c8ffc7fd
commit
69682ed263
@@ -235,13 +235,9 @@ u32 anchoredStateSize(const anchored_matcher_info *atable) {
|
||||
return curr->state_offset + nfa->scratchStateSize;
|
||||
}
|
||||
|
||||
bool anchoredIsMulti(const RoseEngine &engine) {
|
||||
const struct anchored_matcher_info *curr
|
||||
= (const anchored_matcher_info *)getALiteralMatcher(&engine);
|
||||
|
||||
return curr && curr->next_offset;
|
||||
}
|
||||
|
||||
bool anchoredIsMulti(const anchored_matcher_info *atable) {
|
||||
return atable && atable->next_offset;
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user