Ignore:
Timestamp:
Jul 7, 2015, 8:07:25 PM (4 years ago)
Author:
cameron
Message:

Carry Manager system integrated into Pablo compiler

File:
1 edited

Legend:

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

    r4643 r4647  
    2525#include <unordered_map>
    2626#include <pablo/pe_string.h>
     27#include <pablo/carry_manager.h>
    2728#include <llvm/ADT/Twine.h>
    2829#include <llvm/IR/IRBuilder.h>
     
    113114    void compileWhile(const While * whileStmt);
    114115    Value* compileExpression(const PabloAST * expr);
    115     Value* genCarryDataLoad(const unsigned index);
    116     void   genCarryDataStore(Value* carryOut, const unsigned index);
    117116    Value* genAddWithCarry(Value* e1, Value* e2, unsigned localIndex);
    118     Value* genAdvanceWithCarry(Value* e1, int shift_amount, unsigned localIndex);
    119117    Value* genUnitAdvanceWithCarry(Value* e1, unsigned localIndex);
    120     Value* genLongAdvanceWithCarry(Value* e1, int shift_amount, unsigned localIndex);
     118    Value* genShortAdvanceWithCarry(Value* e1, unsigned localIndex, int shift_amount);
     119    Value* genLongAdvanceWithCarry(Value* e1, unsigned localIndex, int shift_amount);
    121120    Value* genBitBlockAny(Value* test);
    122121    Value* genShiftHighbitToLow(unsigned FieldWidth, Value * op);
     
    138137    CarryQueueVector                    mCarryInVector;
    139138    CarryQueueVector                    mCarryOutVector;
    140     std::vector<int>                    mCarryDataSummaryIdx;
    141139
    142140    const std::vector<Var *> &          mBasisBits;
     
    148146#endif
    149147    IRBuilder <> *                      mBuilder;
     148    CarryManager *                      mCarryManager;
    150149    ExecutionEngine*                    mExecutionEngine;
    151150
     
    156155   
    157156    Value*                              mCarryDataPtr;
    158     Value*                              mBlockNo;
    159157    unsigned                            mWhileDepth;
    160158    unsigned                            mIfDepth;
Note: See TracChangeset for help on using the changeset viewer.