Ignore:
Timestamp:
May 7, 2017, 4:34:48 PM (2 years ago)
Author:
nmedfort
Message:

Continued refactoring work. PabloKernel? now abstract base type with a 'generatePabloMethod' hook to generate Pablo code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/IR_Gen/idisa_builder.h

    r5435 r5436  
    2020public:
    2121
    22     IDISA_Builder(llvm::Module * const module, unsigned archBitWidth, unsigned bitBlockWidth, unsigned stride);
     22    IDISA_Builder(llvm::LLVMContext & C, unsigned archBitWidth, unsigned bitBlockWidth, unsigned stride);
    2323
    2424    virtual ~IDISA_Builder();
     
    2626    virtual std::string getBuilderUniqueName() = 0;  // A name uniquely identifying builder/bitBlockWidth/stride.
    2727   
    28     std::string getBitBlockTypeName() const;  // A short string such as v4i64 or i256.
    29 
    3028    llvm::Value * bitCast(llvm::Value * a) {
    3129        return CreateBitCast(a, mBitBlockType);
     
    129127
    130128    void CallPrintRegister(const std::string & regName, llvm::Value * const value);
    131    
    132 protected:
    133 
    134     void initialize(llvm::Module * const module, unsigned archBitWidth, unsigned bitBlockWidth, unsigned stride);
    135129
    136130protected:
    137     unsigned            mBitBlockWidth;
    138     unsigned            mStride;
     131    const unsigned              mBitBlockWidth;
     132    const unsigned              mStride;
     133    llvm::VectorType * const    mBitBlockType;
     134    llvm::Constant * const      mZeroInitializer;
     135    llvm::Constant * const      mOneInitializer;
    139136
    140     llvm::VectorType *  mBitBlockType;
    141     llvm::Constant *    mZeroInitializer;
    142     llvm::Constant *    mOneInitializer;
    143     llvm::Constant *    mPrintRegisterFunction;
     137    llvm::Constant *            mPrintRegisterFunction;
    144138};
    145139
Note: See TracChangeset for help on using the changeset viewer.