Ignore:
Timestamp:
Aug 26, 2016, 9:33:51 AM (3 years ago)
Author:
cameron
Message:

Defer binding of buffers to stream sets until kernel generation

File:
1 edited

Legend:

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

    r5111 r5133  
    88
    99
     10#include "streamset.h"
    1011#include "interface.h"
    1112#include <vector>
     
    1819const std::string blkMaskSuffix = "_blkMask";
    1920
    20 
     21using namespace parabix;
    2122namespace kernel {
    2223   
     
    3637    // the full implementation of all required methods.     
    3738    //
    38     std::unique_ptr<llvm::Module> createKernelModule();
     39    std::unique_ptr<llvm::Module> createKernelModule(std::vector<StreamSetBuffer *> input_buffers, std::vector<StreamSetBuffer *> output_buffers);
    3940   
    4041    // Generate the Kernel to the current module (iBuilder->getModule()).
    41     void generateKernel();
     42    void generateKernel(std::vector<StreamSetBuffer *> input_buffers, std::vector<StreamSetBuffer *> output_buffers);
     43   
     44    llvm::Value * createInstance(std::vector<Value *> args) override;
    4245   
    4346protected:
     
    9699
    97100    llvm::Value * getStreamSetBlockPtr(Value * self, std::string ssName, Value * blockNo);
     101
    98102       
    99103protected:
     
    102106    NameMap                    mInternalStateNameMap;
    103107    NameMap                    mStreamSetNameMap;
     108    std::vector<StreamSetBuffer *> mStreamSetInputBuffers;
     109    std::vector<StreamSetBuffer *> mStreamSetOutputBuffers;
     110
    104111};
    105112}
Note: See TracChangeset for help on using the changeset viewer.