Ignore:
Timestamp:
May 22, 2017, 12:14:19 PM (2 years ago)
Author:
nmedfort
Message:

Restructuring work for the Driver classes. Start of work to eliminate the memory leaks with the ExecutionEngine?. Replaced custom AlignedMalloc? with backend call to std::aligned_malloc. Salvaged some work on DistributionPass? for reevaluation.

File:
1 edited

Legend:

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

    r5456 r5464  
    99#include "interface.h"
    1010#include <boost/container/flat_map.hpp>
    11 #include <IR_Gen/idisa_builder.h>
    12 #include <toolchain/pipeline.h>
    1311#include <llvm/IR/Constants.h>
    1412
    1513namespace llvm { class Function; }
    1614namespace llvm { class IntegerType; }
     15namespace llvm { class IndirectBrInst; }
     16namespace llvm { class PHINode; }
    1717namespace llvm { class LoadInst; }
    1818namespace llvm { class Type; }
     
    6363    // based on the semantics of the kernel. 
    6464    //
    65     // If no other mechanism is available, the default generateKernelSignature() method
    66     // uses the full LLVM IR (before optimization) of the kernel instance.
     65    // If no other mechanism is available, the default makeSignature() method uses the
     66    // full LLVM IR (before optimization) of the kernel instance.
    6767    //
    6868    // A kernel Module ID is short string that is used as a name for a particular kernel
    69     // instance.  Kernel Module IDs are used to look up and retrieve cached kernel instances
    70     // and so should be highly likely to uniquely identify a kernel instance.
     69    // instance.  Kernel Module IDs are used to look up and retrieve cached kernel
     70    // instances and so should be highly likely to uniquely identify a kernel instance.
    7171    //
    7272    // The ideal case is that a kernel Module ID serves as a full kernel signature thus
    73     // guaranteeing uniqueness.  In this case, the moduleIDisUnique() method
    74     // should return true.
     73    // guaranteeing uniqueness.  In this case, hasSignature() should return false.
    7574    //
    7675       
     
    8079
    8180    // Can the module ID itself serve as the unique signature?
    82     virtual bool moduleIDisSignature() const { return false; }
     81    virtual bool hasSignature() const { return true; }
    8382
    8483    // Create a module stub for the kernel, populated only with its Module ID.     
Note: See TracChangeset for help on using the changeset viewer.