]> git.ipfire.org Git - thirdparty/vectorscan.git/commitdiff
accel_dfa_build_strat: use flat_map for small maps
authorJustin Viiret <justin.viiret@intel.com>
Mon, 10 Apr 2017 04:23:00 +0000 (14:23 +1000)
committerMatthew Barr <matthew.barr@intel.com>
Tue, 30 May 2017 03:49:49 +0000 (13:49 +1000)
src/nfa/accel_dfa_build_strat.cpp

index 2320c756b156f70eee30a465c689e0d10ae70255..019edc503cb42c84d9201819f373d00a7910b91f 100644 (file)
@@ -124,7 +124,7 @@ void extend(const raw_dfa &rdfa, const path &p,
         out.push_back(move(pp));
     }
 
-    map<u32, CharReach> dest;
+    flat_map<u32, CharReach> dest;
     for (unsigned i = 0; i < N_CHARS; i++) {
         u32 succ = s.next[rdfa.alpha_remap[i]];
         dest[succ].set(i);
@@ -330,7 +330,7 @@ accel_dfa_build_strat::find_escape_strings(dstate_id_t this_idx) const {
     const dstate &raw = rdfa.states[this_idx];
     const vector<CharReach> rev_map = reverse_alpha_remapping(rdfa);
     bool outs2_broken = false;
-    map<dstate_id_t, CharReach> succs;
+    flat_map<dstate_id_t, CharReach> succs;
 
     for (u32 i = 0; i < rev_map.size(); i++) {
         if (raw.next[i] == this_idx) {