1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

Add convenience overloads of SelectionDAG::getNode that take a SDVTList

and individual SDOperand operands.

llvm-svn: 42753
This commit is contained in:
Dan Gohman 2007-10-08 15:49:58 +00:00
parent 2e8245a376
commit 9ee1c4eee7
2 changed files with 47 additions and 0 deletions

View File

@ -287,6 +287,17 @@ public:
const SDOperand *Ops, unsigned NumOps);
SDOperand getNode(unsigned Opcode, const MVT::ValueType *VTs, unsigned NumVTs,
const SDOperand *Ops, unsigned NumOps);
SDOperand getNode(unsigned Opcode, SDVTList VTs);
SDOperand getNode(unsigned Opcode, SDVTList VTs, SDOperand N);
SDOperand getNode(unsigned Opcode, SDVTList VTs,
SDOperand N1, SDOperand N2);
SDOperand getNode(unsigned Opcode, SDVTList VTs,
SDOperand N1, SDOperand N2, SDOperand N3);
SDOperand getNode(unsigned Opcode, SDVTList VTs,
SDOperand N1, SDOperand N2, SDOperand N3, SDOperand N4);
SDOperand getNode(unsigned Opcode, SDVTList VTs,
SDOperand N1, SDOperand N2, SDOperand N3, SDOperand N4,
SDOperand N5);
SDOperand getNode(unsigned Opcode, SDVTList VTs,
const SDOperand *Ops, unsigned NumOps);

View File

@ -2595,6 +2595,42 @@ SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
return SDOperand(N, 0);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList) {
return getNode(Opcode, VTList, 0, 0);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
SDOperand N1) {
SDOperand Ops[] = { N1 };
return getNode(Opcode, VTList, Ops, 1);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
SDOperand N1, SDOperand N2) {
SDOperand Ops[] = { N1, N2 };
return getNode(Opcode, VTList, Ops, 2);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
SDOperand N1, SDOperand N2, SDOperand N3) {
SDOperand Ops[] = { N1, N2, N3 };
return getNode(Opcode, VTList, Ops, 3);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
SDOperand N1, SDOperand N2, SDOperand N3,
SDOperand N4) {
SDOperand Ops[] = { N1, N2, N3, N4 };
return getNode(Opcode, VTList, Ops, 4);
}
SDOperand SelectionDAG::getNode(unsigned Opcode, SDVTList VTList,
SDOperand N1, SDOperand N2, SDOperand N3,
SDOperand N4, SDOperand N5) {
SDOperand Ops[] = { N1, N2, N3, N4, N5 };
return getNode(Opcode, VTList, Ops, 5);
}
SDVTList SelectionDAG::getVTList(MVT::ValueType VT) {
if (!MVT::isExtendedVT(VT))
return makeVTList(SDNode::getValueTypeList(VT), 1);