mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-11-20 02:47:11 +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
@@ -51,7 +51,12 @@ aligned_unique_ptr<anchored_matcher_info>
|
||||
buildAnchoredAutomataMatcher(RoseBuildImpl &build, size_t *asize);
|
||||
|
||||
u32 anchoredStateSize(const anchored_matcher_info *atable);
|
||||
bool anchoredIsMulti(const RoseEngine &engine);
|
||||
|
||||
/**
|
||||
* \brief True if there is an anchored matcher and it consists of multiple
|
||||
* DFAs.
|
||||
*/
|
||||
bool anchoredIsMulti(const anchored_matcher_info *atable);
|
||||
|
||||
#define ANCHORED_FAIL 0
|
||||
#define ANCHORED_SUCCESS 1
|
||||
|
||||
Reference in New Issue
Block a user