Ignore:
Timestamp:
Apr 16, 2017, 9:44:17 AM (2 years ago)
Author:
cameron
Message:

Parabix driver can take ownership and allocate buffers

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/kernels/toolchain.h

    r5402 r5409  
    1919namespace IDISA { class IDISA_Builder; }
    2020namespace kernel { class KernelBuilder; }
    21 namespace parabix { class StreamSetBuffer; }
     21//namespace parabix { class StreamSetBuffer; }
     22#include <kernels/streamset.h>
    2223class ParabixObjectCache;
    2324
     
    6768    IDISA::IDISA_Builder * getIDISA_Builder() {return iBuilder;}
    6869   
     70    parabix::ExternalFileBuffer * addExternalBuffer(std::unique_ptr<parabix::ExternalFileBuffer> b, llvm::Value * externalBuf);
     71   
     72    parabix::StreamSetBuffer * addBuffer(std::unique_ptr<parabix::StreamSetBuffer> b);
     73   
    6974    void addKernelCall(kernel::KernelBuilder & kb, const std::vector<parabix::StreamSetBuffer *> & inputs, const std::vector<parabix::StreamSetBuffer *> & outputs);
    7075   
     
    8792    ParabixObjectCache *                    mCache;
    8893    std::vector<kernel::KernelBuilder *>    mKernelList;
     94    // Owned kernels and buffers that will persist with this ParabixDriver instance.
     95    std::vector<std::unique_ptr<kernel::KernelBuilder>> mOwnedKernels;
     96    std::vector<std::unique_ptr<parabix::StreamSetBuffer>> mOwnedBuffers;
    8997    ModuleMap                               mModuleMap;
    9098};
Note: See TracChangeset for help on using the changeset viewer.