Ignore:
Timestamp:
Nov 6, 2016, 8:37:11 PM (3 years ago)
Author:
nmedfort
Message:

Initial work on adding types to PabloAST and mutable Var objects.

File:
1 edited

Legend:

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

    r5141 r5202  
    4848    using MarkerMap = std::unordered_map<const PabloAST *, Value *>;
    4949public:
    50     PabloCompiler(IDISA::IDISA_Builder * b, PabloKernel * k, PabloFunction * function);
     50    PabloCompiler(PabloKernel * k, PabloFunction * function);
    5151    Type * initializeKernelData();
    5252    void compile(Function * doBlockFunction);
    5353
    5454private:
     55
     56    void verifyParameter(const Var * var, const Value * param);
    5557
    5658    void Examine(const PabloFunction * const function);
     
    6163    void compileIf(const If * ifStmt);
    6264    void compileWhile(const While * whileStmt);
    63     Value * compileExpression(const PabloAST * expr);
     65    Value * compileExpression(const PabloAST * expr, const bool ensureLoaded = true) const;
    6466    void GenerateKernel(PabloFunction * const function);
    6567
    6668    MarkerMap                           mMarkerMap;
    6769    IntSet                              mInputStreamOffset;
    68     Module *                            mMod;
    6970    IDISA::IDISA_Builder *              iBuilder;
    7071    Type* const                         mBitBlockType;
     
    7273    std::unique_ptr<CarryManager>       mCarryManager;
    7374
    74     PabloFunction *  const             mPabloFunction;
    75     const PabloBlock *                  mPabloBlock;
     75    PabloFunction *  const              mPabloFunction;
    7676
    7777    PabloKernel *                       mKernelBuilder;
Note: See TracChangeset for help on using the changeset viewer.