Ignore:
Timestamp:
Oct 24, 2017, 1:10:49 PM (20 months ago)
Author:
cameron
Message:

Drop linebreak normalization; add1 attribute for grep kernel; pablo indexed advance initial check-in

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/pablo/pablo_compiler.cpp

    r5647 r5705  
    503503            // manager so that it properly selects the correct carry bit.
    504504            value = mCarryManager->advanceCarryInCarryOut(iBuilder, adv, compileExpression(iBuilder, adv->getExpression()));
     505        } else if (isa<IndexedAdvance>(stmt)) {
     506            const IndexedAdvance * const adv = cast<IndexedAdvance>(stmt);
     507            Value * strm = compileExpression(iBuilder, adv->getExpression());
     508            Value * index_strm = compileExpression(iBuilder, adv->getIndex());
     509            // If our expr is an Extract op on a mutable Var then we need to pass the index value to the carry
     510            // manager so that it properly selects the correct carry bit.
     511            value = mCarryManager->indexedAdvanceCarryInCarryOut(iBuilder, adv, strm, index_strm);
    505512        } else if (const MatchStar * mstar = dyn_cast<MatchStar>(stmt)) {
    506513            Value * const marker = compileExpression(iBuilder, mstar->getMarker());
Note: See TracChangeset for help on using the changeset viewer.