Remove an apparently useless routine: there should
authorDuncan Sands <baldrick@free.fr>
Fri, 11 Jul 2008 17:02:09 +0000 (17:02 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 11 Jul 2008 17:02:09 +0000 (17:02 +0000)
be no need to split the result of a vector RET node,
since they are always already legal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53462 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/LegalizeTypes.h
lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp

index f1ecd2a9730023cd4f14534d264b552960e1f7b1..b60ad2708fa96bec6ac6f218a9db41faf8345554 100644 (file)
@@ -440,7 +440,6 @@ private:
   SDOperand SplitVecOp_BIT_CONVERT(SDNode *N);
   SDOperand SplitVecOp_EXTRACT_SUBVECTOR(SDNode *N);
   SDOperand SplitVecOp_EXTRACT_VECTOR_ELT(SDNode *N);
-  SDOperand SplitVecOp_RET(SDNode *N, unsigned OpNo);
   SDOperand SplitVecOp_STORE(StoreSDNode *N, unsigned OpNo);
   SDOperand SplitVecOp_VECTOR_SHUFFLE(SDNode *N, unsigned OpNo);
 
index 0b00d65943d2c5677fccb2bcedb0164b0f96a45d..4322553137a7fafec38ef85e3e490171042b35cb 100644 (file)
@@ -547,7 +547,6 @@ bool DAGTypeLegalizer::SplitVectorOperand(SDNode *N, unsigned OpNo) {
       assert(0 && "Do not know how to split this operator's operand!");
       abort();
     case ISD::STORE: Res = SplitVecOp_STORE(cast<StoreSDNode>(N), OpNo); break;
-    case ISD::RET:   Res = SplitVecOp_RET(N, OpNo); break;
 
     case ISD::BIT_CONVERT: Res = SplitVecOp_BIT_CONVERT(N); break;
 
@@ -604,19 +603,6 @@ SDOperand DAGTypeLegalizer::SplitVecOp_STORE(StoreSDNode *N, unsigned OpNo) {
   return DAG.getNode(ISD::TokenFactor, MVT::Other, Lo, Hi);
 }
 
-SDOperand DAGTypeLegalizer::SplitVecOp_RET(SDNode *N, unsigned OpNo) {
-  assert(N->getNumOperands() == 3 &&"Can only handle ret of one vector so far");
-  // FIXME: Returns of gcc generic vectors larger than a legal vector
-  // type should be returned by reference!
-  SDOperand Lo, Hi;
-  GetSplitVector(N->getOperand(1), Lo, Hi);
-
-  SDOperand Chain = N->getOperand(0);  // The chain.
-  SDOperand Sign = N->getOperand(2);  // Signness
-
-  return DAG.getNode(ISD::RET, MVT::Other, Chain, Lo, Sign, Hi, Sign);
-}
-
 SDOperand DAGTypeLegalizer::SplitVecOp_BIT_CONVERT(SDNode *N) {
   // For example, i64 = BIT_CONVERT v4i16 on alpha.  Typically the vector will
   // end up being split all the way down to individual components.  Convert the