예제 #1
0
 static std::string getEdgeAttributes(const void *Node, EdgeIter EI) {
   SDValue Op = EI.getNode()->getOperand(EI.getOperand());
   EVT VT = Op.getValueType();
   if (VT == MVT::Flag)
     return "color=red,style=bold";
   else if (VT == MVT::Other)
     return "color=blue,style=dashed";
   return "";
 }
예제 #2
0
 static EdgeIter getEdgeTarget(const void *Node, EdgeIter I) {
   SDNode *TargetNode = *I;
   SDNodeIterator NI = SDNodeIterator::begin(TargetNode);
   std::advance(NI, I.getNode()->getOperand(I.getOperand()).getResNo());
   return NI;
 }