Ignore:
Timestamp:
Dec 3, 2017, 12:40:40 PM (19 months ago)
Author:
nmedfort
Message:

Bug fixes and simplified MultiBlockKernel? logic

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/re/re_simplifier.cpp

    r5723 r5755  
    1414namespace re {
    1515
     16using Set = boost::container::flat_set<RE *>;
     17using List = std::vector<RE *>;
     18
    1619struct PassContainer {
    1720    RE * simplify(RE * re) {
    1821        if (Alt * alt = dyn_cast<Alt>(re)) {
    19             boost::container::flat_set<RE *> list;
    20             list.reserve(alt->size());
     22            Set set;
     23            set.reserve(alt->size());
    2124            for (RE * item : *alt) {
    2225                item = simplify(item);
     
    2427                    continue;
    2528                }
    26                 list.insert(item);
     29                set.insert(item);
    2730            }
    28             re = makeAlt(list.begin(), list.end());
     31            re = makeAlt(set.begin(), set.end());
    2932        } else if (Seq * seq = dyn_cast<Seq>(re)) {
    30             std::vector<RE *> list;
     33            List list;
    3134            list.reserve(seq->size());
    3235            for (RE * item : *seq) {
Note: See TracChangeset for help on using the changeset viewer.