Ignore:
Timestamp:
Nov 19, 2015, 4:47:28 PM (4 years ago)
Author:
nmedfort
Message:

More work towards n-ary And/Or/Xor? functions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/pablo/printer_pablos.cpp

    r4873 r4876  
    5454    } else if (const Call * call = dyn_cast<const Call>(stmt)) {
    5555        out << " = " << call->getCallee() << "()";
    56     } else if (const And * pablo_and = dyn_cast<const And>(stmt)) {
    57         out << pablo_and->getName() << " = (";
    58         for (unsigned i = 0; i != pablo_and->getNumOperands(); ++i) {
     56    } else if (const And * andNode = dyn_cast<const And>(stmt)) {
     57        out << andNode->getName() << " = (";
     58        for (unsigned i = 0; i != andNode->getNumOperands(); ++i) {
    5959            if (i) out << " & ";
    60             print(pablo_and->getOperand(i), out);
     60            print(andNode->getOperand(i), out);
    6161        }
    6262        out << ")";
    63     } else if (const Or * pablo_or = dyn_cast<const Or>(stmt)) {
    64         out << pablo_or->getName() << " = (";
    65         for (unsigned i = 0; i != pablo_or->getNumOperands(); ++i) {
     63    } else if (const Or * orNode = dyn_cast<const Or>(stmt)) {
     64        out << orNode->getName() << " = (";
     65        for (unsigned i = 0; i != orNode->getNumOperands(); ++i) {
    6666            if (i) out << " | ";
    67             print(pablo_or->getOperand(i), out);
     67            print(orNode->getOperand(i), out);
    6868        }
    6969        out << ")";
    70     } else if (const Xor * pablo_xor = dyn_cast<const Xor>(stmt)) {
    71         out << pablo_xor->getName() << " = (";
    72         for (unsigned i = 0; i != pablo_xor->getNumOperands(); ++i) {
     70    } else if (const Xor * xorNode = dyn_cast<const Xor>(stmt)) {
     71        out << xorNode->getName() << " = (";
     72        for (unsigned i = 0; i != xorNode->getNumOperands(); ++i) {
    7373            if (i) out << " ^ ";
    74             print(pablo_xor->getOperand(i), out);
     74            print(xorNode->getOperand(i), out);
    7575        }
    7676        out << ")";
    77     } else if (const Sel * pablo_sel = dyn_cast<const Sel>(stmt)) {
    78         out << pablo_sel->getName() << " = (";
    79         print(pablo_sel->getCondition(), out);
     77    } else if (const Sel * selNode = dyn_cast<const Sel>(stmt)) {
     78        out << selNode->getName() << " = (";
     79        print(selNode->getCondition(), out);
    8080        out << " ? ";
    81         print(pablo_sel->getTrueExpr(), out);
     81        print(selNode->getTrueExpr(), out);
    8282        out << " : ";
    83         print(pablo_sel->getFalseExpr(), out);
     83        print(selNode->getFalseExpr(), out);
    8484        out << ")";
    85     } else if (const Not * pablo_not = dyn_cast<const Not>(stmt)) {
    86         out << pablo_not->getName() << " = (~";
    87         print(pablo_not->getExpr(), out);
     85    } else if (const Not * notNode = dyn_cast<const Not>(stmt)) {
     86        out << notNode->getName() << " = (~";
     87        print(notNode->getExpr(), out);
    8888        out << ")";
    8989    } else if (const Advance * adv = dyn_cast<const Advance>(stmt)) {
Note: See TracChangeset for help on using the changeset viewer.