add scaffolding for splitting of vectors.
[oota-llvm.git] / lib / CodeGen / SelectionDAG / LegalizeTypes.h
index 1e8bdcac00bb821588a083a52490b549da1997cf..2030eda41eecc3b490460da2dcdc165ef59b7a28 100644 (file)
@@ -260,6 +260,19 @@ private:
   bool ScalarizeOperand(SDNode *N, unsigned OpNo);
   SDOperand ScalarizeOp_EXTRACT_VECTOR_ELT(SDNode *N, unsigned OpNo);
 
+  //===--------------------------------------------------------------------===//
+  // Vector Splitting Support: LegalizeTypesSplit.cpp
+  //===--------------------------------------------------------------------===//
+  
+  void GetSplitOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi);
+  void SetSplitOp(SDOperand Op, SDOperand Lo, SDOperand Hi);
+  
+  // Result Vector Splitting: <128 x ty> -> 2 x <64 x ty>.
+  void SplitResult(SDNode *N, unsigned OpNo);
+  
+  // Operand Vector Scalarization: <128 x ty> -> 2 x <64 x ty>.
+  bool SplitOperand(SDNode *N, unsigned OpNo);
+  
 };
 
 } // end namespace llvm.