Ignore:
Timestamp:
Jan 27, 2017, 2:22:06 PM (3 years ago)
Author:
nmedfort
Message:

Optimized Symbol Generation (and fixed potential bug that could allow duplicate names being constructed); made PabloKernel? extend PabloAST (temporarily removed PabloAST::getName() to avoid diamond problem); added an internal scalar to PabloKernel? struct for each Count to avoid InOut? output scalar variable problem; allowed CodeMotionPass? to move code within the same scope but across a branch statement. Began work on separating Kernels into either Block-Oriented or Segment-Oriented kernels.

File:
1 edited

Legend:

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

    r5267 r5283  
    2727
    2828    using IntSet = boost::container::flat_set<unsigned>;
    29     using MarkerMap = std::unordered_map<const PabloAST *, llvm::Value *>;
     29
     30    using TranslationMap = std::unordered_map<const PabloAST *, llvm::Value *>;
    3031
    3132public:
     
    5354private:
    5455
    55     IDISA::IDISA_Builder *  iBuilder;
    56     CarryManager *          mCarryManager;
    57     PabloKernel *           mKernel;
    58     llvm::Value *           mSelf;
    59     llvm::Function *        mFunction;
    60     MarkerMap               mMarkerMap;
    61     IntSet                  mInputStreamOffset;
     56    IDISA::IDISA_Builder * const    iBuilder;
     57    PabloKernel * const             mKernel;
     58    CarryManager * const            mCarryManager;
     59    llvm::Value *                   mSelf;
     60    llvm::Function *                mFunction;
     61    TranslationMap                  mMarker;
     62    TranslationMap                  mAccumulator;
     63    IntSet                          mInputStreamOffset;
    6264
    6365};
Note: See TracChangeset for help on using the changeset viewer.