Ignore:
Timestamp:
Apr 9, 2017, 3:59:17 PM (3 years ago)
Author:
nmedfort
Message:

Updated all projects to use ParabixDriver?. Deprecated original pipeline generation methods. Enabled LLVM optimizations, IR and ASM printing for Kernel modules. Enabled object cache by default. Begun work on moving consumed position information back to producing kernels.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/toolchain.h

    r5400 r5401  
    1616namespace llvm { class Module; }
    1717namespace llvm { class TargetMachine; }
     18namespace llvm { class formatted_raw_ostream; }
    1819namespace llvm { namespace cl { class OptionCategory; } }
    1920namespace IDISA { class IDISA_Builder; }
     
    2728enum DebugFlags {
    2829    ShowIR,
    29 #if LLVM_VERSION_MINOR > 6
     30#ifndef USE_LLVM_3_6
    3031    ShowASM,
    3132#endif
     
    5758bool AVX2_available();
    5859
    59 llvm::ExecutionEngine * JIT_to_ExecutionEngine (llvm::Module * m);
    60 
    61 void ApplyObjectCache(llvm::ExecutionEngine * e);
    62 
    63 void generatePipeline(IDISA::IDISA_Builder * iBuilder, const std::vector<kernel::KernelBuilder *> & kernels);
    64 
    65 
    6660class ParabixDriver {
    67 
    68     using ModuleMap = boost::container::flat_map<kernel::KernelBuilder *, std::unique_ptr<llvm::Module>>;
    69 
     61    using ModuleMap = boost::container::flat_map<kernel::KernelBuilder *, llvm::Module *>;
    7062public:
    7163    ParabixDriver(IDISA::IDISA_Builder * iBuilder);
     
    7365    IDISA::IDISA_Builder * getIDISA_Builder() {return iBuilder;}
    7466   
    75     void JITcompileMain ();
    76 
    7767    void addKernelCall(kernel::KernelBuilder & kb, const std::vector<parabix::StreamSetBuffer *> & inputs, const std::vector<parabix::StreamSetBuffer *> & outputs);
    7868   
     
    10090namespace {
    10191
    102 // NOTE: Currently, LLVM TypeBuilder can deduce FuntionTypes for only up to 5 arguments. The following
     92// NOTE: Currently, LLVM TypeBuilder can deduce FuntionTypes for up to 5 arguments. The following
    10393// templates have no limit but should be deprecated if the TypeBuilder ever supports n-ary functions.
    10494
Note: See TracChangeset for help on using the changeset viewer.