Ignore:
Timestamp:
Jan 25, 2017, 11:01:55 AM (3 years ago)
Author:
cameron
Message:

Elimination of StreamSetStructs? wrapping StreamSetBuffers?

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/kernels/p2s_kernel.cpp

    r5267 r5276  
    232232    Function * finalBlockFunction = m->getFunction(mKernelName + finalBlock_suffix);
    233233    iBuilder->SetInsertPoint(BasicBlock::Create(iBuilder->getContext(), "fb_entry", finalBlockFunction, 0));
    234     // Final Block arguments: self, remaining, then the standard DoBlock args.
    235234    Function::arg_iterator args = finalBlockFunction->arg_begin();
    236235    Value * self = &*(args++);
    237     /* Skip "remaining" arg */ args++;
    238236    std::vector<Value *> doBlockArgs = {self};
    239     while (args != finalBlockFunction->arg_end()){
    240         doBlockArgs.push_back(&*args++);
    241     }
    242     Value * i16UnitsGenerated = getProducedItemCount(self, "i16Stream"); // units generated to buffer
    243237    iBuilder->CreateCall(doBlockFunction, doBlockArgs);
    244     i16UnitsGenerated = getProducedItemCount(self, "i16Stream"); // units generated to buffer
    245     for (unsigned i = 0; i < mStreamSetOutputs.size(); i++) {
    246         Value * ssStructPtr = getStreamSetStructPtr(self, mStreamSetOutputs[i].name);
    247         Value * producerPosPtr = mStreamSetOutputBuffers[i]->getProducerPosPtr(ssStructPtr);
    248         iBuilder->CreateAtomicStoreRelease(i16UnitsGenerated, producerPosPtr);
    249     }
    250238    iBuilder->CreateRetVoid();
    251239    iBuilder->restoreIP(savePoint);
Note: See TracChangeset for help on using the changeset viewer.