SHENG64: 64-state 1-byte shuffle based DFA.

This commit is contained in:
Chang, Harry
2020-07-10 13:26:17 +00:00
committed by Konstantinos Margaritis
parent 6a42b37fca
commit ed4b0f713a
16 changed files with 1362 additions and 45 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015-2019, Intel Corporation
* Copyright (c) 2015-2020, Intel Corporation
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
@@ -636,6 +636,9 @@ bytecode_ptr<NFA> getDfa(raw_dfa &rdfa, bool is_transient,
if (!dfa) {
dfa = sheng32Compile(rdfa, cc, rm, false);
}
if (!dfa) {
dfa = sheng64Compile(rdfa, cc, rm, false);
}
#endif
if (!dfa) {
// Sheng wasn't successful, so unleash McClellan!