Add support for READPORT, WRITEPORT, READIO, WRITEIO

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21824 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2005-05-09 20:22:17 +00:00
parent 21074f43ed
commit 3c6910153c

View File

@ -1195,7 +1195,11 @@ SDOperand SelectionDAG::getNode(unsigned Opcode, MVT::ValueType VT,
SDNode *&N = BinaryOps[std::make_pair(Opcode, std::make_pair(N1, N2))];
if (N) return SDOperand(N, 0);
N = new SDNode(Opcode, N1, N2);
N->setValueTypes(VT);
if (Opcode != ISD::READPORT && Opcode != ISD::READIO)
N->setValueTypes(VT);
else
N->setValueTypes(VT, MVT::Other);
AllNodes.push_back(N);
return SDOperand(N, 0);
@ -1666,6 +1670,11 @@ const char *SDNode::getOperationName() const {
case ISD::MEMCPY: return "memcpy";
case ISD::MEMMOVE: return "memmove";
case ISD::READPORT: return "readport";
case ISD::WRITEPORT: return "writeport";
case ISD::READIO: return "readio";
case ISD::WRITEIO: return "writeio";
case ISD::SETCC:
const SetCCSDNode *SetCC = cast<SetCCSDNode>(this);
switch (SetCC->getCondition()) {