Ignore:
Timestamp:
Nov 18, 2016, 1:46:55 PM (3 years ago)
Author:
nmedfort
Message:

Merged PabloFunction? and PabloKernel? classes. Updated projects where necessary.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/kernels/cc_kernel.cpp

    r5202 r5217  
    44 */
    55
     6#include "cc_kernel.h"
     7#include <re/re_cc.h>
     8#include <cc/cc_compiler.h>
     9#include <pablo/builder.hpp>
    610
    7 #include "cc_kernel.h"
    8 
    9 
     11using namespace cc;
    1012using namespace kernel;
     13using namespace pablo;
     14using namespace re;
    1115
    1216void DirectCharacterClassKernelBuilder::generateDoBlockMethod() {
     
    7175}
    7276
     77ParabixCharacterClassKernelBuilder::ParabixCharacterClassKernelBuilder (
     78IDISA::IDISA_Builder * iBuilder
     79, std::string ccSetName
     80, const std::vector<CC *> & charClasses
     81, unsigned basisBitsCount)
     82: PabloKernel(iBuilder, ccSetName +"_kernel") {
     83
     84    CC_Compiler ccc(this, basisBitsCount);
     85    auto & builder = ccc.getBuilder();
     86    for (CC * cc : charClasses) {
     87        Var * const r = addOutput(cc->canonicalName(re::ByteClass), getStreamSetTy());
     88        builder.createAssign(r, ccc.compileCC("cc", cc, builder));
     89    }
     90
     91}
Note: See TracChangeset for help on using the changeset viewer.